Variational Inference

Variational Inference


·我们常常需要计算后验概率:
其中z代表模型参数(包括隐变量),x代表数据,α是超参数。

·可是很多复杂的后验概率难以直接计算。

·针对这一问题,我们先选择一个简单分布,优化其参数使其近似复杂分布,然后用简单分布作为复杂分布的替代品。这就是VI的主要思想。

·设p是原始分布,q是近似分布,评估两分布近似程度的指标之一是Kullback-Leibler Divergence:


如果采用KL(p||q)作为评价指标,则变成“expectation propagation”算法。此处选择KL(q||p)是因为对q求期望更简单一些。

·我们的目标就是最小化KL(q||p)。注意到,KL(q||p)可以如下展开:
Variational Inference_第1张图片

括号里的内容被称为evidence lower bound(ELBO),因此最小化KL(q||p)相当于最大化ELBO。

·将其称为ELBO是因为:
Variational Inference_第2张图片

这里用到了Jensen's inequality:


可以看出来,ELBO代表了似然函数的下限。由此可知,最小化KL(q||p)相当于最大化似然函数的下限。

·最小化KL(q||p)有很多种方法,其中mean field是比较常用的一种(注意到VI代表一种思想,基于这一思想,有很多种优化模型参数的算法)。使用这种方法时,我们需要先假设参数之间是相互独立的:



·基于上述假设,我们开始最大化ELBO(最小化KL(q||p))。

·首先,回顾下chain rule:

Variational Inference_第3张图片

·然后将独立假设代入E[logq(Z)]可得:



·根据上面两步,将ELBO分解成以下形式:


·接下来,我们需要迭代地逐个优化参数,每次考虑优化参数:

Variational Inference_第4张图片

(对-k取期望,意味着计算期望值时,假设是常数)


·此时,我们得到了以为参数的目标函数,我们的目标是使其最大化,因此需要对其求导:

Variational Inference_第5张图片


·注意到式(24)中,条件概率可以转换成联合概率除以条件,而条件与无关,因此也可以按照下式更新q():


根据情况,选择式(24)或(25)中的某一条作为更新式子(同一次迭代过程中,必须使用同一条式子)。需要注意的是,根据原始分布p的不同,同一条迭代公式的计算方法也有所不同。


·最后,在迭代收敛后使用q替代p。


·注意到,我们使用其他点提供的关于的信息来给赋新值,且使用时对各个点提供的信息做了平均(期望),因此此方法称为mean field。


·参考资料:

1.普林斯顿大学课件

http://www.cs.princeton.edu/courses/archive/fall11/cos597C/lectures/variational-inference-i.pdf

2.Machine Learning A Probabilistic Perspective第21章


你可能感兴趣的:(机器学习,机器学习)