0. 熵

在信息论中,熵是对不确定性的测量,定义为概率分布的对数的相反数。香农把随机变量X的熵值H定义如下:
$$
H(X) = E[I(X) ] = E[-ln(P(X))]
$$
其中,P为X的概率质量函数(probability mass function),E为期望函数,而I(X)是X的信息量(又称为自信息)。

当取自有限的样本时,熵的公式可以表示为:
$$
H(X) = \sum_iP(x_i)I(x_i) = -\sum_iP(x_i)log_bP(x_i),
$$
在这里b是对数所使用的底,通常是2、e、10。当b=2时,熵的单位是bit;当b=e时,熵的单位是nat;当b=10时,熵的单位是Hart。

在信息论中,熵也代表着根据信息的概率分布对信息编码所需要的最短平均编码长度。比如选择题的四个选项(ABCD),如果用二进制编码,当四种选项概率相同时:
$$
H(X) = -\sum_{i=1}^4 \frac{1}{4}log_2\frac{1}{4} = 2
$$
此时熵最大,也即最短平均编码长度最长;当四个选项的概率分别为0.25、0.125、0.5、0.125时:
$$
H(X) = -(\frac{1}{4}log_2\frac{1}{4} + \frac{1}{8}log_2\frac{1}{8} + \frac{1}{2}log_2\frac{1}{2} + \frac{1}{8}log_2\frac{1}{8}) = 1.75
$$
此时熵减小,也即最短平均编码长度减小(均匀分布时不确定性最大)。

1. 交叉熵

交叉熵是描述两个概率分布P和Q差异的一种方法,记为 H(P, Q)。假设现在有样本集的两个概率分布P和Q,其中P为真实分布,Q为非真实分布。按照真实分布P来衡量识别一个样本的所需要的平均编码长度为:
$$
H(P) = \sum_iP(x_i)log\frac{1}{P(x_i)}
$$
如果使用错误分布Q来表示来自真实分布Q的平均编码长度,则应该为:
$$
H(P,Q) = \sum_iP(x_i)log\frac{1}{Q(x_i)}
$$
因为用Q来编码的样本来自真实分布P,所以期望H(P,Q)中乘的概率是P,后面的$log\frac{1}{Q(x_i)}$表示对$x_i$编码需要的长度。

交叉熵被应用在机器学习中作为损失函数,P表示真实标记的分布,Q则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量P与Q的相似性。

2. 相对熵

根据Gibbs’ inequality可知,$H(P,Q) \geq H(P)$恒成立,当且仅当Q和P相等时取等号。我们将由拟合分布Q得到的平均编码长度比由真实分布P得到的平均编码长度多出的bit数称为相对熵.
$$
D(P||Q) = H(P,Q) - H(P) = \sum_iP(x_i)log\frac{P(x_i)}{Q(x_i)}
$$
其又被称为KL散度(Kullback-Leibler divergence, KLD),它表示2个函数或概率分布的差异性:差异越大则相对熵越大,差异越小则相对熵越小,特别地,若二者相同则熵为0。KL散度具有非对称性

PS: 交叉熵相对熵一般针对的是同一随机变量的两个不同分布。

3. 联合熵

两个随机变量X和Y的联合分布可以形成联合熵,定义为联合自信息的数学期望,是二维随机变量XY的不确定性的度量,用H(X,Y)表示:
$$
H(X, Y) = - \sum_{i=1}^n\sum_{j=1}^nP(x_i, y_j)logP(x_i,y_j)
$$

4. 条件熵

在随机变量X发生的前提下,随机变量Y发生新带来的熵,定义为Y的条件熵,用H(Y|X)表示:
$$
H(Y|X) = -\sum_{x,y}P(x,y)log(y|x)
$$
条件熵用来衡量在已知随机变量X的条件下,随机变量Y的不确定性。

实际上,熵、联合熵和条件熵之间存在以下关系:
$$
H(Y|X) = H(X,Y) - H(X)
$$

5. 互信息

两个随机变量X,Y的互信息定义为XY的联合分布和各自独立分布乘积的相对熵,用I(X,Y)表示:
$$
I(X,Y) = \sum_x\sum_yP(x,y)log\frac{P(x,y)}{P(x)P(y)}
$$
互信息是信息论里一种有用的信息度量方式,它可以看成是一个随机变量中包含的关于另一个随机变量的信息量,或者说是一个随机变量由于已知随机变量而减少的不确定性。

熵、条件熵和互信息之间存在一下关系:
$$
I(X,Y) = H(Y) - H(Y|X) = H(X) - H(X|Y)
$$
由上面的条件熵可得:
$$
I(X,Y) = H(X) + H(Y) - H(X,Y)
$$

互信息和信息增益的关系

互信息和信息增益的数学形式是一样的,在数值上是相等的。说互信息的时候,两个随机变量的地位是相同的,即同一状态下系统中的两个子系统;说信息增益的时候,是把一个变量看成减小另一个变量不确定度的手段,即系统分类后增加的信息量,研究同一系统的不同状态。

6. 最大熵模型

最大熵原理是概率模型学习的一个准则,它认为:学习概率模型时,在所有可能的概率分布中,熵最大的模型是最好的模型。通常用约束条件来确定模型的集合,所以,最大熵模型也可以表述为:在满足约束条件的模型集合中选取熵最大的模型。

熵满足下列不等式:
$$
0 \leq H(X) \leq log|X|
$$
其中,|X|是X的取值个数,当且仅当X的分布是均匀分布时右边的等号成立。也就是说,当X服从均匀分布时,熵最大。

直观地看,最大熵原理认为:要选择概率模型,首先必须满足已有的事实,即约束条件;在没有更多信息的情况下,那些不确定的部分是等可能的。最大熵原理通过熵的最大化来表示等可能性;等可能不易操作,而熵则是一个可优化的指标。

参考文献

[1] https://zhuanlan.zhihu.com/p/25197792

[2] https://www.zhihu.com/question/41252833/answer/108777563

[3] https://www.zhihu.com/question/39436574