De beste resultaten analyseren
Uiteindelijk zijn we vooral geïnteresseerd in het best presterende 'vierkant' in een grid search. Gelukkig hebben Scikit Learn's gridSearchCv-objecten een aantal parameters die kerninformatie geven over alleen het beste vierkant (of de rij in cv_results_).
Drie eigenschappen die je gaat verkennen zijn:
best_score_– De score (hier ROC_AUC) van het best presterende vierkant.best_index_– De index van de rij incv_results_met informatie over het best presterende vierkant.best_params_– Een dictionary met de parameters die de beste score gaven, bijvoorbeeld'max_depth': 10
Het grid search-object grid_rf_class is beschikbaar.
Er is voor jou op regel 6 een dataframe (cv_results_df) aangemaakt uit cv_results_. Dit helpt je om in de resultaten te indexeren.
Deze oefening maakt deel uit van de cursus
Hyperparameter Tuning in Python
Oefeninstructies
- Haal de ROC_AUC-score op van het beste vierkant in
grid_rf_classen print deze. - Maak een variabele van de best presterende rij door te indexen in
cv_results_df. - Maak een variabele
best_n_estimatorsdoor de parametern_estimatorsuit het best presterende vierkant ingrid_rf_classte halen en print deze.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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)