【决策树】在分类问题中,基于一定的特征选择,将数据集划分成不同的分支,并不断递归下去直到划分为多个满足要求的小数据集,对于一个样本,其分类的过程是一系列判断和选择的过程。

过程:特征选择、决策树生成、决策树修剪

目标:根据训练集进行构建一个分类模型,能够对新来的数据正确分类

本质:一系列分类规则的整合

【构建过程】

统计学习 分类决策树

1.首先所有训练数据集都位于根节点

2.选择一个最优特征划分数据集到不同子集

3.判断各个子集是否已经正确归为一类(根据分类的需求和标准),如果是,那么该子集归为叶子节点;如果不是,那么继续划分

4.当各个子集都已划分到叶子节点,也就是都分类正确,决策树构建完成

【特征选择】

通常一个数据集划分,根据不同的特征,有不同的划分方案,在决策树构建过程中,特征选择最为关键。

统计学习 分类决策树

 

信息增益:划分数据前后,数据集信息量的变化

划分数据集时,选择使得信息增益最大的特征。

熵:描述系统混乱程度物理量,信息学中信息熵指代信息的期望值

表达公式:

统计学习 分类决策树                 

  •  P(Xi)表示X=i的类别概率
  • -log(p(Xi))表示事物表现为X=i状态分类的信息量大小

从公式可以看到,H实质反映事物的不确定性大小:

  • 当n=1,也就是只有一种可能时,那么事物是确定的,此时H=0也就是信息熵为0
  • 当n非常大,那么事物可能有任意多种可能,也就是不确定性很大,此时信息熵H也非常大

 

经验熵:对于一个数据集,其可以划分成若干类,每一类的出现概率为该类所占的比例,那么可以估算该数据集的经验熵

计算公式:

统计学习 分类决策树

  • Ck对应第k类数据的数量
  • D对应所有数据集的数量

条件熵:在给定X条件下,Y变量的不确定性大小。

计算公式:

统计学习 分类决策树

决策树中一次决策的信息增益即是:在给定一个判定特征之后,数据的不确定性减小的程度

计算公式:

统计学习 分类决策树

引入特征A后,信息增益表现为经验熵与条件熵之差。

  • 数据集大时,经验熵较大,那么引入特征条件之后信息增益也较大
  • 数据集小时,经验熵较小,那么引入特征条件之后信息增益也较小

因此,研究特征信息增益比显得更加科学,其计算公式为:

统计学习 分类决策树                 即信息增益g/经验熵D

因此在特征选择时总是选择当前信息增益比最大的特征,从而减少数据集的不确定性,使得分类更为准确

【决策树的修剪】

通常而言,在数据集上构建的决策树在训练数据集上非常准确,但是在测试数据集上却表现一般,

也就是发生过拟合的情况,这样的决策树无法很好的泛化与应用,通常采取剪掉过于小和精细的子树或叶子节点

原因:过分考虑训练集,使得构建出的决策树过于精细和庞大

解决方案:

引入损失计算函数:

统计学习 分类决策树

  • T表示叶子节点的数目,也就是各个最终子类的数目
  • C(T)表示模型与训练数据的拟合误差,该数据越小,表明拟合程度越高

统计学习 分类决策树 该系数为调整因子,

  • 统计学习 分类决策树 =0时,只考虑拟合误差,那么训练出的模型拟合程度非常高;
  • 统计学习 分类决策树 >0,那么将考虑子类数目的增多带来的过拟合影响;
  • 统计学习 分类决策树 越大,模型训练出的子类越少,也就是模型越简单。

 

决策树在考虑选择特征时,同时考虑损失函数,也就是构建过程预剪枝。

同时也可以在决策树构建完成后进行剪枝,也就是后剪枝

 

【优缺点】

优点 缺点
模型结构清晰,易于理解和可视化 容易出现对训练数据的过拟合现象,使得模型过于复杂
数据集不用做过多预处理和标准化 决策树不太稳定,一个小变化会引起树的结构调整,从而产生不同的树
模型的大小可控,为数据集大小对数关系 如果部分分类占优,可能出现一定偏差的树

 

 

 

 

 

 

相关文章:

  • 2021-08-31
  • 2021-11-21
  • 2021-07-23
  • 2021-12-26
  • 2021-12-17
  • 2022-02-09
  • 2021-06-03
  • 2021-11-02
猜你喜欢
  • 2022-12-23
  • 2021-11-17
  • 2022-01-20
  • 2021-07-09
  • 2021-04-07
  • 2021-05-10
相关资源
相似解决方案