Beskärning av trädet med förlustmatrisen
I den här övningen ska du beskära trädet som byggdes med en förlustmatris, för att ge högre straff åt felklassificerade betalningsinställelser jämfört med felklassificerade icke-betalningsinställelser.
Den här övningen är en del av kursen
Kreditriskmodellering i R
Övningsinstruktioner
- Kör koden för att ange ett slumptalsfröe och konstruera
tree_loss_matrixigen. - Använd funktionen plotcp() för att undersöka strukturen hos det korsvaliderade felet.
- I cp-diagrammet kan du se att beskärning med det minsta korsvaliderade felet leder till ett träd som är lika stort som det obeskurna, eftersom det korsvaliderade felet når sitt minimum vid
cp = 0.001. Eftersom du vill göra trädet något mindre, prova att beskära det medcp = 0.0012788. För den komplexitetsparametern närmar sig det korsvaliderade felet det minsta observerade felet. Kalla det beskurna trädetptree_loss_matrix. - Paketet
rpart.plotär inläst i din arbetsmiljö. Rita det beskurna trädet med funktionenprp()(inklusive argumentetextra = 1).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# set a seed and run the code to construct the tree with the loss matrix again
set.seed(345)
tree_loss_matrix <- rpart(loan_status ~ ., method = "class", data = training_set,
parms = list(loss=matrix(c(0, 10, 1, 0), ncol = 2)),
control = rpart.control(cp = 0.001))
# Plot the cross-validated error rate as a function of the complexity parameter
# Prune the tree using cp = 0.0012788
# Use prp() and argument extra = 1 to plot the pruned tree