变分推断公式推导

变分推断是通过已知简单分布近似逼近需要推断的复杂分布,从而求得局部最优的确定解的一种近似推断方法。
x 为观测到的变量,z x 所依赖的隐变量,
观测到的变量x的概率密度函数为

p(x|Θ)=i=1Nzp(xi,z|Θ)

公式(1)所对应的对数似然函数为
lnp(x|Θ)=1Nln{zp(xi,z|Θ)}

其中, Θ 为参数向量。
当使用 EM 算法来估计隐变量 z 和参数向量Θ时,在 M 步,通过对Q函数取最大化来迭代求最优解,即
Θt+1 =argmaxΘQ(Θ;Θt)=argmaxΘzp(z|x,Θt)lnp(x,z|Θ)

公式(3)中, Q(Θ;Θt) lnp(x,z|Θ) p(z|x,Θt) 条件下的期望。
通常 p(z|x,Θt) 的真实分布很难求出,所以变分推断即是用简单的分布来代替所要求的复杂分布。
p 的近似分布为q,则
lnp=L(q)+KL(q||p)

其中
L(q)=q(z)ln{p(x,z)q(z)}dz

KL(q||p)=q(z)lnp(z|x)q(z)dz

其中 L(q) 为函数 q 的对数似然,KL(q||p) p q KL 散度,由式子可以看出 L(q) 即为 lnp 的下界。
因为 p(z|x,Θt) 会很复杂,所以借助变分推断,假设 z 服从分布
q(z)=i=1Mqi(zi)

即假设多变量 z 可以拆解为一系列相互独立的多变量zi,由于指数族具有良好的性质,在变分推断里通常将 qi 变换为指数函数,这个时候就有
L(q)=iqi{lnp(x,z)ilnqi}dz

将公式(8)的右侧整理成关于某一个多变量 zj 的函数,那么公式(8)可以写为
L(q) =qj{lnp(x,z)ijqidzi}dzjqjlnqjdzj+const=qjlnp˜(x,zj)dzjqjlnqjdzj+const

其中
lnp˜(x,zj)=lnp(x,z)ijqidzi+const

因为公式(10)是关于 qj 的函数,我们固定 qij 然后最大化 L(q)
可以看出,公式(9)等于 KL(qj||p˜(x,zj)) ,所以当 qj=p˜(x,zj) 时, L(q) 取最大, lnqj(zj) 的最优解 lnqj(zj)
lnqj(zj)=Eij[lnp(x,z)]+const

因为不知道 const 的具体值,所以可以通过归一化 qj(zj)
qj(zj)=exp(Eij[lnp(x,z)])exp(Eij[lnp(x,z)])dzj

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值