ML - Decision Tree

决策树是一类常见的机器学习方法,决策过程的最终结论对应了我们希望的判定结果。而决策树学习的关键是选择最优化分属性,一般而言,随着划分过程不断进行,我们希望决策树的分支节点所包含的样本尽可能属于同一类别,即节点的“纯度”越来越高。为了度量纯度,我们引入了几个概念,先从信息熵讲起

信息熵

熵是指问题内部混乱程度,熵值越高,混乱程度越高,纯度越小

信息熵:是度量样本集合纯度最常用的一种指标,假定当前样本集合D中第k类样本所占的比例为pk(k=1,2,…,|Y|),则D的信息熵定义为
在这里插入图片描述

补充:1.假如对于每个样本有M个取值,当所有 P ( k ) = 1 M P(k) = \frac{1}{M} P(k)=M1时,熵取最大值。回忆下初中数学讲的,当两个数的和固定时,它们相同时乘积最大。换句话说,均匀分布的熵最大。
2.即便数据分布不同,计算熵的方法是一样的

信息增益

假定离散属性a有V个可能的取值{a1,a2,…,av},若使a来对样本集D进行划分,则会产生V个分支结点,其中第v个分支结点包含了D中所有在属性a上取值为av的样本,记为Dw。考虑不同分支节点所包含的样本数不同,给分支节点赋予权重,即样本越多的分支节点的影响越大,于是计算出用属性a对样本集D进行划分所获得的信息增益在这里插入图片描述
我们希望每次划分都能够使熵值降低。一般而言,信息增益越大,则意味着使用属性a来划分所获得的“纯度提升”越大,因此,我们可以用信息增益来进行决策树的划分属性选择,这就是著名的ID3决策树算法。

信息增益率

实际上,信息增益对可取值数目较多的属性有所偏好,为减少这种偏好可能带来的不利影响,著名的C4.5决策树算法不直接使用信息增益,而是使用“增益率”来选择最优划分属性。
在这里插入图片描述
称为属性a的固有值。属性a的可能取值数目越多(即V越大),则IV(a)的值通常会越大。注意,增益率对可取数目较少的属性有所偏好,因此,C4.5并不是直接选择增益率最大的候选划分属性,而是先从候选划分属性中找出信息增益高于平均水平的属性,在从中选择增益率最高的。

基尼系数

构建决策树时,不仅可以使用熵值作为衡量标准,还可以使用Gini系数,原理基本一致,公式
在这里插入图片描述
简单说,Gini§反映了从数据集中随机抽取两个样本,其类别标记不一致的概率.
基尼值越大,混乱纯度越大,纯度越小,在大小与纯度的关系上和熵值一样的,都是越小越好。
这样我们在划分时,就选择让划分后基尼指数最小的属性作为最优划分属性。
在这里插入图片描述
而这就是CART决策树算法啊

决策树求解回归问题

使用熵值或基尼系数来作为划分的依据,可以将决策树用于分类任务。那可否决策树做回归任务呢?如果将衡量标准转换为其他方法是可以的。

方差可以衡量不同样本之间的差异,我们在选择节点时,让每次划分后的结果方差最小就可以。
在分类任务中,取的是叶子节点中的众数。在回归中,我们取平均值作为最后预测结果

剪枝

如果不限制树的规模,一个样本一个叶子节点能将所有样本完全分开。但这样的决策树是完全过拟合的,没有意义。
我们需要通过剪枝,来应对“过拟合”

预剪枝

预剪枝在决策树生成的过程中,对每个结点在划分前进行估计,如果当前节点的划分不能带来决策树泛化性能的提升,则停止划分并将当前节点标记为叶节点
如果存在不同类别的样本同时存在于结点中,按照多数投票的原则判断该结点所属类别。
预剪枝停止生长决策树的几种方法:

  1. 树长到一定高度停止。
  2. 当当前结点的样本数量小于某个阈值的时候,停止生长
  3. 计算每次分裂对测试集的准确度的提升,当小于某个阈值的时候,不再继续扩展
后剪枝

后剪枝是先训练好决策树,然后自底向上的考察非叶节点,如果这个非叶结点对应的子树替换为叶节点后能带来泛化性能的提升,就将该子树替换为叶节点。
判断泛化能力提升可以在验证集验证。
后剪枝方法繁多,诸如错误率降低剪枝,悲观剪枝,代价复杂度剪枝,最小误差剪枝等等。

后记

当我们遇到任何工作的时候,如果有一个简单的模型和一个复杂的方法,能够达到同样的“解释力”,“预测力”的时候,我们应当选择更简单的那个。

因为简单的事物巧合的几率更小,更有可能反应事物内在的规律。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值