我们将X:Observed data;Z:Latent Variable + Parameters。那么(X,Z)为complete data。根据我们的贝叶斯分布公式,我们所要求的后验分布为:
p(Z∣X)=p(X∣Z)p(X,Z)
进行一些简单变换,我们可以得到:
p(X)=p(Z∣X)p(X,Z)
在两边同时取对数我们可以得到:
logp(X)===logp(Z∣X)p(X,Z)logp(X,Z)−logp(Z∣X)logq(Z)p(X,Z)−logq(Z)p(Z∣X)
公式化简
左边 = p(X) = ∫Zlog p(X)q(Z)dZ。
右边 =
∫Zq(Z)log q(Z)p(X,Z)dZ−∫Zq(Z)log q(Z)p(Z∣X)dZ
其中,∫Zq(Z)log q(Z)p(X,Z)dZ被称为Evidence Lower Bound (ELBO),被我们记为L(q),也就是变分。
−∫Zq(Z)log q(Z)p(Z∣X)dZ被称为KL(q∣∣p)。这里的KL(q∣∣p)≥0。
由于我们求不出p(Z∣X),我们的目的是寻找一个q(Z),使得p(Z∣X)近似于q(Z),也就是KL(q∣∣p)越小越好。并且,p(X)是个定值,那么我们的目标变成了argmaxq(z)L(q)。那么,我们理一下思路,我们想要求得一个q(Z)≈p(Z∣X)。也就是
q(Z)=argmaxq(z)L(q)⇒q(Z)≈p(Z∣X)
模型求解
那么我们如何来求解这个问题呢?我们使用到统计物理中的一种方法,就是平均场理论(mean field theory)。也就是假设变分后验分式是一种完全可分解的分布:
q(z)=i=1∏Mqi(zi)
在这种分解的思想中,我们每次只考虑第j个分布,那么令qi(1,2,⋯,j−1,j+1,⋯,M)个分布fixed。
那么很显然:
L(q)=∫Zq(Z)logp(X,Z)dz−∫Zq(Z)logq(Z)dZ
我们先来分析第一项∫Zq(Z)logp(X,Z)dZ。
∫Zq(Z)logp(X,Z)dZ===∫Zi=1∏Mqi(zi)logp(X,Z)dZ∫zjqj(zj)[∫z1∫z2⋯∫zMi=1∏Mqi(zi)logp(X,Z)dz1dz2⋯dzM]dzj∫zjqj(zj)E∏i=jMqi(xi)[logp(X,Z)]dzj
然后我们来分析第二项∫Zq(Z)logq(Z)dZ,
∫Zq(Z)logq(Z)dZ==∫Zi=1∏Mqi(zi)i=1∑Mlogqi(zi)dZ∫Zi=1∏Mqi(zi)[logq1(z1)+q2(z2)+⋯+qM(zM)]dZ
这个公式的计算如何进行呢?我们抽出一项来看,就会变得非常的清晰:
∫Zi=1∏Mqi(zi)logq1(z1)dZ===∫z1z2⋯zMq1q2⋯qMlogq1dz1dz2⋯zM∫z1q1logq1dz1⋅∫z2q2dz2⋅∫z3q3dz3⋯∫zMqMdzM∫z1q1logq1dz1
因为,∫z2q2dz2每一项的值都是1。所以第二项可以写为:
i=1∑M∫ziqi(zi)logqi(zi)dzi=∫zjqj(zj)logqi(zi)dzj+C
因为我们仅仅只关注第j项,其他的项都不关注。为了进一步表达计算,我们将:
E∏i=jMqi(zi)[logp(X,Z)]=logp^(X,zj)
那么(8)式可以写作:
∫zjqj(zj)logp^(X,zj)dzj
这里的p^(X,zj)表示为一个相关的函数形式,假设具体参数未知。那么(7)式将等于(13)式减(11)式:
∫zjqj(zj)logqi(zi)dzj−∫zjqj(zj)logp^(X,zj)dzj+C=−KL(qj∣∣p^(x,zj))≤0
argmaxqj(zj)−KL(qj∣∣p^(x,zj))等价于argminqj(zj)KL(qj∣∣p^(x,zj))。那么这个KL(qj∣∣p^(x,zj))要如何进行优化呢?我们下一节将回归EM算法,并给出求解的过程。
本文由mdnice多平台发布