CommencerCommencez gratuitement

Élaguer l’arbre avec des probabilités a priori modifiées

Dans la vidéo, vous avez appris que l’élagage d’un arbre est nécessaire pour éviter le surapprentissage. Les exercices précédents ont produit de grands arbres ; vous allez maintenant mettre cela en pratique et élaguer l’arbre construit précédemment avec des probabilités a priori modifiées. Le package rpart est déjà chargé dans votre espace de travail.

Vous allez d’abord fixer une graine aléatoire pour garantir la reproductibilité des résultats, comme indiqué dans la vidéo, car vous allez examiner les erreurs issues de la validation croisée. Ces résultats comportent une part d’aléa et peuvent légèrement varier si vous relancez la fonction avec une autre graine.

Dans cet exercice, vous apprendrez à identifier quel paramètre de complexité (CP) minimise l’erreur de validation croisée, puis à élaguer votre arbre en fonction de cette valeur.

Cet exercice fait partie du cours

<cours>Modélisation du risque de crédit en R</cours>
Voir le cours

Instructions de l’exercice

  • tree_prior est chargé dans votre espace de travail.
  • Utilisez plotcp() pour visualiser l’erreur issue de la validation croisée (X-val Relative Error) en fonction du paramètre de complexité pour tree_prior.
  • Utilisez printcp() pour afficher un tableau d’informations sur CP, les divisions (splits) et les erreurs. Voyez si vous pouvez identifier quelle division présente l’erreur de validation croisée minimale dans tree_prior.
  • Utilisez which.min() pour identifier quelle ligne de tree_prior$cptable présente l’erreur de validation croisée minimale "xerror". Affectez ce résultat à index.
  • Créez tree_min en sélectionnant, dans la colonne "CP", l’index correspondant de tree_prior$cptable.
  • Utilisez la fonction prune() pour obtenir l’arbre élagué. Nommez l’arbre élagué ptree_prior.
  • Le package rpart.plot est chargé dans votre espace de travail. Représentez l’arbre élagué avec la fonction prp() (paramètres par défaut).

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# tree_prior is loaded in your workspace

# Plot the cross-validated error rate as a function of the complexity parameter


# Use printcp() to identify for which complexity parameter the cross-validated error rate is minimized.


# Create an index for of the row with the minimum xerror
index <- which.min(___$___[ , "xerror"])

# Create tree_min
tree_min <- tree_prior$cptable[index, "CP"]

#  Prune the tree using tree_min
ptree_prior <- prune(___, cp = ___)

# Use prp() to plot the pruned tree
Modifier et exécuter le code