创建一个恰到好处的已修剪树
阻止决策树一路生长到底,可能会让它忽略数据中的某些方面,或者错过后续才能发现的重要模式。
通过使用后剪枝(post-pruning),您可以先有意生成一棵较大且复杂的树,然后再把它修剪得更小、更高效。
在本练习中,您将绘制模型性能与复杂度的可视化,并据此把树修剪到合适的层级。
rpart 包已预先加载,同时还加载了 loans_test 和 loans_train。
本练习是课程的一部分
R 中的监督学习:分类
练习说明
- 使用所有申请人变量,并且不进行预剪枝,来创建一棵过于复杂的树。请在
rpart.control()中设置cp = 0以避免预剪枝。 - 对该模型使用
plotcp()创建复杂度图。 - 根据复杂度图,使用
prune()函数结合该树和复杂度参数,将树修剪到复杂度 0.0014。 - 将修剪后树的准确率与原始 58.3% 的准确率进行比较。计算准确率时使用
predict()和mean()函数。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# 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(___)