KL散度
首先回顾熵的定义:
其中$I[x]$是时间x=x的自信息:
自信息只处理单个输出,但是熵可以对整个分布的不确定性信息总量进行量化。
如果对于同一个随机变量x有两个单独的概率分布$P(x)$和$Q(x)$,可以使用KL散度来衡量这两个分布的差异。
需要注意的是$D_{KL}(P||Q)$不等于$D_{KL}(Q||P)$,KL散度并不是一个距离,因此他们有对称性。
KL散度的离散情况为:
可以看的出来,KL散度表达的是一种编码在另一种编码表示下,所需要增加的熵的信息。
交叉熵
交叉熵的定义为:
离散情况为:
它和KL散度很相似,二者只相差了左边的一项:
需要注意的是,在机器学习中CE常被用作分类任务的loss函数。此时,由于样本的标签是固定的,则$ H(P)$的值是固定的,那么最小化CE就等价于最小化KL散度。这里的一个思想是吧样本的标签看作一个分布,样本的预测标签看成另一个分布。