EM算法

EM算法用于寻找含潜在分布的参数的最大似然估计。在高斯混合模型(GMM)中,EM算法通过不断迭代优化,最大化完全对数似然,从而估计模型参数。E-step计算期望,M-step进行参数更新。GMM是多个高斯分布的组合,可用于复杂分布的拟合。
摘要由CSDN通过智能技术生成

EM算法是一种通过观测到的数据,找到含潜在分布的参数的最大似然估计(MLE,Maximum Likelihood Estimate)的通用方法。一般我们称观测到的数据是incomplete的,或有missing values。

那EM算法如果要成功得到MLE,需要将不可观测的complete data和incomplete data联系起来,这样complete data可以被未知参数的函数所描述,MLE求解也变的简单。

EM框架中,我们通常将 logp(Xθ) 称为不完全对数似然(incomplete log data likelihood),而 log p(X,Z|θ) 称为完全对数似然(complete log data likelihood ),EM算法的目标是通过最大化完全对数似然找到参数的合理估计。然而由于我们对隐变量一无所知,因此没办法直接最大化完全对数似然,替代方案是最大化完全对数似然的后验数学期望,这里先给出该算法的参数迭代更新式:

θ(g+1)=argmaxθZlog p(X,Z|θ)p(Z|X,θ(g))dZ(1)

公式推导和解释

求参数 θ 的最大似然:

θMLE=argmaxθ(L(θ))=argmaxθ(log[p(Xθ)])

需要一些trick,上面公式中的 Z 成为模型的latent variable
要证明Eq(1)的EM迭代公式是有效的,那么就需要确保
logp(Xθ(g+1))logp(Xθ(g))

使得最终结果收敛。
所以先看如下证明,已知:
logp(X|θ)=logp(X,Z|θ)logp(Z|X,θ)(2)

Eq(2)式子两边同时对分布 p(Z|X,θ(g)) 在latent变量 Z 上求积分。
=Zlogp(X|θ)p(Z|X,θ(g))dZ=logp(X|θ)

=Zlogp(X,Z|θ)p(Z|X,θ(g))dZQ(θ,θ(g))Zlogp(Z|X,θ)p(Z|X,θ(g))dZH(θ,θ(g))

其中Q的形式和Eq(1)是一样的,如果参数从 θ(g) 迭代到 θ(g+1) ,那么 Q(θ,θ(g+1))Q(θ,θ(g)) ,那么为什么最大化这个Q就可以保证Eq(2)的左边也能增大呢,如果要确保这个关系就需要证明 H(θ,θ(g+1))H(θ,θ(g))
我们知道第g次迭代的时候, θ(g) 使得H值取到最大,即
argmaxθH(θ,θ(g))=argmaxθZlogp(Z|X,θ)p(Z|X,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值