熵、交叉熵、KL散度、JS散度、推土机理论
熵、交叉熵、KL散度、JS散度、推土机理论
- 信息量
- 熵
- KL散度与交叉熵
- JS散度
- 推土机理论
本文来自知乎文章:原文链接
信息量
设一个事件A的发生概率为p(A),则该事件的信息量为-log(p(A));当一个事件的发生概率越低时(即发生可能性越小),其对应的信息量越大。
熵
熵不仅代表了信息量的平均值,在信息论中具有重要的衡量标准
在只有两种可能的情况发生时(也就是二项分布的情况下),可以用公式2来表示。
KL散度与交叉熵
KL散度表达式由公式(3)给出,请注意它并非一种距离度量,在测度论框架下并不满足距离公理。
从以下展开式可以看出其前半部分即为熵,
而后半部分则对应交叉熵。
D_{K L}(p \| q)=\sum_{i=1}^{n} p\left(x_{i}\right) \log \left(\frac{p\left(x_{i}\right)} {q\left(x_{i}\right)}\right)\\ =\sum_{i=1}^{n} p\left(x_{i}\right) \log \left(p\left(x_{i}\right)\right)-\sum_{i=1}^{n} p\left(x_{i}\right) \log \left(q\left(x_{i}\right)\right)\\ =-H(p(x))+\left[-\sum_{i=1}^{n} p\left(x_{i}\right) \log \left(q\left(x_{i}\right)\right)\right]\tag{4}
由此可知,交叉熵是一种衡量两个概率分布之间差异的方法,并可以用以下公式表示:
H(p, q)=-\sum_{i=1}^{n} p\left(x_{i}\right) \log \left(q\left(x_{i}\right)\right)\tag{5}
JS散度
JS散度基于KL散度进行了优化,并且该方法具有对称性。如公式(6)所示。
推土机理论
当两个概率分布没有重叠时,在深度学习中反向传播更新参数时会出现致命缺陷,在这种情况下KL散度和JS散度数值恒定。为此从而引出了Earth Mover's Theory(简称EMT),见式(7)。
其中\Pi(P_1, P_2)代表任意两个概率分布之间的联合概率关系。我们引入符号\gamma来表示这种关系的具体情况,并通过分析其性质来确定最优解的存在性与唯一性问题。对于每个满足条件的关系式\gamma而言,在其定义域内选取一对变量(x, y)并计算它们之间的距离值;最终选取所有可能结果中的最小值作为衡量标准。这表明,在这种情况下存在一个明确且唯一的解能够满足我们的需求目标。
例如,在如图所示的例子中:假设我们有两个独立的概率分布P_1和P_2分别位于AB线段和CD线段上的概率分布情况。

其KL散度、JS散度及W距离的值分别为:
K L\left(P_{1} \| P_{2}\right)=K L\left(P_{1} \| P_{2}\right)=\left\{\begin{array}{ll}{+\infty} & {\text{当 } \theta \neq 0 \\ 0 & {\text{当 } \theta=0}\end{array}\right.
J S\left(P_{1} \| P_{2}\right)=\left\{\begin{array}{ll}{\log 2} & {\text{当 } \theta \neq 0 \\ 0 & {\text{当 } \theta=0}\end{array}\right.
W\left(P_{0}, P_{1}\right)=|\theta|
观察结果表明,在θ≠0时KL散度与JS散度会发生突变,在θ=0时则均为零;而W距离则呈现平滑特性。
