Élaguer l'arbre
Le surapprentissage est un problème classique en analytique, surtout avec l'algorithme d'arbre de décision. Une fois l'arbre entièrement développé, il peut donner des prédictions très exactes sur l'échantillon d'entraînement, mais être moins performant sur l'ensemble de test. Pour cette raison, la croissance de l'arbre de décision est généralement contrôlée par :
- « Élaguer » l'arbre et fixer une limite à sa profondeur maximale.
- Limiter le nombre minimal d'observations dans une feuille de l'arbre.
Dans cet exercice, vous allez :
- élaguer l'arbre et limiter sa croissance à 5 niveaux de profondeur
- l'ajuster aux données des employés
- vérifier les résultats de prédiction sur les ensembles d'entraînement et de test.
Les variables features_train, target_train, features_test et target_test sont déjà disponibles dans votre espace de travail.
Cette activité fait partie du cours
Analytique RH : prédire le roulement du personnel avec Python
Instructions de l’exercice
- Initialisez le
DecisionTreeClassifieren limitant la profondeur de l'arbre à 5. - Ajustez le modèle d'arbre de décision à l'aide des
featureset de la variable cibletargetdans l'ensemble d'entraînement. - Vérifiez la justesse des prédictions sur les ensembles d'entraînement et de test.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Initialize the DecisionTreeClassifier while limiting the depth of the tree to 5
model_depth_5 = DecisionTreeClassifier(____=5, random_state=42)
# Fit the model
____.fit(features_train,target_train)
# Print the accuracy of the prediction for the training set
print(____.____(features_train,target_train)*100)
# Print the accuracy of the prediction for the test set
print(model_depth_5.score(____,____)*100)