1. 熵
物理学上,熵 Entropy 是“混乱”程度的量度。
系统越有序,熵值越低;系统越混乱或者分散,熵值越⾼。
1948年⾹农提出了信息熵(Entropy)的概念。
从信息的完整性上进⾏的描述:当系统的有序状态⼀致时,数据越集中的地⽅熵值越⼩,数据
越分散的地⽅熵值越⼤。
从信息的有序性上进⾏的描述:当数据量⼀致时,系统越有序,熵值越低;系统越混乱或者分
散,熵值越⾼。
"信息熵" (information entropy)是度量样本集合纯度最常⽤的⼀种指标。 假定当前样本集合 D 中第
k 类样本所占的⽐例为 pk (k = 1, 2,. . . , |y|) ,,D为样本的所有数量,Ck 为第k类样本
的数量。 则 D 的信息熵定义为(log是以2为底,lg是以10为底):
其中:Ent(D) 的值越⼩,则 D 的纯度越⾼。
例子:假设我们没有看世界杯的⽐赛,但是想知道哪⽀球队会是冠军, 我们只能猜测某⽀球队是
或不是冠军,然后观众⽤对或不对来回答, 我们想要猜测次数尽可能少,⽤什么⽅法?
答案: ⼆分法。
假如有 16 ⽀球队,分别编号,先问是否在 1-8 之间,如果是就继续问是否在 1-4 之间, 以此类
推,直到最后判断出冠军球队是哪⽀。 如果球队数量是 16,我们需要问 4 次来得到最后的答案。
那么世界冠军这条消息的信息熵就是 4。
那么信息熵等于4,是如何进⾏计算的呢?
Ent(D) = -(p1 * logp1 + p2 * logp2 + ... + p16 * logp16),其中 p1, ..., p16 分别是这 16 ⽀球队
夺冠的概率。 当每⽀球队夺冠概率相等都是 1/16 的时侯,Ent(D) = -(16 * 1/16 * log1/16) = 4
每个事件概率相同时,熵最⼤,这件事越不确定。
2. 信息增益
信息增益:以某特征划分数据集前后的熵的差值。熵可以表示样本集合的不确定性,熵越⼤,样本
的不确定性就越⼤。 因此可以使⽤划分前后集合熵的差值来衡量使⽤当前特征对于样本集合D划分
效果的好坏。
信息增益 = entroy(前) - entroy(后)
信息增益表示得知特征X的信息⽽使得类Y的信息熵减少的程度。
假定离散属性a有 V 个可能的取值:
若使⽤ a 来对样本集 D 进⾏划分,则会产⽣ V 个分⽀结点,其中第v个分⽀结点包含了 D 中所有
在属性 a上取值为 av 的样本,记为 D。我们可根据前⾯给出的信息熵公式计算出 D 的信息熵,再
考虑到不同的分⽀结点所包含的样本数不同,给分⽀结点赋予权重
即样本数越多的分⽀结点的影响越⼤,于是可计算出⽤属性 a 对样本集 D 进⾏划分所获得的"信息
增益" (information gain)。
其中:特征a对训练数据集 D 的信息增益 Gain(D,a),定义为集合 D 的信息熵 Ent(D) 与给定特征 a
条件下 D 的信息条件熵 Ent(D∣a) 之差,即公式为: