Explorer les résultats de la grid search
Vous allez maintenant explorer la propriété cv_results_ de l’objet GridSearchCV défini dans la vidéo. Il s’agit d’un dictionnaire que l’on peut charger dans un DataFrame pandas et qui contient de nombreuses informations utiles sur la grid search que nous venons d’effectuer.
Rappel des différents types de colonnes dans cette propriété :
- colonnes
time_ - colonnes
param_(une pour chaque hyperparamètre) et la colonne uniqueparams(avec tous les réglages d’hyperparamètres) - une colonne
train_scorepour chaque fold de validation croisée, ainsi que les colonnesmean_train_scoreetstd_train_score - une colonne
test_scorepour chaque fold de validation croisée, ainsi que les colonnesmean_test_scoreetstd_test_score - une colonne
rank_test_scoreavec un nombre de 1 à n (nombre d’itérations) classant les lignes selon leurmean_test_score
Cet exercice fait partie du cours
Optimisation des hyperparamètres en Python
Instructions
- Lisez la propriété
cv_results_de l’objet GridSearchCVgrid_rf_classdans un DataFrame et affichez l’ensemble pour inspection. - Extrayez et affichez la colonne unique contenant un dictionnaire de tous les hyperparamètres utilisés à chaque itération de la grid search.
- Extrayez et affichez la ligne ayant la meilleure moyenne du score de test en indexant via la colonne
rank_test_score.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Read the cv_results property into a dataframe & print it out
cv_results_df = pd.DataFrame(grid_rf_class.____)
print(____)
# Extract and print the column with a dictionary of hyperparameters used
column = cv_results_df.loc[:, [____]]
print(____)
# Extract and print the row that had the best mean test score
best_row = cv_results_df[cv_results_df[____] == ____ ]
print(best_row)