PRML-10 变分推断-1



为什么需要近似推断
现在棘手的问题在于
\(1.计算给定观察x后的隐变量z和参数\theta的后验分布计算\)
\(2.计算观测变量的边缘分布\)


两种方法达到近似推断
1.决定性方法,-有解析解,快速,但是求出的是局部解
2.随机性方法,-慢,要采样多次,但是可以得到全局解(有证明的)

决定性推断有哪些?
1.拉普拉斯近似,使用一个高斯分布区近似,但是是局部解,有可能这个分布是多峰的,没法精确近似
2.变分推断(本章)-全局解方法
3.期望传播

变分推断是基于泛函分析的,什么是泛函分析?
重点!!!!!!!!
function(函数):\(x \to t (通过函数f(x))\),通过一个f将一个值x映射为另外一个值
functional(泛函):\(y(x)\to t(通过一个泛函F(y)),将一个函数通过一个映射,映射为一个值\)
简单说泛函就是函数的函数

例子
比如说,熵的计算
\(H(p),这里的p是一个分布函数p(x)\)
还有KL散度,输入两个概率分布,得到一个值


所谓变分法,就是对泛函求导,求极值
泛函分析就是用变分法的取近似后验概率\(P(Z|X),Z\)是隐变量
也就是找一个概率分布q(Z)来逼近我们的后验分布\(P(Z|X)\)
逼近需要度量,用KL散度计算
fix \(p\),扰动\(q\),来使得KL散度达到最小
KL散度的公式,见上图
KL=0,即表示两个分布是一样的
\(p\)怎么求?没法得到,怎么解决?
\(p\)都知道了,还要求q干嘛呢?

对对数似然函数分解(第九章)+变分变量
\(ln p(X)=\mathcal{L}(q)+KL(q||p)\)
\(图中的Z包含了隐变量和参数\theta\)
\(ln p(X)虽然没法求,但是我们知道X是固定的,已知的,所以ln p(X)是固定值\)
\(其中q是扰动的,p(X,Z)是联合分布,不是下面KL中的条件分布,联合分布还是好求的(怎么求?)\)
\(本章先假设p(X,Z)是可以计算的,则\mathcal{L} 可以得到解析解\)
\(\mathcal{L} 是一个泛函\)
\(之前讲过ln p(X) 是固定的,那么最大化 \mathcal{L} 相当于最小化KL(q||p)\)
\(所以思路变成最大化 \mathcal{L}\)
\(然后用变分法求\mathcal{L} 最大值,所以\mathcal{L}称为变分下界)\)


如何解决最大化问题呢,用的是平均场的方法,该方法用来限制/约束/假设\(q\)的分布
把隐变量/参数切成块(相互之间独立)-称为Factorized q distribution 分布分解,使得块之间可以乘积\(q(Z)=\prod q_i (Z_i)\)
\(这个假设要越弱越好,q(Z)要尽可能的灵活,不能影响我们计算\mathcal{L} 的极值\)

这是本章最重要的公式!!!-10.9


\(将10.5公式代入10.3\)
\(推导得到10.9\)
\(q_j^*是q的每个分块的最优解,这个最优解有10.9这个公式的表现形式\)
\(遍历所有的Z中的变量,除了不等于j的那个隐变量/参数的联合概率分不p(X,Z)先做一次ln然后求期望\)

\(因为变量之间的相互依赖关系,所以需要反复迭代,最后收敛,达到所有q_i的最优解\)


案例

两个隐变量/参数 \(z_1,z_2\)

\(分别对z_1,z_2使用公式10.9计算\)

\(这里的\Lambda 都是标量,最后得到关于z_1的二次方程\)
\(根据第二章的知识,这里得到的q_1分布是一个高斯分布-10.12\)


这张图就可以看到,隐变量之间相互依赖,没法一次求得,要逐步迭代,重新估计,re-estimation


这个KL散度不是对称的,意思就是\(KL(p||q) \ne KL(q||p)\)
如果要用\(KL(p||q)\)也是可以的,图里展示了公式,公式下面应该有分母,是关于\(p(Z)\),不应该q,所以去掉了
\(直接用变分法+拉格朗日乘子的方法,得到q_j^*(Z_j) -10.3联系\)
\(这里我们发现不需要做反复迭代 10.17-为啥? 这个和期望传播算法有关\)
\(绿色是真实分布等高线,红色是q分布的等高线,b表示对p的估计太大了\)


这个图是用一个高斯分布去近似多峰的分布(多峰表示有多个众数)
蓝色是真实的二峰的等高线,用p||q 有点均衡了所有分布的意思

正式的例子


\(逼近q\to p(\mu,\tau |x),\mu是均值,\tau是精度(应该是指方差的导数,第二章概率论中有)\)
\(似然函数见图\)
\(对先验分布进行设计,假设p(\my|\tao)为高斯分布,p(\tau)是gamma分布\)
\(为什么这么设计?\)
\(因为是共轭先验,方便计算,后验和先验分布一样\)

分解\(q(\mu,\tau) 10.24 不分解虽然书上没有说明,但是应该是有问题的\)

10.25 是一元二次方程,\(q(\mu)还是一个高斯分布,q(\tau)是gamma分布\)

\(\mu,\tau 是相互依赖的,又需要迭代了 re-estimation\)