统计学习方法 第5章 决策树(2)

剪枝

决策树生成算法递归地产生决策树,直到不能继续为止。这样的树往往对训练数据分类准确,但对测试数据分类却没有那么准确,即出现过拟合。其原因在于决策树过于复杂。
解决这个问题的方法是简化决策树的复杂度,即剪枝,从已生成的决策树上裁掉一些子树或子节点。

决策树剪枝通过极小化决策树整体损失函数实现。
设树T的子节点个数为|T|,t为叶节点,该叶节点有Nt个样本点,其中k类的样本点有Ntk个,则损失函数定义为:
统计学习方法 第5章 决策树(2)
其中经验熵:
统计学习方法 第5章 决策树(2)

即模型对训练数据的预测误差和模型复杂度按一定比例的和。其中α为参数,控制两者之间的影响。

剪枝即在α确定时选择损失函数最小的模型。

对生成的整个树T和参数α:
1. 计算每个节点的经验熵
2. 递归地从叶节点向上回退,计算一组叶节点会退到其父节点之前和之后的损失函数,若减小则进行剪枝,即将父节点变成新的叶节点
3. 持续直到无法继续

CART算法

分类与回归树CART由特征选择,树生成和剪枝组成,可用于分类和回归。

回归树的生成

一个回归树对应着输入空间的一个划分以及在划分的单元上的输出值。
假设已将输入空间划分为M个单元R1~RM,且每个单元Rm上有一个固定的输出值cm
即回归树模型:统计学习方法 第5章 决策树(2)

对输入空间进行划分时,选择第j个变量和取值s作为切分变量和切分点,分成两个区域:
统计学习方法 第5章 决策树(2)

统计学习方法 第5章 决策树(2)

然后寻找最优切分变量j和切分点s,即求解:
统计学习方法 第5章 决策树(2)

当划分确定时,可以用平方误差最小原则求解最优输出,即单元Rm上的cm最优值为Rm上所有输入实例对应输出的均值。

接着对每个区域重复划分过程,直到满足停止条件,生成最小二乘回归树。

分类树的生成

分类树用基尼指数选择最优特征,决定切分点:
统计学习方法 第5章 决策树(2)

在特征A的条件下,基尼指数为:
统计学习方法 第5章 决策树(2)

二类分类中基尼指数、熵、分类误差率的关系:
统计学习方法 第5章 决策树(2)

CART生成算法:
从根节点开始,递归地进行:

  1. 对节点的训练数据集D,计算现有特征对该数据集的基尼指数
  2. 在所有可能特征A和它们所有可能的切分点a中选择基尼指数最小的特征及切分点,生成两个子节点
  3. 递归调用1,2,直到满足停止条件

CART剪枝

计算子树的损失函数:
统计学习方法 第5章 决策树(2)

其中C(T)为训练数据的预测误差,|T|为子树的叶节点个数。

从整体树T0开始,对任意内部节点t,当α=0或充分小时不需剪枝,α增大达到某一值时对t进行剪枝。
取α从0到正无穷可得到子树序列t0到tn,分别对应各个α取值分段的最优子树。

对剪枝得到的子树序列,通过交叉验证法即可选取最优子树Tα

相关文章:

  • 2021-04-23
  • 2021-05-31
  • 2021-06-21
  • 2022-12-23
  • 2021-11-14
  • 2021-08-29
  • 2021-09-10
  • 2021-04-25
猜你喜欢
  • 2022-01-06
  • 2021-11-12
  • 2022-02-09
  • 2021-10-08
  • 2021-07-27
  • 2021-07-14
  • 2021-07-15
相关资源
相似解决方案