决策树的预剪枝和后剪枝

为了防止决策树模型的过拟合,有预剪枝和后剪枝两种剪枝方法。

预剪枝:

在决策树生成的过程中,预先估计对结点进行划分能否提升决策树泛化性能。如果能提升,则对此结点进行划分,否则不划分。
优点
1、使用预剪枝,决策树中很多分支未展开,可以很好的防止过拟合。
2、因为是在构造决策树的过程中进行的,所以时间开销比较小。
缺点
1、预剪枝是基于贪心的策略。虽然一个结点进行划分不能带来泛化性能的提升,但很可能其后续结点能够带来泛化性能的提升。所以这种贪心策略放弃了一些泛化性能提升的可能性。
2、由于贪心策略,预剪枝决策树欠拟合的风险会比较大。

后剪枝:

后剪枝是在决策树构建完成之后,自底向上地对每一个非叶结点进行考察,如果将此结点地子树替换为叶结点能够带来决策树模型泛化性能地提升,那么就将此非叶结点地子树替换为叶结点,否则不替换。
优点:
1、与预剪枝相比,保留了更多的分支,欠拟合风险比较小
2、泛化性能一般情况下也比预剪枝得到的决策树泛化性能好
缺点:
1、剪枝发生在决策树构建完成之后,而且要自底向上的检查每个非叶结点,时间开销会比较大。

参考博客

你可能感兴趣的:(机器学习,决策树,剪枝,机器学习)