Reducerea arborelui cu probabilități a priori modificate
În videoclip ai învățat că reducerea unui arbore (pruning) este necesară pentru a evita supraadaptarea (overfitting). În exercițiile anterioare ai întâlnit arbori de mari dimensiuni, iar acum vei pune în practică ceea ce ai învățat și vei reduce arborele construit anterior cu probabilitățile a priori modificate. Pachetul rpart este deja încărcat în spațiul tău de lucru.
Vei seta mai întâi un seed pentru a te asigura că rezultatele sunt reproductibile, așa cum s-a menționat în videoclip – deoarece vei examina rezultatele erorii din validarea încrucișată. Rezultatele implică un element aleatoriu și pot varia ușor dacă rulezi funcția din nou cu un seed diferit.
În acest exercițiu vei învăța să identifici care parametru de complexitate (CP) minimizează eroarea din validarea încrucișată, apoi să reduci arborele pe baza acestei valori.
Acest exercițiu face parte din cursul
Modelarea riscului de credit în R
Instrucțiuni pentru exercițiu
tree_prioreste încărcat în spațiul tău de lucru.- Folosește
plotcp()pentru a vizualiza eroarea din validarea încrucișată (X-val Relative Error) în raport cu parametrul de complexitate pentrutree_prior. - Folosește
printcp()pentru a afișa un tabel cu informații despre CP, împărțiri și erori. Încearcă să identifici care împărțire are eroarea minimă din validarea încrucișată întree_prior. - Folosește
which.min()pentru a identifica ce rând dintree_prior$cptableare eroarea minimă din validarea încrucișată"xerror". Atribuie rezultatul variabileiindex. - Creează
tree_minselectând indexul dintree_prior$cptablepentru coloana"CP". - Folosește funcția
prune()pentru a obține arborele redus. Numește arborele redusptree_prior. - Pachetul
rpart.ploteste încărcat în spațiul tău de lucru. Reprezintă grafic arborele redus folosind funcția prp() (setările implicite).
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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