基本概念
先说明一点:在信息论里面对数log默认都是指以2为底数。很多书籍资料都直接给出香农信息内容的公式,如公式(1)所示,可基本没有给出为什么是这样一种形式的合理化解释。在这里举个比较直白的例子。假设随机从0~63,共64个整数中随机均匀的挑选一个出来,并设法用二进制的形式去判别出来,所选的数字是多少,请问至少需要多少个二进制位?关于为什么选用二进制位,我想没必要解释吧,每一个二进制位都是一个yes or no的二元判别位。我们得到的是数字8,代表我们需要8位二进制位才能标识每一个数字。
下面是一些常用计算公式
自信息量
联合自信息量
条件自信息量
信息熵
熵就是所有类别所有可能值包含的信息期望值,这里的熵与物理化学领域的熵很相似,可能很多人对熵的概念很模糊,甚至不了解,熵说白了就是描述事物混乱度的一个指标,而自然界中的事物总是朝着混乱不整齐的方向的发展,所以说孤立系统下熵是只增不减的,在这里没有必要严格按照物理学假设的条件去定义,我们只需简单的认为熵越高事物越混乱,越低事物越规整就可以了,就像你把一沓整齐的纸扔出去,纸之间只会变得越来越乱。
条件熵
联合熵
根据链式规则,有
可以得出
信息增益Information Gain
系统原先的熵是H(X),在条件Y已知的情况下系统的熵(条件熵)为H(X|Y),信息增益就是这两个熵的差值。
熵表示系统的不确定度,所以信息增益越大表示条件Y对于确定系统的贡献越大。说白了,越来初始时熵很大,谁能让我下降的最快,也就是谁能让我最大程度的变规整,谁就是好的,因此对公式(7)而言,这个差值越大越好。
信息增益在特征选择中的应用
由(7)式可以直接推出词条w的信息增益,(7)式中的X代表类别的集合,Y代表w存在和不存在两种情况
p(ci)是第i类文档出现的概率;p(w)是在整个训练集中包含w的文档占全部文档的比例;p(ci|w)表示出现w的文档集合中属于类别i的文档所占的比例;表示没有出现w的文档集合中属于类别i的文档所占的比例。
信息增益在决策树中的应用
这个例子在ID3算法讲解中有详细介绍,这也是ID3算法的核心思想。
outlook | temperature | humidity | windy | play |
sunny | hot | high | FALSE | no |
sunny | hot | high | TRUE | no |
overcast | hot | high | FALSE | yes |
rainy | mild | high | FALSE | yes |
rainy | cool | normal | FALSE | yes |
rainy | cool | normal | TRUE | no |
overcast | cool | normal | TRUE | yes |
sunny | mild | high | FALSE | no |
sunny | cool | normal | FALSE | yes |
rainy | mild | normal | FALSE | yes |
sunny | mild | normal | TRUE | yes |
overcast | mild | high | TRUE | yes |
overcast | hot | normal | FALSE | yes |
rainy | mild | high | TRUE | no |
(7)式中的X表示打球和不打球两种情况。
只看最后一列我们得到打球的概率是9/14,不打球的概率是5/14。因此在没有任何先验信息的情况下,系统的熵(不确定性)为
outlook | temperature | humidity | windy | play | |||||||||
yes | no | yes | no | yes | no | yes | no | yes | no | ||||
sunny | 2 | 3 | hot | 2 | 2 | high | 3 | 4 | FALSE | 6 | 2 | 9 | 5 |
overcast | 4 | 0 | mild | 4 | 2 | normal | 6 | 1 | TRUR | 3 | 3 | ||
rainy | 3 | 2 | cool | 3 | 1 |
如果选outlook作为决策树的根节点,(7)式中的Y为集合{sunny、overcast、rainy},此时的条件熵为
即选择outlook作为决策树的根节点时,信息增益为0.94-0.693=0.247。
同样方法计算当选择temperature、humidity、windy作为根节点时系统的信息增益,选择IG值最大的作为最终的根节点。
互信息Mutual Informantion
yj对xi的互信息定义为后验概率与先验概率比值的对数。
互信息越大,表明yj对于确定xi的取值的贡献度越大。
系统的平均互信息
可见平均互信息就是信息增益!
互信息在特征选择中的应用
词条w与类别ci的互信息为
p(w)表示出现w的文档点总文档数目的比例,p(w|ci)表示在类别ci中出现w的文档点总文档数目的比例。
对整个系统来说,词条w的互信息为
最后选互信息最大的前K个词条作为特征项。
这里再简单提一下,现在很少直接使用ID3算法做分类,而基于ID3优化的C4.5算法则很流行,C4.5中采用的不是信息增益,而是信息增益率的概念,关于信息增益率与C4.5的故事将在日后整理。