Analiza najlepszych wyników
Na końcu dnia najbardziej zależy nam na tym, które „pole" w przeszukiwaniu siatki (grid search) wypadło najlepiej. Na szczęście obiekty gridSearchCv w Scikit Learn udostępniają szereg parametrów z kluczowymi informacjami dotyczącymi właśnie najlepszego pola (lub wiersza w cv_results_).
Trzy właściwości, które przeanalizujesz:
best_score_– wynik (tutaj ROC_AUC) uzyskany przez najlepiej oceniane pole.best_index_– indeks wiersza wcv_results_zawierającego informacje o najlepszym polu.best_params_– słownik parametrów, które dały najlepszy wynik, na przykład'max_depth': 10
Obiekt przeszukiwania siatki grid_rf_class jest dostępny.
W wierszu 6 został już dla ciebie utworzony ramka danych (cv_results_df) na podstawie cv_results_. Pomoże ci ona w indeksowaniu wyników.
To ćwiczenie jest częścią kursu
Strojenie hiperparametrów w Pythonie
Instrukcje do ćwiczenia
- Wyodrębnij i wyświetl wynik ROC_AUC z najlepiej ocenianego pola w
grid_rf_class. - Utwórz zmienną z najlepszego wiersza, używając indeksowania w
cv_results_df. - Utwórz zmienną
best_n_estimators, wyodrębniając parametrn_estimatorsz najlepszego pola wgrid_rf_class, a następnie wyświetl jej wartość.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)