通俗讲清楚为什么使用信息熵增益比而不是信息熵增益?

版权声明:本文为博主原创文章,可以随便转载 https://blog.csdn.net/appleyuchi/article/details/83042593

来举个简单的例子:

数据集D(出去玩是标签)
A代表属性,A=心情、天气


心情 天气 出去玩
好 晴朗 玩
不好 下雨 不玩
不好 刮风 不玩


好了 ,现在建立决策树,根节点是啥?
第一种方式(信息熵增益):
令A=天气
总熵S(D)= 1 3 l o g 2 1 3 2 3 l o g 2 2 3 = 0.918 -\frac{1}{3}log_{2}\frac{1}{3}-\frac{2}{3}log_{2}\frac{2}{3}=0.918
条件熵S(D|A)= 1 3 0 + 1 3 0 + 1 3 0 = 0 \frac{1}{3}·0+\frac{1}{3}·0+\frac{1}{3}·0=0
g(D,A)=S(D)-S(D|A)=0.918


令A=心情
总熵S(D)= 1 3 l o g 2 1 3 2 3 l o g 2 2 3 = 0.918 -\frac{1}{3}log_{2}\frac{1}{3}-\frac{2}{3}log_{2}\frac{2}{3}=0.918
条件熵S(D|A)= 1 3 0 + 2 3 0 = 0 \frac{1}{3}·0+\frac{2}{3}·0=0
g(D,A)=S(D)-S(D|A)=0.918


现在选择哪一个呢?
显然定不下来。

----------------计算心情的信息熵增益率-------------
A=心情时,特征熵= 1 3 l o g 2 1 3 + 2 3 l o g 2 2 3 = 0.918 \frac{1}{3}log_{2}\frac{1}{3}+\frac{2}{3}log_{2}\frac{2}{3}=0.918


A=天气时,特征熵= 3 1 3 l o g 2 1 3 = 1.5849 -3·\frac{1}{3}log_{2}\frac{1}{3}=1.5849
那么此时特征A的信息熵增益率是 0.918 1.5849 = 0.58 \frac{0.918}{1.5849}=0.58


结论,可以看到,使用信息熵增益率可以更好地对数据集进行划分
让划分更加符合实际情况。
因为显然,刮风天出不出去玩是看心情的。

猜你喜欢

转载自blog.csdn.net/appleyuchi/article/details/83042593