转载:https://zhuanlan.zhihu.com/p/128587211 文章阐述了三者的区别与联系。
做个总结:
算法 | 分类规则 | 能否处理连续值 | 是否存在剪枝 | 分类节点是否可以循环使用 | 是否可以处理缺失值 | 分类或者回归 | 样本大小 |
ID3 | 信息增益 | 否 | 否 | 否 | 否 | 分类 | 小样本 |
C4.5 | 信息增益比 | 是 | 是 | 否 | 是 | 分类 | 中样本 |
CART | gini指数/MSE | 是 | 是 | 是 | 是 | 分类+回归 | 大样本 |
具体解释:
(1)对于分类规则中,ID3用信息增益的方法,它偏向选择有许多属性的特征值。(特征值A有三种取值,B有7个)会优先考虑B。C4.5 会偏向特征值较小的特征。
(2)连续值处理:C4.5 对连续特征进行扫描排序(开销大)
(3)剪枝:是一个防止过拟合的过程。C4.5 采用悲观剪枝法,从下向上针对每一个非叶子节点,评估用一个最佳叶子结点去代替。利用误分类率来决定。CART:代价复杂度剪枝。
(4)ID3和C4.5中,在此处选择A1特征作为分割点,那么下次在考虑分割点时,是从{A-A1}中去考虑的,不能再考虑此特征作为分隔点。而CART中不仅要选择最优的特征还要选择特征的最优划分点。比如刚开始用 年龄>18和<=18分类,然后在某一层还可以使用>60和 <=60 >18作为分割点。
(5)ID3对缺失值敏感,C4.5采用概率权重的方法处理缺失值,CART用的是surrogate splits(替代划分)的方式来处理缺失值。详情点击“概率权重”