前言
在统计学习方法这本书中看到了一个公式:
看到这个公式后的感觉就是这个很明显就没啥用的呀,对于每一个特征来说,因为分母都一样呀,主要还是看信息增益,后面去上网查了一下,好像公式有一点不一样,但是重点不是公式是什么,而是为什么要用信息增益比?难道信息增益不好吗?
什么是信息增益比
我们都知道ID3中是选择信息增益作为选特征作为节点的依据,但在C4.5中选择的是信息增益比,那这里肯定是因为信息增益有什么缺点才让后面的学者改进了这个方法,所以我们举了一个场景:
g
(
D
,
A
)
=
H
(
D
)
−
H
(
D
∣
A
)
g(D,A)=H(D)-H(D|A)
g(D,A)=H(D)−H(D∣A)
因为
H
(
D
)
H(D)
H(D)是对于任何特征来讲是不变的,所以
H
(
D
∣
A
)
H(D|A)
H(D∣A)越小,
g
(
D
,
A
)
g(D,A)
g(D,A)越大,重点集中在
H
(
D
∣
A
)
H(D|A)
H(D∣A)上,假设在A特征下,只有一个分类结果,那么:
H
(
D
∣
A
)
=
1
∗
log
2
(
1
)
=
0
H(D|A)=1*\log_2(1)=0
H(D∣A)=1∗log2(1)=0
这样对于A特征来说,信息增益最大,但是在多分类结果的任务重,分类结果非常多的情况下,基于其他特征的信息增益也有可能是最大,也就是
H
(
D
∣
B
)
=
0
H(D|B)=0
H(D∣B)=0,可能存在多个特征的信息增益最大,或者在举一个不特殊的场景:在特征值是连续的,且特征值取值非常多,各不相同的情况下,A特征的每一个特征值对应一个样本,每个样本的分类结果都不一样,这种情况下:
H
(
D
∣
A
)
=
∑
1
n
1
n
∗
log
2
(
1
)
=
0
H(D|A)=\sum_{1}^{n}\frac{1}{n}*\log_2(1)=0
H(D∣A)=1∑nn1∗log2(1)=0
这里的n是表示样本总数,每个样本的分类结果都不一样,但是在不同的特征值下,概率都是1,所以这种情况下,信息增益是不生效的,需要信息增益比。
社招、校招内推时刻
本人在阿里巴巴工作,业余时间做了社招、校招的公众号,可以内推大家,免筛选直接面试,公众号的一些文章也帮助大学、研究生的一些同学了解校招、了解名企,工作几年的同学想换工作也可以找我走社招内推,同时大家对文章有问题,也可以公众号找我,扫码关注哦!