信息量、信息熵、交叉熵、KL散度以及交叉损失函数的关系与理解

信息量、信息熵、交叉熵、KL散度以及交叉损失函数的关系与理解

记事件 p p p,在各个状态下 x i x_i xi 的概率为 p ( x i ) p(x_i) p(xi) 。(假设共n个状态)

1、 信息量:概率越大信息量越小。
− l o g ( p ( x i ) ) -log(p(x_i)) log(p(xi))

2、 信息熵:信息量的期望值:
H ( p ) = ∑ i = 1 n p ( x i ) ( − l o g ( p ( x i ) ) ) H(p) = \sum\limits_{i = 1}^n {p({x_i})} ( - log(p({x_i}))) H(p)=i=1np(xi)(log(p(xi)))

3、 交叉熵:假设我们不知道p的概率分布,我们用一个概率分布q去近似,q在各个状态下的概率 。从采样上来看,我们能够看到事件 的真实表现概率 ,那么用q来近似p的信息量为交叉熵。
H ( p , q ) = ∑ i = 1 n p ( x i ) ( − l o g ( q ( x i ) ) ) H(p,q) = \sum\limits_{i = 1}^n {p({x_i})} ( - log(q({x_i}))) H(p,q)=i=1np(xi)(log(q(xi)))
4、 KL散度:我们可以把 看成一个预测值, 为真实值,是可以观察到的是个常值,预测值与真实值之间的差值,就是信息的损失也叫KL散度。
K L ( p , q ) = H ( p , q ) − H ( p ) = ∑ i = 1 n p ( x i ) ( − l o g ( q ( x i ) ) ) − ∑ i = 1 n p ( x i ) ( − l o g ( p ( x i ) ) ) = ∑ i = 1 n p ( x i ) p ( x i ) q ( x i ) \begin{array}{l} KL(p,q) = H(p,q) - H(p)\\ {\rm{ = }}\sum\limits_{i = 1}^n {p({x_i})} ( - log(q({x_i}))) - \sum\limits_{i = 1}^n {p({x_i})} ( - log(p({x_i})))\\ {\rm{ = }}\sum\limits_{i = 1}^n {p({x_i})} \frac{{p({x_i})}}{{q({x_i})}} \end{array} KL(p,q)=H(p,q)H(p)=i=1np(xi)(log(q(xi)))i=1np(xi)(log(p(xi)))=i=1np(xi)q(xi)p(xi)
为什么不反过来减:
答:一般作为损失函数我们希望损失函数越小越好,在这个问题中,在对p(x)进行逼近时,由于我们已经进行了one-hot编码,所以只有真实标签的那一项对于KL散度是有贡献的即:
K L ( p , q ) = H ( p , q ) − H ( p ) = ∑ i = 1 n p ( x i ) ( − l o g ( q ( x i ) ) ) − ∑ i = 1 n p ( x i ) ( − l o g ( p ( x i ) ) ) = ∑ i = 1 n p ( x i ) log ⁡ ( p ( x i ) q ( x i ) ) − − > 总 是 为 正 = p ( x i ) l o g ( p ( x i ) q ( x i ) ) , ( p ( x i ) = 1 ) = l o g ( 1 q ( x i ) ) − − > 真 实 标 签 处 的 估 计 \begin{array}{l} KL(p,q) = H(p,q) - H(p)\\ {\rm{ = }}\sum\limits_{i = 1}^n {p({x_i})} ( - log(q({x_i}))) - \sum\limits_{i = 1}^n {p({x_i})} ( - log(p({x_i})))\\ {\rm{ = }}\sum\limits_{i = 1}^n {p({x_i})} \log (\frac{{p({x_i})}}{{q({x_i})}})-->总是为正\\ {\rm{ = }}p({x_i})log(\frac{{p({x_i})}}{{q({x_i})}}),(p({x_i}) = 1)\\ {\rm{ = log(}}\frac{1}{{q({x_i})}})-->真实标签处的估计 \end{array} KL(p,q)=H(p,q)H(p)=i=1np(xi)(log(q(xi)))i=1np(xi)(log(p(xi)))=i=1np(xi)log(q(xi)p(xi))>=p(xi)log(q(xi)p(xi)),(p(xi)=1)=log(q(xi)1)>
对于上式当然分母为1是KL散度最小,也就是在预测过程中,我们希望在我们想要预测的标签上,概率越接近于1越好!。
至此,信息量,信息熵、交叉熵、KL散度与交叉熵损失函数的关系总结完成了。