当前位置:   article > 正文

机器学习之决策树--C4.5_机器学习c4.5决策树

机器学习c4.5决策树

一、什么是C4.5决策树

决策树概念:机器学习之决策树–原理分析

C4.5决策树是由Ross Quinlan在ID3决策树–机器学习之决策树–ID3–基础上提出的一种改进版的决策树。

C4.5主要改进了ID3中的一些问题:

  • ID3不能做连续型数值属性的分类,C4.5改进了这个问题,可以处理连续型数值的分类
  • ID3以信息增益为选择特征的依据,所以倾向于选择类别多的特征进行划分。C4.5选择信息增益率为特征选择依据,避免了这个问题。

二、什么是信息增益率?

ID3决策树中,已经详细的介绍了信息增益的概念和计算方法。

那信息增益率从字面上理解,不就是 信息增益/父节点信息熵 吗? NO!!!

这里的信息增益率和传统理解的比率有点区别。下面来详细介绍。

C4.5在选择特征的第一步和ID3一样,计算经过每个特征划分之后的信息增益。得到计算信息增益率的分子,以特征A为例,它的信息增益为:

信息增益

在计算分母时,并不是用的父节点的信息熵,而是用经过某个特征划分之后的“分裂信息”。以特征A为例,其将一个样本数为N的数据集划分为V类,且N=|A1|+|A2|+…+|Av|。则经过特征A划分之后的分裂信息可以由下面公式进行计算。

split

那么经过特征A划分后,它的信息增益率就可以计算出来了。

gainratio

同样的道理进行所有特征的信息增益率计算之后,选择信息增益率最大的那个特征作为划分的依据。这样就很好的解决了噪声的影响,也解决了ID3倾向于选择类别多的特征进行划分的弊端。

切记:信息增益率的分母不是父节点的信息熵,而是经过特征划分之后的分裂信息!

三、C4.5如何做连续型数值类别的划分?

其实很简单,因为样本数量有限,所以C4.5在处理时,仍然将连续型的数值当作离散型的类别来做。

C4.5在做连续型数据时,该步骤总是二叉的。因为其对一个用于分割的数值θ,用≤θ和>θ两个分支进行判断,经过≤θ和>θ划分为两个子集,然后对两个子集计算信息增益率,遵从信息增益率最大的原则,选择信息增益率最大的划分方式。

那么这里就有一个问题了:如何确定那个用于划分的数值θ,来进行≤θ和>θ的分割呢?

C4.5的做法是:首先将该属性的所有值按从小到大排序,然后取每两个相邻的数的中间值为θ,依次进行分裂,计算信息增益率,最后做出比较。

比如一个属性值集合为:5,7,10,3,6,1

  • 第一步,从小到大排序:1,3,5,6,7,10
  • 第二步,取1和3的中间值作为θ,即θ=2,将集合分成2个部分:{1},{3,5,6,7,10},每一部分都有对应的目标类别分布情况,用于计算各类值
  • 第三步,计算信息增益率:此处未给出具体的分类情况,就不做计算,到之后的举例部分再计算
  • 第四步:重复第二步和第三步,直到所有的中间值均做过一次
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/363927
推荐阅读
相关标签
  

闽ICP备14008679号