笔记_决策树

本文详细介绍了决策树的学习过程,包括ID3和C4.5算法,以及如何利用信息增益和信息增益比选择特征。讨论了决策树过拟合的问题,并提出了解决方案——决策树剪枝,通过损失函数最小化来优化模型。同时,介绍了CART算法在生成分类和回归树上的应用。剪枝过程中,通过计算不同子树的损失函数,形成子树序列,并通过交叉验证选择最优子树。最后,强调了决策树生成与剪枝分别对应局部和全局选择的重要性。
摘要由CSDN通过智能技术生成

决策树学习算法

特征选择

信息增益

定义为:集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差,即
g(D,A) = H(D) - H(D|A)

信息增益比

定义为 :信息增益g(D,A)与训练数据集D的经验熵 H(D)之比
g R ( D , A ) g_R(D,A) gR(D,A) = g(D,A) / H(D)

决策树的生成

ID3

在决策树的各个节点上应用信息增益准则选择特征

C4.5

在决策树的各个节点上应用信息增益比准则选择特征

问题

决策树生成算法递归的产生决策树,对训练数据的分类很明确,但是对未知的数据的分类却没有那么准确,也就是会产生过拟合现象

解决方案

决策树的剪枝

极小化决策树整体的损失函数
C α ( T ) C_α(T) Cα(T) = C(T) + α|T|
C(T) : 表示模型对数据的拟合程度
|T| : 模型的复杂度
α :平衡拟合程度和复杂度

算法步骤

1)计算每个节点的经验熵
2)递归的从树的叶节点网上缩
设一组叶节点回缩到其父节点之前与之后的整体树分别为 T B T_B TB T A T_A TA,其对应的损失函数8值分别为 C α ( T B ) C_α(T_B) Cα(TB) C α ( T A ) C_α(T_A) Cα(TA),若
C α ( T A ) C_α(T_A) Cα(TA) < C α ( T B ) C_α(T_B) Cα(TB)
则进行剪枝,即将父节点变为新的叶节点
3)返回2),直至不能继续为止,得到损失函数最小的子树 T α T_α Tα

CART(分类与回归树)

决策树的生成

基于训练集生成决策树,决策树尽可能大

回归树的生成

采用平方差最小化准则,进行特征选择

分类书的生成

采用基尼指数最小化准则,进行特征选择

决策树的剪枝

基于验证集对已生成的树进行剪枝并选择最优子树,这是使用损失函数最小(比如:平方误差或者基尼指数)作为剪枝的标准

剪枝,形成一个子树序列

计算子树的损失函数 C α ( T ) C_α(T) Cα(T) = C(T) + α|T|
具体:
从整体树 T 0 T_0 T0开始剪枝,对 T 0 T_0 T0的任意内部节点t,以t为单节点树的损失函数是
C α ( T ) C_α(T) Cα(T) = C(t) + α

以t为根节点的子树 T t T_t Tt的损失函数是
C α ( T t ) C_α(T_t) Cα(Tt) = C(T_t) + α|T_t|

当α =0 及α充分小时,
C α ( T t ) C_α(T_t) Cα(Tt) < C α ( t ) C_α(t) Cα(t)

当α 增大时,在某一α有
C α ( T t ) C_α(T_t) Cα(Tt) = C α ( t ) C_α(t) Cα(t)

当α再增大时,只要α = (C(t) - C ( T t ) C(T_t) C(Tt))/ (|T| - 1), T t T_t Tt与t有相同的损失函数值,而t的节点少,所以t比 T t T_t Tt更可取,对 T t T_t Tt剪枝,为此对 T 0 T_0 T0中每一内部节点t, 计算
g(t) = (C(t) - C ( T t ) C(T_t) C(Tt))/ (|T| - 1)
表示剪枝后整体损失函数减少的成都,在 T 0 T_0 T0中减去g(t)最小的 T t T_t Tt,将得到的子树作为 T 1 T_1 T1 T 1 T_1 T1为区间$[α _1,α _2)的最优子树。
如此剪枝下去,直到得到根节点,在这一过程中,不断增加α 值,产生新的区间

在剪枝得到的子树序列 T 0 , T 1 , . . . , T n T_0,T_1,...,T_n T0,T1,...,Tn 中通过交叉验证选取最优子树 T α T_α Tα

补充

决策树的生成对应模型的局部选择(局部最优),决策树的剪枝对应于模型的全局选择(全局最优)

文献
李航_统计学习_决策树

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值