This is defy_odd's blog

人在有闲的时候,才最像一个人 —— 梁实秋

香农熵,交叉熵和KL散度

diffusion model涉及的东西太多了,补知识ing

饮水思源:【10分钟】了解香农熵,交叉熵和KL散度_哔哩哔哩_bilibili

信息量

是一个人为定义

一般认为:

事件的概率越大,信息量越少

事件的概率越小,信息量越大

我们定义事件的概率为,则信息量为.

符合前面的定义

香农熵

一个概率分布的平均信息量,通常也是不确定性(uncertainty)度量的标准

公式定义为

以硬币为例子

假设正反的概率

假设正面的概率,反面的概率为

对于一个确定的概率密度函数(p)

如果它越均匀,也就是如果它各种情况出现的概率越平均,说明越不确定,熵越大(当硬币正反都是0.5时,香农熵为1)

如果它越集中,也就是如果它各种情况出现的概率差距越大,说明越确定(有某一个出现的概率很大),熵越小


交叉熵

这个比较有意思

它计算的是预测出来的GT(ground truth)概率分布的平均信息熵。(确实挺绕的)

按照视频里的英文是,given estimated probability distribution, the estimation of expected amount of information of ground truth probability distribution.

因为涉及到两个部分,一个真实的概率一个预测出来的概率,所以称为交叉熵。

//当作没有这行……我们假设GT是,预测出来的

交叉熵的公式为

可以理解成用真实的概率作为预测出来的概率的信息量的权重,进行加权求和

(不想写例子了,这个latex公式敲的好累,具体例子看视频吧)

当预测出来的概率越接近真实值时,交叉熵的值越接近于真实的熵值。(这里的熵指的是香农熵)


KL散度

来了兄弟们

单说公式,特别简单,就是两个分布之间的交叉熵减去其中一个的熵。用于衡量两个分布之间的差距

公式为

有俩重要的性质(至于这俩性质的推导我就没管了,感觉知道就行)

1、非负性 当且仅当两个分布完全一样时会等于0

2、非对称性 说明该指标衡量的不是距离

在机器学习中,最小化KL散度有时候等价于最小化交叉熵

从梯度(求导)的角度来看


KL的另一种推导方法,更加直观,感觉这就写的挺好的,我就不再手打了

总结

上公式最直接了,是某事件的概率

信息量:.

香农熵:

交叉熵:

KL散度:

终于能接着学后面的了,东西真多