Validation croisée
La validation croisée est une technique qui cherche à estimer les performances d’un modèle sur un jeu de réserve. Elle permet de vérifier que les performances au test ne sont pas dues à un découpage particulier des données. Dans cet exercice, vous allez utiliser des implémentations de sklearn pour exécuter une validation croisée en K plis à l’aide du module KFold() afin d’évaluer la précision et le rappel pour un arbre de décision.
X_train, y_train, X_test, y_test sont disponibles dans votre espace de travail. pandas sous pd, numpy sous np et sklearn sont également disponibles. KFold() et cross_val_score() de sklearn.model_selection sont aussi à votre disposition.
Cet exercice fait partie du cours
Prédire le CTR avec le Machine Learning en Python
Instructions
- Créez un classifieur par arbre de décision.
- Configurez une validation croisée en K plis avec quatre divisions et affectez-la à
k-fold. - Utilisez
k_foldpour lancer la validation croisée aveccross_val_score()afin d’évaluer la précision et le rappel de votre modèle (et non pasrecall_score()ouprecision_score()!).
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Create model
clf = ____
# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)
# Evaluate precision and recall for each fold
precision = ____(
clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision))
print("Recall scores: %s" %(recall))