决策树(信息熵—GINI)计算习题

1 有以下二分类问题训练样本

顾客ID性别车型衬衣尺码
1家用C0
2运动C0
3运动C0
4运动C0
5运动加大C0
6运动加大C0
7运动C0
8运动C0
9运动C0
10豪华C0
11家用C1
12家用加大C1
13家用C1
14豪华加大C1
15豪华C1
16豪华C1
17豪华C1
18豪华C1
19豪华C1
20豪华C1
GINI计算
  1. 计算整个样本集的GINI指标值
  2. ID属性GINI指标值
  3. 性别属性GINI指标值
  4. 多路划分属性车型的GINI指标值
  5. 多路划分属性衬衣的GINI指标值
  6. 性别、车型、衬衣哪个属性好

以下计算 GINI 公式:
G I N I ( D ) = 1 − ∑ i = 1 n p ( i ) 2 GINI(D) = 1-\sum_{i=1}^{n}p(i)^2 GINI(D)=1i=1np(i)2

解答:
	1. 整体Gini值:1-(1/2)^2-(1/2)^2 =0.5
	2. ID 每个都不一样,与其他人没有共性,所以GINI=0
	3. 性别 :1-(1/2)^2-(1/2)^2 =0.5 
	4. 家用: 1-(1/4)2-(3/4)2 = 0.375  
	   运动: 1-(0/8)2-(8/8)2 = 0 
	   豪华: 1-(1/8)2-(7/8)2 = 0.218
	   车型GINI=4/20*0.375+8/20*0.218 = 0.16252

多路划分属性统计表:

Class衣服种类Class车型
加大家用运动豪华
C03322C0181
C12422C1307
5. 三种尺码GINI系数:
   小:1-(3/5)2-(2/5)2 = 0.48
   中:1-(3/7)2-(4/7)2 = 0.4898 
   大:1-(2/4)2-(2/4)2 = 0.5 
   加大:1-(2/4)2-(2/4)2 = 0.5 
   
   衬衣GINI:5/20*0.48+7/20*0.4898+4/20*0.5+4/20*0.5 = 0.4914 
    
6.	属性比较:通过上述计算,显然车型不纯度高,更容易划分

2 有以下二分类问题数据集。

左侧为原数据,右侧上下两个表为统计数据

AB类标号统计A
TF+A=TA=F
TT++40
TT+-33
TF-
TT+
FF-
FF-统计B
FF-B=TB=F
TT-+31
TF--15
信息增益计算
  1. 计算按照属性A和B划分时的信息增益。决策树归纳算法将会选择那个属性?
  2. 计算按照属性A和B划分时GINI指标。决策树归纳算法将会选择那个属性?
  3. 熵和GINI指标在区间 [0,0.5] 都是单调递增,在区间 [0,0.5] 单调递减。有没有可能信息增益和GINI指标增益支持不同的属性?解释你的理由。

信息熵
E n t r o p y ( A ) = − ∑ i = 1 i p i log ⁡ 2 p i Entropy(A) = -\sum_{i=1}^{i}p_i\log_2p_i Entropy(A)=i=1ipilog2pi
(1)划分前样本集的信息熵 E = − 0.4 log ⁡ 2 0.4 − 0.6 log ⁡ 2 0.6 = 0.9710 E = -0.4\log_20.4-0.6\log_20.6 = 0.9710 E=0.4log20.40.6log20.6=0.9710

       ~~~~~~        E A = T : − 4 7 log ⁡ 2 4 7 − 3 7 log ⁡ 2 3 7 = 0.9852 E_{A=T}:-\frac{4}{7}\log_2 \frac{4}{7}-\frac{3}{7} \log_2 \frac{3}{7} = 0.9852 EA=T:74log27473log273=0.9852

       ~~~~~~        E A = F : − 0 3 log ⁡ 2 0 3 − 3 3 log ⁡ 2 3 3 = 0 E_{A=F}: -\frac{0}{3}\log_2 \frac{0}{3}-\frac{3}{3} \log_2 \frac{3}{3} = 0 EA=F:30log23033log233=0

       ~~~~~~       按照A属性划分样本集的 信息增益 Δ A = E − 7 10 E A = T − 3 10 E A = F \Delta_A = E-\frac{7}{10}E_{A=T}-\frac{3}{10}E_{A=F} ΔA=E107EA=T103EA=F = 0.2813

       ~~~~~~       同理可得:(恕我偷懒了,网页编辑公式费时)
       ~~~~~~       按照B属性划分样本集的 信息增益 Δ B = E − 4 10 E B = T − 6 10 E B = F \Delta_B = E-\frac{4}{10}E_{B=T}-\frac{6}{10}E_{B=F} ΔB=E104EB=T106EB=F = 0.2565
       ~~~~~~       因此决策树归纳算法选A属性

(2)按照属性A 、B划分样本集
       ~~~~~~       解答:由原数据 (左表)和统计A 可得GINI指标:

       ~~~~~~        G I N I 类 标 号 : G = 1 − ( 4 10 ) 2 − ( 6 10 ) 2 = 0.48 GINI_{类标号}:G =1-(\frac{4}{10})^2-(\frac{6}{10})^2= 0.48 GINIG=1(104)2(106)2=0.48

       ~~~~~~        G I N I A = T : 1 − ( 4 7 ) 2 − ( 3 7 ) 2 = 0.4898 GINI_{A=T}:1-(\frac{4}{7})^2-(\frac{3}{7})^2 = 0.4898 GINIA=T:1(74)2(73)2=0.4898
       ~~~~~~        G I N I A = F : 1 − ( 0 3 ) 2 − ( 3 3 ) 2 = 0 GINI_{A=F}:1-(\frac{0}{3})^2-(\frac{3}{3})^2 = 0 GINIA=F1(30)2(33)2=0

GINI 增益:
E A = G I N I 类 标 号 − 7 10 G I N I A = T − 3 10 G I N I A = F = 0.1371 E_A = GINI_{类标号}-\frac{7}{10}GINI_{A=T}- \frac{3}{10}GINI_{A=F} = 0.1371 EA=GINI107GINIA=T103GINIA=F=0.1371

由统计B(右下表) 可得:

       ~~~~~~        G I N I B = T : 1 − ( 3 4 ) 2 − ( 1 4 ) 2 = 0.3750 GINI_{B=T}:1-(\frac{3}{4})^2-(\frac{1}{4})^2 = 0.3750 GINIB=T1(43)2(41)2=0.3750
       ~~~~~~        G I N I B = F : 1 − ( 1 6 ) 2 − ( 5 6 ) 2 = 0.2778 GINI_{B=F}:1-(\frac{1}{6})^2-(\frac{5}{6})^2 = 0.2778 GINIB=F1(61)2(65)2=0.2778

GINI 增益:
E B = G I N I 类 标 号 − 4 10 G I N I B = T − 6 10 G I N I B = F = 0.1633 E_B = GINI_{类标号} - \frac{4}{10}GINI_{B=T}- \frac{6}{10}GINI_{B=F} = 0.1633 EB=GINI104GINIB=T106GINIB=F=0.1633
       ~~~~~~       因此决策树归纳算法选B属性

(C):信息增益考察的是特征对整个数据贡献,没有到具体的类别上,所以一般只能用来做全局的特征选择
Gini系数是一种与信息熵类似的做特征选择的方式,用来数据的不纯度。在做特征选择的时候,我们可以取ΔGini(X)最大的那个。

  • 46
    点赞
  • 256
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 29
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SongpingWang

你的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值