信息量、信息熵、交叉熵、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=1∑np(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=1∑np(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=1∑np(xi)(−log(q(xi)))−i=1∑np(xi)(−log(p(xi)))=i=1∑np(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=1∑np(xi)(−log(q(xi)))−i=1∑np(xi)(−log(p(xi)))=i=1∑np(xi)log(q(xi)p(xi))−−>总是为正=p(xi)log(q(xi)p(xi)),(p(xi)=1)=log(q(xi)1)−−>真实标签处的估计
对于上式当然分母为1是KL散度最小,也就是在预测过程中,我们希望在我们想要预测的标签上,概率越接近于1越好!。
至此,信息量,信息熵、交叉熵、KL散度与交叉熵损失函数的关系总结完成了。