Eksploracja wyników przeszukiwania siatki
Teraz przeanalizujesz właściwość cv_results_ obiektu GridSearchCV zdefiniowanego w filmie. To słownik, który możemy wczytać do ramki danych pandas – zawiera wiele przydatnych informacji o przeprowadzonym przeszukiwaniu siatki.
Przypomnienie typów kolumn dostępnych w tej właściwości:
- kolumny
time_ - kolumny
param_(po jednej dla każdego hiperparametru) oraz jedna kolumnaparams(ze wszystkimi ustawieniami hiperparametrów) - kolumna
train_scoredla każdego podziału CV, w tym kolumnymean_train_scoreistd_train_score - kolumna
test_scoredla każdego podziału CV, w tym kolumnymean_test_scoreistd_test_score - kolumna
rank_test_scorez liczbą od 1 do n (liczba iteracji), rangująca wiersze na podstawie wartościmean_test_score
To ćwiczenie jest częścią kursu
Strojenie hiperparametrów w Pythonie
Instrukcje do ćwiczenia
- Wczytaj właściwość
cv_results_obiektu GridSearchCVgrid_rf_classdo ramki danych i wyświetl całą jej zawartość. - Wyodrębnij i wyświetl pojedynczą kolumnę zawierającą słownik wszystkich hiperparametrów użytych w każdej iteracji przeszukiwania siatki.
- Wyodrębnij i wyświetl wiersz z najlepszym średnim wynikiem testowym, korzystając z indeksowania po kolumnie
rank_test_score.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)