树模型-C4.5

C4.5: ID3的改进版本

首先,C4.5和ID3一样都是多叉树,重点是连续特征处理+特征选择的方式不同。
ID3算法存在的不足, 在C4.5里面有了改进

有那些改进

  • 不能处理连续特征的问题

C4.5的思路是将连续特征离散化. 比如m个样本, 特征A有m个连续的值, 取两个样本值的中位数,这样一共可以得到m-1个划分点, 对每个划分点计算信息增益.

  • 信息增益偏向于值较多的特征的问题

因为信息增益准测对取值较多的特征有偏好, 所以这个问题的解决方案是信息增益比, 它是信息增益和特征熵的比值,记为\(IR(X,Y)\)

\[IR(D,a)=\frac{I(D,a)}{IV(A)} \]

其中,\(IV(A)=\sum_{v=1}^{V}\frac{|D^v|}{|D|} \log \frac{|D^v|}{|D|}\), 其称为属性A的"固有值", 属性取值的个数越多, IV就越大

  • 不能处理缺失值的问题

对于某一个有缺失特征值的特征A。C4.5的思路是将数据分成两部分,对每个样本设置一个权重(初始可以都为1),然后划分数据,一部分是有特征值A的数据D1,另一部分是没有特征A的数据D2.
然后对于没有缺失特征A的数据集D1来和对应的A特征的各个特征值一起计算加权重后的信息增益比,最后乘上一个系数,这个系数是无特征A缺失的样本加权后所占加权总样本的比例。对于第二个子问题,可以将缺失特征的样本同时划分入所有的子节点,不过将该样本的权重按各个子节点样本的数量比例来分配。比如缺失特征A的样本a之前权重为1,特征A有3个特征值A1,A2,A3。 3个特征值对应的无缺失A特征的样本个数为2,3,4.则a同时划分入A1,A2,A3。

C4.5的缺点

  • 显然, 当遇到连续值时, 计算量会增大, 特别是涉及到很多的对数操作
  • 树模型亦然存在容易过拟合的现象
posted @ 2020-08-22 12:00  real-zhouyc  阅读(195)  评论(0编辑  收藏  举报