Introdução
No aprendizado de máquina, é importante avaliar a qualidade das previsões feitas por um modelo. Isso nos ajuda a entender o desempenho do modelo e se ele pode ser confiável para fazer previsões precisas. A biblioteca scikit-learn fornece várias métricas e métodos de pontuação para quantificar a qualidade das previsões.
Neste laboratório, exploraremos três APIs diferentes fornecidas pelo scikit-learn para avaliação de modelos: o método de pontuação do estimador, o parâmetro de pontuação e as funções de métrica.
Dicas da Máquina Virtual
Após o término da inicialização da máquina virtual, clique no canto superior esquerdo para mudar para a aba Notebook para acessar o Jupyter Notebook para praticar.
Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação de operações não pode ser automatizada devido a limitações no Jupyter Notebook.
Se você encontrar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão e resolveremos prontamente o problema para você.
Método de Pontuação do Estimator
O método de pontuação do Estimator é um critério de avaliação padrão fornecido pelo scikit-learn para cada estimador. Ele calcula uma pontuação que representa a qualidade das previsões do modelo. Você pode encontrar mais informações sobre isso na documentação de cada estimador.
Aqui está um exemplo de como usar o método score para um estimador:
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits
X, y = load_digits(return_X_y=True)
clf = LogisticRegression()
clf.fit(X, y)
score = clf.score(X, y)
print("Pontuação:", score)
Parâmetro de Pontuação
O scikit-learn fornece um parâmetro scoring em várias ferramentas de avaliação de modelos, como validação cruzada e busca em grade. O parâmetro scoring controla a métrica aplicada aos estimadores durante a avaliação.
Aqui está um exemplo de como usar o parâmetro scoring com validação cruzada:
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits
X, y = load_digits(return_X_y=True)
clf = LogisticRegression()
scores = cross_val_score(clf, X, y, cv=5, scoring='accuracy')
print("Scores:", scores)
Funções de Métrica
O módulo metrics do scikit-learn implementa várias funções para avaliar o erro de previsão para propósitos específicos. Essas funções podem ser usadas para calcular a qualidade das previsões feitas por um modelo.
Aqui está um exemplo de como usar a função accuracy_score do módulo metrics:
from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
clf = LogisticRegression()
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Precisão:", accuracy)
Resumo
Neste laboratório, aprendemos sobre três APIs diferentes fornecidas pelo scikit-learn para avaliação de modelos: o método de pontuação do estimador, o parâmetro de pontuação e as funções de métrica. Essas APIs permitem avaliar a qualidade das previsões feitas por um modelo e compreender o quão bem o modelo está se desempenhando.