Validation croisée K-fold
Vous allez commencer par vous exercer avec la méthode de validation croisée K-fold, la plus couramment utilisée.
Les données que vous utiliserez proviennent de la compétition Kaggle « Two sigma connect: rental listing inquiries ». Le problème de la compétition est une classification multi-classes des annonces de location en 3 catégories : faible intérêt, intérêt moyen et fort intérêt. Pour accélérer l'exécution, vous travaillerez avec un sous-échantillon de 1 000 observations.
Vous devez mettre en place une stratégie de validation K-fold et examiner la taille de chaque pli obtenu. Le DataFrame train est déjà disponible dans votre espace de travail.
Cette activité fait partie du cours
Remporter une compétition Kaggle en Python
Instructions de l’exercice
- Créez un objet
KFoldavec 3 plis. - Itérez sur chaque division à l'aide de l'objet
kf. - Pour chaque division, sélectionnez les plis d'entraînement et de test en utilisant
train_indexettest_index.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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