为什么在衡量生成网络的性能时,Jensen-Shannon 散度优于 Kullback-Leibler 散度?

人工智能 神经网络 深度学习 目标函数 生成对抗网络 概率分布
2021-10-23 07:26:36

我已经阅读了有关 Jensen-Shannon 散度如何优于 Kullback-Leibler 的文章,以衡量在生成网络中学习分布映射的效果,因为当任一分布中的值为零时,JS-divergence 可以更好地测量分布相似性。

我无法理解 JS-divergence 的数学公式是如何解决这个问题的,以及它在质量上与这种边缘情况不同时特别具有什么优势。任何人都可以解释或将我链接到可以令人满意地回答这个问题的解释吗?

1个回答

让我们从问题1)开始 JS-divergence 如何处理零?

根据定义:

DJS(p||q)=12[DKL(p||p+q2)+DKL(q||p+q2)]=12xΩ[p(x)log(2p(x)p(x)+q(x))+q(x)log(2q(x)p(x)+q(x))]
在哪里Ω是域的并集pq. 现在让我们假设一个分布为零,而另一个分布不为零(由于对称性不失一般性,我们可以说p(xi)=0q(xi)0. 然后我们得到该术语的总和
12q(xi)log(2q(xi)q(xi))=q(xi)log(2)2

这不是未定义的,因为它将是 KL 案例。

现在进入2) 在 GANS 中,为什么 JS 散度比 KL 产生更好的结果

KL 散度的不对称性给一个分布带来了不公平的优势,在这种情况下,从优化的角度考虑这种方式并不理想。此外,KL 散度无法处理非重叠分布,因为这些分布是通过采样方案近似的,因此无法保证。JS 解决了这两个问题并导致更平滑的流形,这就是它通常首选的原因。一个很好的资源是这篇论文,他们在那里进行了更详细的调查。