De grid-searchresultaten verkennen
Je gaat nu de eigenschap cv_results_ verkennen van het GridSearchCV-object dat in de video is gedefinieerd. Dit is een dictionary die we kunnen inlezen in een pandas DataFrame en die veel nuttige informatie bevat over de grid search die we zojuist hebben uitgevoerd.
Een geheugensteun voor de verschillende kolomtypes in deze eigenschap:
time_-kolommenparam_-kolommen (één per hyperparameter) en de enkeleparams-kolom (met alle hyperparameteraanstellingen)- een
train_score-kolom voor elke cv-fold, inclusief de kolommenmean_train_scoreenstd_train_score - een
test_score-kolom voor elke cv-fold, inclusief de kolommenmean_test_scoreenstd_test_score - een
rank_test_score-kolom met een getal van 1 tot n (aantal iteraties) dat de rijen rangschikt op basis van hunmean_test_score
Deze oefening maakt deel uit van de cursus
Hyperparameter Tuning in Python
Oefeninstructies
- Lees de eigenschap
cv_results_van hetgrid_rf_classGridSearchCV-object in een DataFrame en print alles om te inspecteren. - Haal de enkele kolom op met het woordenboek van alle hyperparameters die in elke iteratie van de grid search zijn gebruikt, en print deze.
- Haal de rij op met de beste gemiddelde testscore door te indexeren met de kolom
rank_test_score, en print deze.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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)