美文网首页人工智能通识自然科普@IT·互联网
人工智能通识-科普-信息增益率

人工智能通识-科普-信息增益率

作者: zhyuzh3d | 来源:发表于2019-04-22 22:35 被阅读2次

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


什么是信息增益率?

信息增益回顾

之前的三个文章中谈论了信息增益相关的概念,信息增益-1信息增益-2信息增益-3

信息增益(IG:Info Gain)就是某个条件X变为已知之后,整个系统Y损失的不确定性,即:

IG(Y|X)=H(Y)-H(Y|X)

条件已知之后系统的不确定性H(Y|X)称之为条件熵,计算方法就是根据这个条件所有的可能值将结果分为多个子系统,然后分别计算子系统的熵的概率加权和:

H(Y|X)=-\sum _{x \in X }P(x)H(x)

而这里每个子系统的熵的计算方法和标准熵计算公式一样:

H(X)=-\sum _{x \in X }P(x)\log P(X)

信息熵增益的缺陷

回到我们之前的女生择偶数据的例子,这次我们看序号这一列的信息增益值:

可能值1、2、...12共有12个,不管对应的是“否”还是“嫁”,每种子系统的熵都是:
H(X)=-\sum _{x \in X }P(x)\log P(X)=-1\times 1\times \log 1=0
所以条件熵是12个0还是0,原本6嫁6否的系统熵是1,所以信息增益是:

IG(Y|X)=H(Y)-H(Y|X)=1-0=1

注意,这时候信息增益达到了最大!
一条毫无意义的序号信息获得了最大的信息增益,这是不合理的!

如果我们把“序号”属性作为分类树的根节点会怎样?如果有人问你,“我有个朋友,帮我评估一下他在女生择偶中的竞争力。”那么你只能开口就问“你这个朋友的序号是多少?如果是第5号,那么如果他的身高很高则....”
这太荒唐了,我编不下去了...

总之,当某个属性的分类特别多的时候,信息增益并不总是很有效。

内在信息Intrinsic Information

内在信息也称为分裂信息Split Information,是依照某个条件属性将全部样本划分多个子类,这时候整个划分系统所具有的熵:

SI(S,A)=-\sum_{i\in A}\frac{|S_i|}{|S|}\log\frac{|S_i|}{|S|}

这里\frac{|S_i|}{|S|}中的S_i是每个子类的数量,S则是所有样本的数量;这里的A是指属性。

举个例子,以性格分类而言:


性格共有好、坏、超好三个分类,数量分别是6个、4个、2个。那么它的内在信息SI就是:

\begin{align} &SI(S,性格)=-\sum_{i\in A}\frac{|S_i|}{|S|}\log\frac{|S_i|}{|S|}\\ &=-\frac{6}{12}\times \log \frac{6}{12}-\frac{4}{12}\times \log \frac{4}{12}-\frac{2}{12}\times \log \frac{2}{12}\\ &=0.5+0.5283+0.4308\\ &=1.46\\ \end{align}

身高共有高、矮、中三个分类,数量分别是3个、7个、2个。那么它的内在信息SI就是:
\begin{align} &SI(S,身高)\\ &=-\frac{3}{12}\times \log \frac{3}{12}-\frac{7}{12}\times \log \frac{7}{12}-\frac{2}{12}\times \log \frac{2}{12}\\ &=0.5+0.4536+0.4308\\ &=1.3844\\ \end{align}

而对于“序号”属性来说,它的内在信息是:
\begin{align} &SI(S,序号)=-\sum_{i\in A}\frac{|S_i|}{|S|}\log\frac{|S_i|}{|S|}\\ &= -12\times \frac{1}{12}\times \log \frac{1}{12}\\ &= 3.585\\ \end{align}

从这里我们看到,分类越是规则,内部信息越多。比如4、6、2的分法比3、7、2稍微更规则一点,而按照序号分每一个占一类的分法也更大。

如果均分12类每类1个那么就SI就是log0.083333=3.585;
均分6类SI就是log0.1666=2.585;
均分4类SI就是log0.25=2;
均分3类SI就是log0.3333=1.585;
均分2类SI就是log0.5=1;
整个1类SI就是0。

每个1类的情况拥有最大的划分信息量。

信息增益率Info Gain Ratio

信息增益率IGR就是指信息增益除以划分信息量,即:

IGR(S,A)=\frac{InfoGain(S,A)}{SplitInfo(S,A)}

这样我们可以得到“序号”属性的信息增益率是:

IGR(S,序号)=\frac{1}{3.585}=0.2789

同样的参考文章信息增益-3中我们计算的信息增益结果,得到:

IGR(S,性格)=\frac{0.23}{1.46}=0.1575
IGR(S,身高)=\frac{0.4084}{1.3844}=0.2950

信息增益率仅作为另外一个补偿性参考,一般的可以先考虑信息增益,然后再对信息增益比较高的几个属性对比信息增益率。


欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


每个人的智能新时代

如果您发现文章错误,请不吝留言指正;
如果您觉得有用,请点喜欢;
如果您觉得很有用,欢迎转载~


END

相关文章

网友评论

    本文标题:人工智能通识-科普-信息增益率

    本文链接:https://www.haomeiwen.com/subject/sgqpgqtx.html