决策树:CART决策树剪枝算法(超详细)

CART算法

CART假设决策树是二叉树,内部结点特征的取值为“是”和“否”。左分支“是”,右分支“否”。
与ID3和C4.5只有决策树的生成不同的是,CART算法由以下两步组成:

(1)决策树生成:基于训练数据集生成一棵尽量大的决策树。

(2)决策树剪枝:用验证数据集对已生成的树进行剪枝并选择最优子树,这时用损失函数最小作为剪枝的标准。

对回归树用平方误差最小化准则;对分类树用基尼指数最小化准则。生成二叉决策树。

1. CART生成算法

CART回归树和分类数的生成算法

2. CART剪枝算法

CART剪枝算法流程

在这里插入图片描述

CART剪枝算法解析( 超详细 )

① 在剪枝的过程中,要计算子树的损失函数,而计算子树的损失函数与之前相比稍加调整:
在这里插入图片描述
其中,T为任意的子树,C(T)为对训练数据的预测误差(如基尼指数、平方误差),|T| 为子树 T 的叶结点的个数,Cα(T)是子树整体的损失函数。

其中α为非负数,它权衡着模型对训练数据的拟合程度模型本身复杂度两者之间的关系。

α|T| 项相当于对子树的叶结点的个数进行惩罚
Ⅰ. α 越大,对子树叶结点的数量惩罚力度越大,迫使子树有更少的叶结点,即越迫使子树进行剪枝;
Ⅱ. α 越小,则越放松了对子树叶结点数量的压迫,越允许子树有更多的叶结点,即越倾向于不剪枝。

② 对于固定的 α,一定存在损失函数Cα(T)最小的子树,我们称之为最优子树,记为 Tα

那么为什么存在且唯一呢?

由 ① 中的结论可知,α 代表了对子树叶结点数量的惩罚程度,因此:
α : 0 — — > + ∞ \alpha:0 ——>+∞ α:0>+对应于:
树 : 大 — — > 小 树:大——>小 :>可以想象极端情况:
Ⅰ. α = 0 时,对于子树叶结点数量无惩罚力度,因此,整体树(完整的树)是最优的。
Ⅱ. α = ∞时,对于子树叶结点数量具有极大的惩罚力度,迫使树一直剪枝,此时根节点组成的单结点树最优。

③ 因此,考虑到对于固定的 α 有且只有一个最优子树,再结合 α 越大对数的惩罚力度越大。可以知道:
当 α 从 0 慢慢增大到 ∞ 时,最优子树会慢慢从最开始的整体树,一点一点剪枝,直到变成单结点树。 具体数学表述如下:
在这里插入图片描述
在这里插入图片描述
其中 T0 对应整体树,Tn 对应单结点树。

上述 Ti 对应于 αi ,并且是 α ∈ [αi, αi+1)的最优子树。

为什么呢?

在这里插入图片描述
对上面叙述进一步的解释如图:
在这里插入图片描述
可以看到随着 α 的增大,决策树会不断地进行剪枝,共剪枝 n 次,形成 n+1个子树序列。


在这里插入图片描述

参考资料:

李航《统计学习方法》

  • 18
    点赞
  • 91
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值