Analyser les meilleurs résultats
Au bout du compte, ce qui nous importe surtout, c'est le « carré » le plus performant dans une grid search. Heureusement, les objets gridSearchCv de Scikit Learn proposent plusieurs paramètres qui donnent l'information essentielle uniquement sur le meilleur carré (ou la ligne correspondante dans cv_results_).
Trois propriétés à explorer :
best_score_– Le score (ici ROC_AUC) du carré le plus performant.best_index_– L'indice de la ligne danscv_results_qui contient l'information sur le carré le plus performant.best_params_– Un dictionnaire des paramètres ayant donné le meilleur score, par exemple'max_depth': 10.
L'objet de grid search grid_rf_class est disponible.
Un dataframe (cv_results_df) a été créé à partir de cv_results_ pour vous à la ligne 6. Cela vous aidera à indexer les résultats.
Cette activité fait partie du cours
Ajustement des hyperparamètres en Python
Instructions de l’exercice
- Extrayez et affichez le score ROC_AUC du carré le plus performant dans
grid_rf_class. - Créez une variable à partir de la ligne la plus performante en indexant dans
cv_results_df. - Créez une variable
best_n_estimatorsen extrayant le paramètren_estimatorsdu carré le plus performant dansgrid_rf_class, puis affichez-la.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Print out the ROC_AUC score from the best-performing square
best_score = grid_rf_class._____
print(best_score)
# Create a variable from the row related to the best-performing square
cv_results_df = pd.DataFrame(grid_rf_class.cv_results_)
best_row = cv_results_df.loc[[grid_rf_class.____]]
print(best_row)
# Get the n_estimators parameter from the best-performing square and print
best_n_estimators = grid_rf_class.____["_____"]
print(best_n_estimators)