Inclure une matrice de pertes
Troisièmement, vous pouvez inclure une matrice de pertes afin de modifier l’importance relative d’une erreur qui classe un défaut comme un non-défaut, par rapport à un non-défaut classé comme défaut. Vous souhaitez souligner qu’une mauvaise classification d’un défaut en non-défaut doit être davantage pénalisée. L’inclusion d’une matrice de pertes se fait à nouveau via l’argument parms de la matrice de pertes.
parms = list(loss = matrix(c(0, cost_def_as_nondef, cost_nondef_as_def, 0), ncol=2))
Ce faisant, vous construisez une matrice 2x2 avec des zéros sur la diagonale et des pénalités de perte modifiées hors diagonale. Par défaut, la matrice de pertes comporte des uns hors diagonale.
Cet exercice fait partie du cours
<cours>Modélisation du risque de crédit en R</cours>Instructions de l’exercice
- Modifiez le code fourni pour inclure une telle matrice de pertes, avec une pénalisation 10 fois plus élevée lorsqu’un défaut réel est mal classé comme non-défaut. Pour cela, remplacez
cost_def_as_nondefpar 10 etcost_nondef_as_defpar 1. Comme dans les exercices précédents, ajoutezrpart.controlpour abaisser le paramètre de complexité à 0.001. - Tracez l’arbre de décision avec la fonction plot et le nom de l’objet arbre. Ajoutez un second argument
uniform = TRUEpour obtenir des branches de même taille, et ajoutez des étiquettes à l’arbre avectext()en utilisant le nom de l’objet arbre.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Change the code below such that a decision tree is constructed using a loss matrix penalizing 10 times more heavily for misclassified defaults.
tree_loss_matrix <- rpart(loan_status ~ ., method = "class",
data = training_set)
# Plot the decision tree
# Add labels to the decision tree