KL divergence为什么不是对称的?

  统计/机器学习 概率分布 描述性统计    浏览次数: 449
3

之前我问了python中计算KL divergence,但是发现KL divergence不是对称的,比如说KL(a, b) != KL(b, a)。

为什么不对称呢?是两者的意义不同吗?


 

飞翔钉子   2018-04-25 00:27



   3个回答 
5

KL divergence又可以叫相对熵

从它的计算过程:

$$KL(p||q)=-\int p(x)\ln q(x)\mathrm{d}x-\left ( -\int p(x)\ln p(x)\mathrm{d}x \right )$$

可以看到不满足对称。

信息论里可以理解右边一项是x分布为p(x)时,传输x信息的最小编码长度。左边一项是x的分布为p(x),却被误认为分布是q(x)情况下的实际编码长度。所以非负性也可以理解。



nobodyoo1   2018-04-25 01:10

4

从信息论的角度来说,$KL(P||Q)$是指当我们用$Q$去逼近$P$的信息损失量。


从统计角度来说可能更好理解一点。两个概率分布$P$和$Q$,概率密度函数分别为$p(x)$和$q(x)$。

我们根据概率分布$P$去生成一个随机点$x$,那么这个$x$有多大的可能性是属于概率分布$Q$的呢?它们的似然函数分别为$p(x)$和$q(x)$。因为$P$是所谓的原分布,那么$q(x)$越接近$p(x)$,所以$\frac{q(x)}{p(x)}$就该接近1。

顺理成章,就很好理解$KL$为什么不对称了。$KL(P||Q)$指的是$P$为原分布,$KL(Q||P)$指的是$Q$为原分布。

$$KL(P||Q)=\lim_{n\rightarrow\infty} \frac{1}{n}\sum_{i=1}^n\log\frac{{q(x_i)}}{p(x_i)}$$


此外英文好得可以看看这篇文章,写得更具体。

Lydia   2018-05-17 12:45

0

如果题主需要一个具有对称性的度量的话,推荐Jensen–Shannon divergence,它可以看作是对称版的Kullback–Leibler divergence。


Marvin_THU   2018-06-27 22:13



  相关主题

python中计算KL divergence   1回答

QQ-plot图里的x轴y轴是什么意思   1回答

boxplot里的横线是什么意思?   1回答

二项分布的正态近似   2回答

均匀分布的上限的最大似然估计   1回答

两个独立的正态随机变量的乘积服从什么分布?   1回答

生成两组不独立的标准正态分布随机数   1回答

python产生服从常用概率分布的随机数   1回答

为什么样本方差是除以n-1   3回答

标准误和标准差有什么区别?   1回答

有序分类变量的相关系数   2回答

一个连续变量和一个二元变量的相关系数怎么求?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!