Usando os melhores resultados
Embora seja interessante analisar os resultados da nossa grid search, o objetivo final é prático: queremos fazer previsões no nosso conjunto de teste usando nosso objeto estimator.
Podemos acessar esse objeto por meio da propriedade best_estimator_ do nosso objeto de grid search.
Vamos dar uma olhada dentro da propriedade best_estimator_, fazer previsões e gerar métricas de avaliação. Primeiro vamos usar o predict padrão (que gera previsões de classe), mas depois precisaremos usar predict_proba em vez de predict para calcular o roc-auc, pois o roc-auc precisa de probabilidades para seu cálculo. Usamos um slice [:,1] para obter as probabilidades da classe positiva.
Você tem disponíveis os conjuntos X_test e y_test para usar e o objeto grid_rf_class dos exercícios anteriores.
Este exercício faz parte do curso
Ajuste de Hiperparâmetros em Python
Instruções do exercício
- Verifique o tipo da propriedade
best_estimator_. - Use a propriedade
best_estimator_para fazer previsões no nosso conjunto de teste. - Gere uma matriz de confusão e a pontuação ROC_AUC a partir das nossas previsões.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# See what type of object the best_estimator_ property is
print(____(____.____))
# Create an array of predictions directly using the best_estimator_ property
predictions = grid_rf_class.____._____(X_test)
# Take a look to confirm it worked, this should be an array of 1's and 0's
print(predictions[0:5])
# Now create a confusion matrix
print("Confusion Matrix \n", confusion_matrix(y_test, ______))
# Get the ROC-AUC score
predictions_proba = grid_rf_class.best_estimator_.predict_proba(X_test)[:,1]
print("ROC-AUC Score \n", roc_auc_score(y_test, _____))