Een mooi gesnoeide boom maken
Een boom voortijdig stoppen met groeien kan ervoor zorgen dat hij bepaalde aspecten van de data negeert of belangrijke patronen mist die later zouden zijn ontdekt.
Met post-pruning kun je bewust een grote en complexe boom laten groeien en die later snoeien tot een kleinere en efficiëntere versie.
In deze oefening ga je een visualisatie maken van de prestatie van de boom versus de complexiteit, en die informatie gebruiken om de boom tot een passend niveau te snoeien.
Het pakket rpart is al geladen, samen met loans_test en loans_train.
Deze oefening maakt deel uit van de cursus
Supervised Learning in R: Classificatie
Oefeninstructies
- Gebruik alle aanvrager-variabelen en geen pre-pruning om een overdreven complexe boom te maken. Zorg dat je
cp = 0instelt inrpart.control()om pre-pruning te voorkomen. - Maak een complexiteitsplot met
plotcp()op het model. - Snoei op basis van de complexiteitsplot de boom tot een complexiteit van 0.0014 met de functie
prune()met de boom en de complexiteitsparameter. - Vergelijk de nauwkeurigheid van de gesnoeide boom met de oorspronkelijke nauwkeurigheid van 58,3%. Gebruik voor de berekening van de nauwkeurigheid de functies
predict()enmean().
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Grow an overly complex tree
loan_model <- ___
# Examine the complexity plot
plotcp(___)
# Prune the tree
loan_model_pruned <- ___(___, cp = ___)
# Compute the accuracy of the pruned tree
loans_test$pred <- ___
mean(___)