Zacznij terazZacznij za darmo

Kroswalidacja k-krotna

Zaczniesz od praktycznego ćwiczenia z najczęściej stosowaną metodą kroswalidacji k-krotnej.

Dane, z którymi będziesz pracować, pochodzą z konkursu Kaggle "Two Sigma Connect: Rental Listing Inquiries". Zadanie polega na wieloklasowej klasyfikacji ogłoszeń wynajmu do 3 klas: niskie zainteresowanie, średnie zainteresowanie i wysokie zainteresowanie. Dla lepszej wydajności będziesz pracować z próbką zawierającą 1 000 obserwacji.

Musisz zaimplementować strategię walidacji k-krotnej i sprawdzić rozmiary poszczególnych foldów. DataFrame train jest już dostępny w twoim środowisku.

To ćwiczenie jest częścią kursu

Zwycięstwo w konkursie Kaggle w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz obiekt KFold z 3 foldami.
  • Użyj pętli, aby przejść przez kolejne podziały za pomocą obiektu kf.
  • Dla każdego podziału wybierz foldy treningowy i testowy, korzystając z train_index i test_index.

Interaktywne ćwiczenie praktyczne

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

# Import KFold
from sklearn.model_selection import KFold

# Create a KFold object
kf = ____(n_splits=____, shuffle=True, random_state=123)

# Loop through each split
fold = 0
for train_index, test_index in ____.____(train):
    # Obtain training and testing folds
    cv_train, cv_test = train.iloc[____], train.iloc[____]
    print('Fold: {}'.format(fold))
    print('CV train shape: {}'.format(cv_train.shape))
    print('Medium interest listings in CV train: {}\n'.format(sum(cv_train.interest_level == 'medium')))
    fold += 1
Edytuj i uruchom kod