决策树ID3和C4.5的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kwame211/article/details/81670922

主要描述里ID3和C4.5的区别和改进,C4.5的优缺点,以及信息增益与信息增益比的计算方法

区别

ID3使用信息增益作为特征选择的度量 
C4.5使用信息增益作为特征选择的度量

信息增益 
g(D,A)=H(D)−H(D|A)g(D,A)=H(D)−H(D|A) 
H(D)H(D)是数据集D的熵,计算公式H(D)=−∑Kk=1|Ck|Nlog|Ck|NH(D)=−∑k=1K|Ck|Nlog|Ck|N 
CkCk是在数据集D中出现k类的数量,N是样本的数量,类别的总数 
H(D|A)H(D|A)是特征A对与数据集D的条件熵,其意义是:在子集DiDi中Y的分布。 
计算方法是 H(D|A)=∑ni=1NiN∑Kk=1−(NikNilogNikNi)H(D|A)=∑i=1nNiN∑k=1K−(NikNilogNikNi) 
设特征A是离散的,且有n个不同的取值:{a1,a2,...,ana1,a2,...,an},根据特征A的取值将D划分为n个子集:D1,D2,...,DnD1,D2,...,Dn,NiNi为对应的DiDi中的样本数

信息增益

综合之后信息增益的公式 
g(D,A)=H(D)−H(D|A)=H(D)−∑ni=1NiN∑Kk=1−(NikNilogNikNi)g(D,A)=H(D)−H(D|A)=H(D)−∑i=1nNiN∑k=1K−(NikNilogNikNi)

信息增益比

特征A对训练集D的信息增益比gR(D,A)gR(D,A)定义为 
gR(D,A)=g(D,A)HA(D)gR(D,A)=g(D,A)HA(D) 
HA(D)=−∑ni=1NiNlogNiNHA(D)=−∑i=1nNiNlogNiN 
HA(D)HA(D)刻画了特征A对训练集D的分辨能力

改进

C4.5继承了ID3的有点,并在以下几个方面对ID3算法进行了改进:

  • 用信息增益比来选择属性,克服了用信息增益选择属性是偏向选择去之多的属性的不足
  • 在数的构造过程中进行剪枝
  • 能够对连续的属性进行离散化处理
  • 能够对不完整的数据进行处理

优点

C4.5的优点 
- 产生分类的规则易于理解 
- 准确率较高 
C4.5的缺点 
- 在构造树的过程中需要多次对数据集进行扫描和排序,因而导致算法的低效 
- 只适用于能够驻留在内存的数据集,当数据集大的无法在内存容纳是程序无法运行

剪枝

待补充

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页