PRML读书笔记 第十章 近似推断(3)
本章主要更新一下局部变分方法的使用,我理解的局部变分方法的核心主要是寻找概率似然分布函数的近似分布,并限制其“界限”达到优化计算的目的。同时局部似然方法有点类似于图模型当中的“马尔可夫毯”等问题,只需要考虑相关节点的概率分布,不需要对全局进行计算。
书本第五节局部变分法的理论内容比较少,主要是讲述了怎么寻找似然函数的上下界的问题,所以本节主要是利用logistic回归模型来分析一下局部变分方法的使用,同时也回顾一下之前拉普拉斯方法来解决logistic回归的近似问题,来对比两种方法的异同之处。
拉普拉斯近似方法
对于logistic回归,是无法通过精确的贝叶斯推断来处理的,这主要是因为高斯分布与一系列logistic sigmod函数的乘积是不可积分的,所以我们无法利用贝叶斯方法得到其后验分布(根据共轭先验分布的理论,后验分布等于先验分布与logistic sigmod函数的乘积)。所以利用拉普拉斯近似方法(目标是找到一组连续概率分布上面的高斯近似)。
拉普拉斯近似方法的步骤如下:
- 假设一组先验分布: p ( ω ) = N ( ω ∣ m 0 , S 0 ) p(\omega)=N(\omega|m_0,S_0) p(ω)=N(ω∣m0,S0)
- 写出 ω \omega ω的后验分布 p ( ω ∣ t ) ∝ p ( ω ) p ( t ∣ ω ) p(\omega|t)\propto p(\omega)p(t|\omega) p(ω∣t)∝p(ω)p(t∣ω)
- p ( t ∣ ω ) = ∏ n = 1 N y n t n { 1 − y n } 1 − t n p(t|\omega)=\prod_{n=1}^Ny_n^{t_n}\lbrace1-y_n\rbrace^{1-t_n} p(t∣ω)=∏n=1Nyntn{ 1−yn}1−tn 其中 y ( ϕ ) = σ ( ω T ϕ ) y(\phi)=\sigma(\omega^T\phi) y(ϕ)=σ(ωTϕ)
- 简单地相乘得到似然函数: ln p ( ω ∣ t ) = − 1 2 ( ω − m 0 ) T S 0 − 1 ( ω − m 0 ) + ∑ n = 1 N { t n ln y n + ( 1 − t n ) ln ( 1 − y n ) } + 常 数 \ln p(\omega|t)=-\frac{1}{2}(\omega-m_0)^TS_0^{-1}(\omega-m_0)+\sum_{n=1}^N\lbrace t_n\ln y_n+(1-t_n)\ln (1-y_n)\rbrace+常数 lnp(ω∣t)=−21(ω−m0)TS0−1(ω−m0)+n=1∑N{ tnlnyn+(1−tn)ln(1−yn)}+常数
- 利用拉普拉斯方法,利用拉普拉斯方法的第一步,先求“众数”,得到 d f ( z ) d z ∣ z = 0 = 0 {\frac{df(z)}{dz}}|_{z=0}=0 dzdf(z)∣z=0=0假设得到 ω M A P \omega_{MAP} ωMAP
- 利用拉普拉斯方法的第二步,利用 A = − ∇ ∇ ln f ( z ) ∣ z = z 0 A=-\nabla\nabla\ln f(z)|_{z=z_0} A=−∇∇lnf(z)∣z=z0可以算得其方差 S N − 1 = S 0 − 1 + ∑ n = 1 N y n ( 1 − y n ) ϕ n ϕ n T S_N^-1=S_0^{-1}+\sum_{n=1}^Ny_n(1-y_n)\phi_n\phi_n^T SN−1=S0−1+n=1∑Nyn(1−yn)ϕnϕnT
- 剩下的过程是求预测分布了,就是对其做积分,积分过程之中有一些数学变化,认为这不是需要掌握的重要思想,暂时略过。
变分logistic回归
首先,明确我们所求后验概率 p ( ω ∣ t ) ∝ p ( ω ) p ( t ∣ ω ) p(\omega|t)\propto p(\omega)p(t|\omega) p(ω∣t)∝p(