决策树算法ID3/C4.5/CART手算案例
文章目录
已知如下训练数据集(最后一列为类别),利用ID3算法、C4.5算法、CART算法分别建立分类决策树。要求写出计算过程并画出决策树。 (计算结果每步均保留小数点2位)。
![](https://i-blog.csdnimg.cn/blog_migrate/29e122e3c64c3b9cfa29a52e2f5ca1ab.png)
1. ID3算法:使用信息增益作为评价特征重要性的指标
H ( D ) H(D) H(D)表示总体的信息熵, A 1 、 A 2 A_1 、A_2 A1、A2分别表示特征1:是否用鳃呼吸;特征2:有无鱼鳍;
H A 2 ( D ) = − 2 3 l o g 2 2 3 − 1 3 l o g 2 1 3 = 0.918 H_{A_2}(D)=-\frac{2}{3}log_2\frac{2}{3}-\frac{1}{3}log_2\frac{1}{3}=0.918 HA2(D)=−32log232−31log231=0.918
由以上结果知: g ( D , A 1 ) > g ( D , A 2 ) g(D,A_1)>g(D,A_2) g(D,A1)>g(D,A2),
- 信息增益越大,特征越重要;因此首先选择特征 A 1 A_1 A1,绘制决策树如下:
![](https://i-blog.csdnimg.cn/blog_migrate/e1a02a50617d1cf5e1f190bd7b713eff.png)
2. C4.5算法:利用信息增益率做为评价特征重要性的指标
![](https://i-blog.csdnimg.cn/blog_migrate/5d43b3c3e7cc2e61a1b92c9a784b4db6.png)
由以上结果可知 g R ( D , A 1 ) > g R ( D , A 2 ) g_R(D,A_1)>g_R(D,A_2) gR(D,A1)>gR(D,A2),
- 信息增益率越大,特征越重要;因此首先选择特征
A
1
A_1
A1,绘制决策树如下:
3. CART算法:利用基尼系数作为评价特征重要性的指标
g i n i ( D ) = 2 p ( 1 − p ) = 2 ∗ 3 5 ∗ 2 5 = 0.48 gini(D)=2p(1-p)=2*\frac{3}{5}*\frac{2}{5}=0.48 gini(D)=2p(1−p)=2∗53∗52=0.48
g i n i ( D 1 , A 2 ) = 1 − [ ( 2 3 ) 2 + ( 1 3 ) 2 ] = 0.44 gini(D^1,A_2)=1-[(\frac{2}{3})^2+(\frac{1}{3})^2]=0.44 gini(D1,A2)=1−[(32)2+(31)2]=0.44
由以上计算结果可知 g i n i ( D , A 2 ) > g i n i ( D , A 1 ) gini(D,A_2)>gini(D,A_1) gini(D,A2)>gini(D,A1),
- 基尼系数越小,特征越重要,所以首先选择特征
A
1
A_1
A1,绘制决策树如下: