Zacznij terazZacznij za darmo

Statystyki kroswalidacji

Do strojenia klasyfikatora losowego lasu użyto przeszukiwania siatki z kroswalidacją. Teraz chcesz sprawdzić wyniki kroswalidacji, aby upewnić się, że model nie jest przeuczony. Interesuje cię w szczególności różnica między średnim wynikiem testowym a średnim wynikiem treningowym dla każdego podziału. Zbiór danych jest dostępny jako X_train i y_train, potok jako pipe, a kilka modułów jest już wczytanych – w tym pandas jako pd oraz GridSearchCV().

To ćwiczenie jest częścią kursu

Projektowanie przepływów pracy uczenia maszynowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz obiekt przeszukiwania siatki z trzema podziałami kroswalidacji i upewnij się, że zwraca statystyki zarówno treningowe, jak i testowe.
  • Dopasuj obiekt przeszukiwania siatki do danych treningowych.
  • Zapisz wyniki kroswalidacji, dostępne w atrybucie cv_results_ dopasowanego obiektu CV, do ramki danych.
  • Wyświetl różnicę między kolumną zawierającą średni wynik testowy a kolumną zawierającą średni wynik treningowy.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Fit your pipeline using GridSearchCV with three folds
grid_search = GridSearchCV(
  pipe, params, ____=3, return_train_score=____)

# Fit the grid search
gs = grid_search.____(____, ____)

# Store the results of CV into a pandas dataframe
results = pd.____(gs.____)

# Print the difference between mean test and training scores
print(
  results[____]-results['mean_train_score'])
Edytuj i uruchom kod