【十七】机器学习之路——决策树剪枝(3)

本文介绍了决策树的剪枝方法,包括预剪枝和后剪枝,旨在解决过拟合问题。预剪枝在生成过程中停止划分,减少不必要的分支,降低过拟合风险,但可能造成欠拟合。后剪枝则在树构建后自底向上检查非叶节点,替换为叶节点以提升泛化性能,虽训练时间较长,但泛化性能通常优于预剪枝。
摘要由CSDN通过智能技术生成

[本文内容参考周志华《机器学习》]

  前两篇博客分别介绍了决策树的概念【十五】机器学习之路——决策树(1)和决策树的三种算法【十六】机器学习之路——决策树算法(2),今天讲一下决策树的剪枝。

  我们种树的时候给树剪枝是为了树长的更加美观,而给决策树剪枝是为了解决决策树中”过拟合”的问题。决策树学习中,为了尽可能正确的分类样本数据,节点划分过程将不断重复,有时候会造成分支过多,这时就可能因为训练样本”学的太好了”,导致过拟合的情况。因此这个时候可以通过主动去掉一些分支来降低过拟合的风险。举一个简单的例子:


  上图中红色的点代表”慢速”,蓝色的点代表”快速”,具体细节不用纠结,我们需要利用决策树方式将图中的点进行分类,左图和右图对比发现,左图中出现了”过拟合”的情况,有一些长条和多出来的部分虽然更好的拟合了蓝色和红色的点,但是明显不是我们想要的结果,反而右图更符合我们的预期。因此咱们就需要通过剪枝,将左图中多出来的部分消灭掉。

  决策树的剪枝分为两部分:

  • 预剪枝(prepruning)

  • 后剪枝(post-pruning)

预剪枝

  预剪枝是指在决策树生成过程中,对每个节点划分前进行估计,若当前节点的划分不能带来决策树泛化(generalize)性能提升,则停止划分并将当前节点标记为叶节点。

  提升泛化性能,其实就是提升准确率的问题。我们将数据集分为训练集、验证集(关于训练集、验证集、测试集的划分方法请参考本人之前的博客机器学习之路——训练集、测试集及如何划分)。在每个节点划分前,如果将这个节点作为叶节点停止划分,通过验证集代入求分类准确率

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值