Eine Verlustmatrix einbeziehen
Drittens kannst du eine Verlustmatrix einbeziehen, um die relative Bedeutung davon zu ändern, einen Default als Non-Default bzw. einen Non-Default als Default falsch zu klassifizieren. Du möchtest betonen, dass ein tatsächlicher Default, der fälschlicherweise als Non-Default eingestuft wird, stärker bestraft werden soll. Das Einbinden einer Verlustmatrix erfolgt wieder über das Argument parms in der Verlustmatrix.
parms = list(loss = matrix(c(0, cost_def_as_nondef, cost_nondef_as_def, 0), ncol=2))
Damit konstruierst du eine 2x2-Matrix mit Nullen auf der Diagonalen und angepassten Verluststrafen außerhalb der Diagonalen. Die Standard-Verlustmatrix hat Einsen außerhalb der Diagonalen.
Diese Übung ist Teil des Kurses
<Kurs>Kreditrisikomodellierung in R</Kurs>Übungsanweisungen
- Ändere den bereitgestellten Code so, dass eine solche Verlustmatrix einbezogen wird, mit einer 10-fach höheren Bestrafung, wenn ein tatsächlicher Default als Non-Default fehlklassifiziert wird. Das erreichst du, indem du
cost_def_as_nondefdurch 10 undcost_nondef_as_defdurch 1 ersetzt. Wie in den vorherigen Übungen fügst durpart.controlhinzu, um den Komplexitätsparameter auf 0.001 zu lockern. - Zeichne den Entscheidungsbaum mit der Funktion plot und dem Namen des Baum-Objekts. Füge ein zweites Argument
uniform = TRUEhinzu, um gleich große Äste zu erhalten, und füge Beschriftungen mittext()und dem Baum-Objektnamen hinzu.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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