3 剪枝
如果分枝过多,代表决策树可能把原样本学习得太好以至于出现过拟合,剪枝是决策树算法对付过拟合的主要手段。
预剪枝
在决策树生成过程中,对每个节点划分前先估计,如果划分这个节点不能导致泛化性能提升,就不划分了,就把这个标记为叶节点。
怎么评价泛化性能是否得到提升?我们只有一个训练集,可以考虑类似留出法,从训练集中留一部分作为验证集,在这上面测试模型以评价泛化性能是否提高。
预剪枝实际上是一种贪心策略,有可能导致欠拟合。
后剪枝
先从训练集生成一棵完整的决策树,然后自底向上对每个节点考察,看把【以这个节点为根的子树】替换成叶子节点会不会导致泛化性能提升,如果能,就做这种替换。
后剪枝的时间开销要大得多。
本文阅读量