为什么交叉熵和KL散度在作为损失函数时是近似相等的

在本文中,我们将介绍熵、交叉熵和 Kullback-Leibler Divergence [2] 的概念,并了解如何将它们近似为相等。

尽管最初的建议使用 KL 散度,但在构建生成对抗网络 [1] 时,在损失函数中使用交叉熵是一种常见的做法。这常常给该领域的新手造成混乱。当我们有多个概率分布并且我们想比较它们之间的关系时,熵和 KL 散度的概念就会发挥作用。

在这里我们将要验证为什么最小化交叉熵而不是使用 KL 散度会得到相同的输出。所以我们首先从正态分布中抽取两个概率分布 p 和 q。如图 1 所示,两种分布都不同,但是它们共享一个事实,即两者都是从正态分布中采样的。

为什么交叉熵和KL散度在作为损失函数时是近似相等的

熵是系统不确定性的度量。直观地说它是从系统中消除不确定性所需的信息量。系统各种状态的概率分布 p 的熵可以计算如下:

为什么交叉熵和KL散度在作为损失函数时是近似相等的

交叉熵

交叉熵是指存在于两个概率分布之间的信息量。在这种情况下,分布 p 和 q 的交叉熵可以表述如下:

为什么交叉熵和KL散度在作为损失函数时是近似相等的

完整文章:

https://www.overfit.cn/post/cec0eb1d28c446129b38aedf11182fbb

 

上一篇:[鱼书笔记] 深度学习入门:基于 Python 的理论与实现 个人笔记分享


下一篇:强化学习:TRPO和PPO背后的数学