决策树中的ID3、C4.5和CART算法的对比分析

决策树中的ID3、C4.5和CART算法的对比分析

ID3算法(Iterative Dichotmizer 3)

1、 特征选择准则:信息增益
2、 特征必须离散化,不能处理连续值
3、不能处理缺失值
4、 偏向于选择取值多的属性
5、是一个多叉树模型,只用于分类

信息熵: 度量样本集合纯度最常用的一种指标,定义如下

Ent(D)=k=1Ypklog2pk\operatorname{Ent}(D)=-\sum_{k=1}^{|\mathcal{Y}|} p_{k} \log _{2} p_{k}
其中,D={(x1,y1),(x2,y2),,(xm,ym)}D=\left\{\left(\boldsymbol{x}_{1}, y_{1}\right),\left(\boldsymbol{x}_{2}, y_{2}\right), \ldots,\left(\boldsymbol{x}_{m}, y_{m}\right)\right\}表示样本集合,Y|\mathcal{Y}|表示样本类别总数,pkp_{k}表示第kk类样本所占的比例,且0pk10 \leq p_{k} \leq 1k=1Ypk=1\sum_{k=1}^{|\mathcal{Y}|} p_{k}=1Ent(D)\operatorname{Ent}(D)值越小,纯度越高。

条件熵:条件熵——在已知样本属性a的取值情况下,度量样本集合纯度的一种指标。
H(Da)=v=1VDvDEnt(Dv)H(D | a)=\sum_{v=1}^{V} \frac{\left|D^{v}\right|}{|D|} \operatorname{Ent}\left(D^{v}\right)
其中,aa表示样本的某个属性,假定属性aaVV个可能的取值{a1,a2,,aV}\left\{a^{1}, a^{2}, \ldots, a^{V}\right\},样本集合DD中在属性aa上取值为ava^{v}的样本记为DvD^{v},Ent(Dv)\operatorname{Ent}\left(D^{v}\right)表示样本集合DvD^{v}的信息熵。H(Da)H(D | a)值越小,纯度越高。

C4.5算法(Iterative Dichotmizer 3)

1、 特征选择准则:信息增益率
2、 核心是ID3算法的改进版本
3、弥补了ID3算法中不能处理特征属性值连续的问题,需要扫描排序,会使C4.5性能下降
4、通过一种概率权重(Probability weights)的方法来处理缺失值
5、是一个多叉树模型,只用于分类

信息增益率

 Gain_ratio (D,a)=Gain(D,a)IV(a)\text { Gain\_ratio }(D, a)=\frac{\operatorname{Gain}(D, a)}{\operatorname{IV}(a)}
其中
IV(a)=v=1VDvDlog2DvDI V(a)=-\sum_{v=1}^{V} \frac{\left|D^{v}\right|}{|D|} \log _{2} \frac{\left|D^{v}\right|}{|D|}

CART决策树(classification and regression tree,CART)

1、特征选择准则:分类树用基尼指数最小化准则,回归树用平方误差最小化准则
2、可用于分类和回归问题,且每个特征可以被重复利用
3、一颗二叉树,二元切分法
4、ID3和C4.5通过剪枝来权衡树的准确性和泛化能力。而CART直接利用全部数据发现所有可能的树结构进行对比
5、采用替代划分(surrogate splits)的方式来处理缺失值

基尼值:基尼值反映了从数据集DD中随机抽取两个样本,其类别标记不一致的概率。
Gini(D)=k=1Ykkpkpk=k=1Ypkkkpk=k=1Ypk(1pk)=1k=1Ypk2\operatorname{Gini}(D)=\sum_{k=1}^{|\mathcal{Y}|} \sum_{k^{\prime} \neq k} p_{k} p_{k^{\prime}}=\sum_{k=1}^{|\mathcal{Y}|} p_{k} \sum_{k^{\prime} \neq k} p_{k^{\prime}}=\sum_{k=1}^{|\mathcal{Y}|} p_{k}\left(1-p_{k}\right)=1-\sum_{k=1}^{|\mathcal{Y}|} p_{k}^{2}

基尼指数
Gini_index(D,a)=v=1VDvDGini(Dv)\operatorname{Gini\_index}(D, a)=\sum_{v=1}^{V} \frac{\left|D^{v}\right|}{|D|} \operatorname{Gini}\left(D^{v}\right)

基尼值和基尼指数越小,样本集合纯度越高。

CART回归树划分准则
a,av=argmina,av[minc1xiD1(a,av)(yic1)2+minc2xiD2(a,av)(yic2)2]a_{*}, a_{*}^{v}=\underset{a, a^{v}}{\arg \min }\left[\min _{c_{1}} \sum_{\boldsymbol{x}_{i} \in D_{1}\left(a, a^{v}\right)}\left(y_{i}-c_{1}\right)^{2}+\min _{c_{2}} \sum_{\boldsymbol{x}_{i} \in D_{2}\left(a, a^{v}\right)}\left(y_{i}-c_{2}\right)^{2}\right]
根据上述公式找出最优划分特征aa_{*}和最优划分点ava_{*}^{v} 。其中,D1(a,av)D_ {1} \left (a, a^{v}\right)表示在属性aa上取值小于等于ava^{v}的样本集合,D2(a,av)D_ {2}\left(a, a^{v}\right)表示在属性aa上取值大于ava^{v}的样本集合,c1c_{1}表示D1D_ {1}的样本输出均值,c2c_ {2}表示D2D_{2}的样本输出均值。