浅谈EM算法

一般形式的EM算法

期望最大化算法,或者EM算法,是寻找具有潜在变量的概率模型的最大似然解的一种通用的方法(Dempster et al., 1977; MaLachlan and Krishman, 1997), 同时也构成了变分推断框架推导的基础。

考虑一个概率模型,其中将所有的观测变量联合起来记作X, 将所有的隐含变量记作Z。联合概率分布 p(X,Z|θ) 由一组参数控制,记作 θ 。我们的目标是最大化似然函数

p(X|θ)=Zp(X,Z|θ)

这里先假设Z是离散的。

我们假设直接最优化 p(X|θ) 比较困难,但是最优化 p(X,Z|θ) 会容易很多。接下来,我们引入一个定义在潜在变量Z上的概率分布 q(Z) 。可以观察到,对于任意的 q(Z) ,下面的分解成立

lnp(X|θ)=L(q,θ)+KL(q||p)

其中,我们定义了
L(q,θ)=Zq(Z)lnp(X,Z|θ)q(Z)

KL(q||p)=Zq(Z)lnp(Z|X,θ)q(Z)

注意, L(q,θ) 是概率分布 q(Z) 的一个泛函,并且是参数 θ 的一个函数。并且,以上两者的符号相反, L(q,θ) 包含了X和Z的联合概率分布,而 KL(q||p) 包含了给定X, θ 条件下,Z的条件概率分布。分解公式的证明在这里就不给出了。

根据上面的公式,我们看到 KL(q||p) q(Z) 和后验概率分布 p(Z|X,θ) 之间的Kullback-Leibler散度。回忆一下,Kullback-Leibler散度满足 KL(q||p)0 ,当且仅当 q(Z)=p(Z|X,θ) 时等号成立。因此, L(q,θ)lnp(X|θ) , 换句话说, L(q,θ) lnp(X|θ) 的一个下界。

EM算法是一个两阶段的迭代优化算法,用于寻找最大似然解。我们可以使用上述公式来定义EM算法,证明它确实最大化了对数似然函数。假设参数向量的当前值为 θold

在E步骤中,下界 L(q,θld) 关于 q(Z) 被最大化,而 θold 的最大值出现在Kullback-Leibler散度等于零的时候,换句话说,最大值出现在q(Z)与后验概率分布 p(Z|X,θ) 相等的时候。此时,下界等于对数似然函数。

这里写图片描述

在M步骤中,分布q(Z)保持固定,下界 L(q,θ) 关于 θ 进行最大化,得到了某个新的值 θnew 。这会使得下界L增大(除非已经达到了极大值),这会使得对应的对数似然函数增大。由于概率分布 q 由旧的参数值确定,并且在M步骤中保持固定,因此它不会等于新的后验概率分布p(Z|Xθnew),从而KL散度非零。于是,对数似然函数的增加量大于下界的增加量。

这里写图片描述

此时我们将 q(Z)=p(Z|X,θold) 代入公式,在E步骤后,下界的形式为

L(q,θ)=Zp(Z|X,θold)lnp(X,Z|θ)Zp(Z|X,θold)lnp(Z|X,θold))=Q(θ,θold)+

其中,常数就是分布 q 的熵,因此与θ无关。从而在M步骤中,最大化的量是完整数据对数似然函数的期望,并且我们进行优化的变量 θ 只出现在对数运算内部。如果联合概率分布 p(Z,X|θ) 由指数族分布的成员组成,或者由指数族分布成员的乘积组成,那么我们看到对数运算会抵消指数运算,从而使得M步骤通常比最大化对应的不完整数据对数似然函数 p(X|θ) 要容易得多。

Reference
Chapter 9 of PRML : Mixture Models and EM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值