两个多元高斯之间的KL散度


46

假设两个多元正态分布,我在推导KL散度公式时遇到麻烦。我已经很轻松地完成了单变量案例。但是,自从我获得数学统计数据以来已经有一段时间了,因此在将其扩展到多元案例时遇到了一些麻烦。我确定我只是缺少一些简单的东西。

这就是我所拥有的...

假设二者和q是正态分布的与装置的PDF文件μ 1和μ 2和方差Σ 1和Σ 2分别。从q到p的Kullback-Leibler距离为:pqμ1μ2Σ1Σ2qp

,对于两个多元法线为:∫[log⁡(p(x))−log⁡(q(x))] p(x) dx

12[log⁡|Σ2||Σ1|−d+Tr(Σ2−1Σ1)+(μ2−μ1)TΣ2−1(μ2−μ1)]

遵循与此证明相同的逻辑,在陷入困境之前,请先到达此处:

=∫[d2log⁡|Σ2||Σ1|+12((x−μ2)TΣ2−1(x−μ2)−(x−μ1)TΣ2−1(x−μ1))]×p(x)dx

=E[d2log⁡|Σ2||Σ1|+12((x−μ2)TΣ2−1(x−μ2)−(x−μ1)TΣ2−1(x−μ1))]

我认为我必须实现跟踪技巧,但是我不确定在那之后该怎么办。任何有用的提示,让我回到正确的轨道,将不胜感激!


1
stanford.edu/~jduchi/projects/general_notes.pdf。最后一部分也给出了推导。
— user3540823

Answers:


47

从您进行一些细微修改的地方开始,我们可以写

KL=∫[12log⁡|Σ2||Σ1|−12(x−μ1)TΣ1−1(x−μ1)+12(x−μ2)TΣ2−1(x−μ2)]×p(x)dx=12log⁡|Σ2||Σ1|−12tr {E[(x−μ1)(x−μ1)T] Σ1−1}+12E[(x−μ2)TΣ2−1(x−μ2)]=12log⁡|Σ2||Σ1|−12tr {Id}+12(μ1−μ2)TΣ2−1(μ1−μ2)+12tr{Σ2−1Σ1}=12[log⁡|Σ2||Σ1|−d+tr{Σ2−1Σ1}+(μ2−μ1)TΣ2−1(μ2−μ1)].

注意,我使用了Matrix Cookbook的8.2节中的几个属性。


我看到您拿出了我原来的D。在前几步取高斯对数后,您不会有D项吗?
— dmartin 2013年

(2π)−d/2|Σk|−1/2k=1,2(2π)−d/2d1/2

没问题。很高兴我能帮上忙。
— ramhiser

μ1−μ2μ2−μ1

1
@acidghost之一有效,因为我们可以从两方面排除负面因素。将两个负数相乘会得到一个正数。
— ramhiser
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.