决策树基本原理:基于信息增益、增益率与基尼系数的划分选择,预剪枝与后剪枝,多变量决策树以及决策树优缺点概述
如何避免决策树过拟合?
预剪枝和后剪枝
预剪枝:
1.生成结点,根据信息增益选出最优划分属性,比如是色泽(这时候先不给根节点赋予色泽,要先判断)
2.如果不划分,根据 训练集所有的样本的类别 中占比最多的类别对这个结点赋予结果,
比如训练集4个好瓜,4个坏瓜,那么不划分的情况下,这个结点被赋予好瓜,
再用验证集验证,比如验证集3个好瓜,4个坏瓜,那么分类正确的概率为42.9%
当然,如果训练集的类别都一样,比如都是好瓜,那么便没必要划分了
3.如果划分,这时将色泽赋予这个结点,并根据色泽的取值延伸出子节点
4.子节点的取值也是根据训练集中不同色泽的样本的类别中占比最多的类别对这个结点赋予结果,比如浅白的训练集中好瓜多,青绿的训练集中坏瓜多,那么:
5.根据这次划分,估计分类正确的概率,
如果划分得到的概率小于等于不划分的概率,那么不划分,比如划分后,分类正确的概率小于42.9%,那么结果取不划分:
如果划分的概率大于不划分的概率,那么划分。
6.如果有已划分的结点,那么对于已划分的结点递归进行1.-5.
预剪枝的优点:
降低过拟合风险
显著减少决策树的训练时间开销和测试时间开销
缺点:
可能导致欠拟合(预剪枝会剪掉这些结点:当前划分不能提高性能,甚至导致性能下降,但是后续结点显著提高性能)
后剪枝:
1.先生成决策树
2.遍历所有非叶结点(纹理结点和色泽结点)
3.如果去掉这个非叶结点能提高性能,那么剪枝,否则遍历下一个结点
假如不去掉纹理,分类正确率为50%
如果去掉纹理后的分类正确率高于50%,那么剪枝:
后剪枝优点:
欠拟合风险小,泛化能力优于预剪枝
缺点:
训练时间大于未剪枝和预剪枝