Sous-échantillonnage de l’ensemble d’entraînement
Dans la vidéo, vous avez vu que, pour résoudre le problème de classes déséquilibrées, vous pouvez utiliser le sous- ou le suréchantillonnage. L’ensemble d’entraînement a été sous-échantillonné pour vous, de sorte que 1/3 de l’ensemble d’entraînement correspond à des défauts et 2/3 à des non-défauts. Le jeu de données obtenu est disponible dans votre espace de travail sous le nom undersampled_training_set, et contient moins d’observations (6570 au lieu de 19394). Dans cet exercice, vous allez créer un arbre de décision à partir de ce jeu de données sous-échantillonné.
Vous remarquerez que les arbres dans cet exercice et le suivant sont très grands, au point d’en devenir illisibles. Ne vous inquiétez pas pour l’instant : nous vous montrerons dans la prochaine vidéo comment les rendre plus faciles à interpréter !
Cet exercice fait partie du cours
<cours>Modélisation du risque de crédit en R</cours>Instructions de l’exercice
- Le package rpart a été installé pour vous. Chargez-le dans votre espace de travail.
- Modifiez le code fourni afin de construire un arbre de décision en utilisant l’ensemble d’entraînement sous-échantillonné au lieu de
training_set. Ajoutez également l’argumentcontrol = rpart.control(cp = 0.001).cp, le paramètre de complexité, est la valeur seuil de la diminution du manque d’ajustement global pour toute division. Si le critèrecpn’est pas respecté, les divisions suivantes ne seront pas poursuivies. La valeur par défaut decpest 0,01, mais pour des problèmes complexes, il est conseillé de l’assouplir. - Tracez l’arbre de décision avec la fonction plot et le nom de l’objet arbre. Ajoutez un deuxième argument
uniform = TRUEpour obtenir des branches de même taille. - La commande précédente crée simplement un arbre avec des nœuds et des arêtes, mais sans texte (ou « labels »). Utilisez la fonction
text()avec pour seul argumenttree_undersamplepour ajouter les étiquettes.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Load package rpart in your workspace.
# Change the code provided in the video such that a decision tree is constructed using the undersampled training set. Include rpart.control to relax the complexity parameter to 0.001.
tree_undersample <- rpart(loan_status ~ ., method = "class",
data = training_set)
# Plot the decision tree
# Add labels to the decision tree