在进行概率图模型中建模的时候,大多数情况下,我们都会尽量选择共轭先验,这样可以在计算时利用积分积掉一些不好求的部分。还有一些情况是在生成模型中,混入了广义线性模型,带隐变量同时又带有非共轭的模型,这就导致后验分布写出来的形式很难进行处理。比如这篇论文里面,由于使用softmax函数的原因,导致非共轭的情况出现,这种时候,主要采用两种手段,Laplace Approximation或者Sampling的方法。最近碰巧遇到了,就记录一下。

话说,一提到拉普拉斯,我就想起来拉普拉斯之箱了。

laplace approximation

简而言之,laplace approximation就是使用Gaussian去近似一个连续变量的概率密度函数。

假设变量\(z\)的复杂分布为\(p(x)\),同时有

\[p(z) = \frac{1}{Z}f(z)\]

由于\(f(x)\)的形式复杂,我们往往求不出来归一化的项,所以只能利用高斯分布来近似,而高斯的中心点就取\(p(z)\)mode众数,即\(p^{''}(z_0) = 0\)的点。又由于已知高斯的对数其实是变量的二次函数,所以就取其泰勒展开的两项。

\[\ln f(z) \cong \ln f(z_0) - \frac{1}{2}A(z - z_0)^2\] \[\quad A = - \frac{d^2}{dz^2} \ln f(z) \mid_{z=z_0}\]

所以,很容易就可以得到

\[f(z) \cong f(z_0) exp(-\frac{A}{2}(z - z_0)^2)\] \[q(z) = (\frac{A}{2 \pi})^{1/2} exp(-\frac{A}{2}(z - z_0)^2)\]

即这个高斯为\(\mathcal{N}(z|z_0,A^{-1})\),同时可以直接扩展到高维的情况。不过laplace近似只考虑了局部的情况,而且在高维的情况下不仅要求极值点\(z_0\)还要求相应的Hessian matrix,还是挺麻烦的。但是另一方面,它只要求函数f在极大值附近平滑,应用简单。

一个简单的例子

现在有一个例子,假设\(X \sim g(z_i|\theta) = \theta(\theta + 1)x_i^{\theta - 1}(1 - x_i)\),其中\(x_{in} \in (0,1)\),物理意义是网球选手在n次循环赛的胜率。显然这个式子没有现成的先验,但是可是使用一个\(Gamma(\alpha,\beta)\)的先验。可得其后验分布为

\[\begin{split} p(\theta|x) & = const * L_x (\theta) * p(\theta) \\ &= const * \Big\{\theta^n (\theta + 1)^n \prod_{i = 1}^n x_i^{\theta}\Big\} * \theta^{\alpha - 1} e^{-\beta \theta} \\ & = const * \theta^{n + \alpha - 1}(\theta + 1)^n e^{-\{b + \sum_{i = 1}^n \log(1 / x_i )\} \theta} \end{split}\]

然后将其取个对数

\[\log p(\theta | x) = const + (n + \alpha - 1)\log \theta + n \log (\theta + 1) - \theta \Big\{ b - \sum_{i = 1}^n \log x_i \Big\}\]

求一阶导数

\[\frac{n + \alpha - 1}{\theta} + \frac{n}{\theta + 1} - {b - \sum_{i = 1}^n \log x_i}\]

然后求二阶导数

\[-\frac{n + \alpha - 1}{\theta^2} - \frac{n}{(\theta + 1)^2}\]

然后就能求出均值和方差了。比如如果n为20,\(\sum_{i = 1} \log X_i = -4.59\),假设超参为\(a = 1, b = 1\), 令一阶导为0可得\(\theta = 6.69\),二阶导为-0.785,这样就可以使用正太分布\(\mathcal{N}(6.69, 1.129^2)\)来近似这一段了。

废话

laplace近似本身就是泰勒公式展开的应用,使用简单,尤其是在推倒的时候解决了很多的问题,不过还是想吐槽一句,一开始费劲的建立复杂的模型,然后求解的时候都只能求近似解。(人家有low bound的啊!)

引用:

  1. 《PRML》

  2. https://stat.duke.edu/~st118/sta250/laplace.pdf




X