大数据,机器学习,人工智能人工智能/模式识别/机器学习精华专题神经网络与深度学习

产生式模型中概率分布的距离度量

2019-02-28  本文已影响28人  WilliamY

全文下载地址:https://danilorezende.com/wp-content/uploads/2018/07/divergences.pdf
原题名:Short Notes on Divergence Measures
原作者:Danilo Jimenez Rezende
【写在前面】我从原文中截取了与我的研究方向关系较近的一小部分写在这里,供研究深度产生式模型或无监督学习(尤其是对KL距离感兴趣)的同学们参阅。顺序不完全依照原文。对此感兴趣的同学请自行参阅原文。

一、什么是两个概率分布的距离

在概率估计中,常遇到这样的问题:衡量概率密度函数P和Q的距离,这里P是数据的真实分布,Q是某参数分布,作为产生式模型对P的近似。

形式化为,距离D(Q||P),参数分布Q:\mathbb{R}^d \rightarrow \mathbb{R}^+具有参数\theta \in \mathbb{R}^l,真实数据分布P:\mathbb{R}^d \rightarrow \mathbb{R}^+为Q近似的目标。优化\theta使D(Q||P)最小。

对于距离D(Q||P),须满足三个公理:反身性、对称性、三角不等式。

  1. 反身性:D(Q||P) \geq 0;D(Q||P) = 0 \leftrightarrow Q=P
  2. 对称性:D(Q||P) = D(P||Q)
  3. 三角不等式:D(A||C) \leq D(A||B)+D(B||C)

二、热门的KL距离,你为啥很火

KL距离,全称Kullback-Leibler divergence,也叫相对熵(relative entropy)或相对信息(relative informatioin)。KL距离牵涉到一个通信过程的问题:如何在收信者已知概率密度P的基础上,将Q分布传递给收信者。众多机器学习算法用KL距离作度量,是否仅仅是历史的路径依赖?更何况KL距离不满足对称性公理呢。
这里就要说到KL到底在干啥,用白话说就是用逻辑一致的方法来度量信息带来的惊讶程度,或信念转变的程度。后半句好理解,重点讲讲前半句。
根据文献[1],一个有道理的度量概率密度Q相对概率密度P的距离D(Q||P),应该满足三个条件:
i.局部性,即局部的效应引发局部的反应。这样就将D(Q||P)局限在这样的形式下:D(Q||P)=\int_X f(q(x),p(x),x)dx。换句话说,衡量q(x)p(x')的距离必须在x=x'的条件下。这一条件对于f没有限制。
ii.坐标不变性,即用来表示概率密度的坐标中不含信息,所以换另一种坐标对结果不产生影响。用\phi表示对度量的可逆变换,\phi(x)=\tilde{x},则
D(\tilde{Q}||\tilde{P})=\int_\tilde{X} f(\tilde{q}(\tilde{x}),\tilde{p}(\tilde{x}),\tilde{x})d\tilde{x}
D(Q||P)=\int_X f(q(x),p(x),x)dx=\int_\tilde{X} f(\frac{(q\circ \phi^{-1})(\tilde{x})}{|det\frac{\partial \phi}{\partial x}|},\frac{(p\circ \phi^{-1})(\tilde{x})}{|det\frac{\partial \phi}{\partial x}|},\phi^{-1}(\tilde{x}))d\tilde{x}
为了让D(Q||P)=D(\tilde{Q}||\tilde{P}),有
\int_\tilde{X} f(\tilde{q}(\tilde{x}),\tilde{p}(\tilde{x}),\tilde{x})d\tilde{x}=\int_\tilde{X} f(\frac{(q\circ \phi^{-1})(\tilde{x})}{|det\frac{\partial \phi}{\partial x}|},\frac{(p\circ \phi^{-1})(\tilde{x})}{|det\frac{\partial \phi}{\partial x}|},\phi^{-1}(\tilde{x}))d\tilde{x}
f就不再是任意选取,而必须采用形式
f(q(x),p(x),x)=f(\frac{q(x)}{p(x)})\mu(x)
其中f的输出是一个数值,而\mu(x)必须是一个概率密度函数。
【为了“干掉”|det\frac{\partial \phi}{\partial x}|,p(x)q(x)必须一个是分子,一个是分母,这里选择q上p下;因为换元d\tilde{x}=|det\frac{\partial \phi(x)}{\partial x}|dx。为了干掉这一项,必须外面再出现一个概率密度函数,p(x)或者q(x)
所以
D(Q||P)=\int_X f(\frac{q(x)}{p(x)})p(x)dx或者D(Q||P)=\int_X f(\frac{q(x)}{p(x)})q(x)dx
iii.子系统可加性,即不同独立的子系统的信息满足可加性。这一限制将度量函数f局限在f(x)=log(x)这一类函数上。
满足这三个条件的只有KL距离,满足这三个条件的只有KL距离,满足这三个条件的只有KL距离。重要的事情说三遍。
【从上文可知定义D(Q||P)=\int_X log(\frac{q(x)}{p(x)})p(x)dx应该也满足三个条件,但是不满足非负性D(Q||P) \geq 0。可以这样说明:\int_X log(\frac{q(x)}{p(x)})p(x)dx=-\int_X log(p(x))p(x)dx+\int_X log(q(x))p(x)dx=H(P)-H(P,Q)
H(P)表示P分布的混乱程度,H(P,Q)表示P,Q联合分布的混乱程度,而H(P) \leq H(P,Q)

三、还有其他的度量吗?

对于上一节的三个条件做适当放松,我们可以得到以下这些度量方式:
1.f-divergence族。形式为D(Q||P)=\int_X f(\frac{q(x)}{p(x)})p(x)dx,这里f是任意的凸函数,满足条件i和条件ii。
2.Stein divergence。形式为D(Q||P)=sup_{f\in \mathbb{F}}\mathbb{E}_q[\nabla logp(x)f(x)+\nabla f(x)]^2,这里\mathbb{F}是平滑函数满足\mathbb{E}_q[\nabla logp(x)f(x)+\nabla f(x)]=0。违反条件ii和条件iii
3.Cramer/能量 距离D(Q||P)=2\mathbb{E}[||x-y||]-\mathbb{E}[||x-x'||]-\mathbb{E}[||y-y'||],其中x,x' \sim P并且y,y' \sim Q。违反全部i、ii、iii。如果把||\cdot||换成测地线距离,则符合条件ii,但距离结果是负数。
4.Wasserstein距离D_p(Q||P)=[inf_\rho\int dxdx'||x-x'||^p\rho(x,x')],其中\rho:\mathbb{R}^d \times \mathbb{R}^d \rightarrow\mathbb{R}^+并且符合边际概率条件\rho(x)=q(x)\rho(x')=p(x')。违反全部条件。如果把||\cdot||换成测地线距离,则符合条件ii。
5.Fisher距离D(Q||P)=\mathbb{E}_p[||\nabla_x ln(p(x))-\nabla_x ln (q(x))||^2]。符合条件i,如果在度量不变的空间符合条件ii。

Reference

[1]Ariel Caticha. Relative entropy and inductive inference. In AIP Conference Proceedings, volume 707, pages 75�96. AIP, 2004.

上一篇下一篇

猜你喜欢

热点阅读