EM算法及其推广

EM算法及其推广


EM是一种迭代算法,用于 含有隐含量概率模型极大似然估计,或 极大后验概率估计。EM算法的每次迭代由两步组成: E步求期望;M步求极大。所以这一算法称为期望极大算法,简称EM算法。

EM算法的引入

概率模型有时既含有观测变量,又含有隐变量或潜在变量。当模型含有隐变量时,就不能简单地使用这些估计方法。EM 算法就是含有隐变量的概率模型参数的估计似然估计法。
将观测数据表示为 Y = { Y 1 , Y 2 , . . . , Y n } Y=\lbrace Y_1,Y_2,...,Y_n \rbrace Y={Y1,Y2,...,Yn},未观测数据表示为 Z = ( Z 1 , Z 2 , . . . , Z n ) T Z=(Z_1,Z_2,...,Z_n)^T Z=(Z1,Z2,...,Zn)T,则观测数据的似然函数为 P ( Y ∣ θ ) = ∑ Z P ( Z ∣ θ ) P ( Y ∣ Z , θ ) P(Y|\theta)=\sum_ZP(Z|\theta)P(Y|Z,\theta) P(Yθ)=ZP(Zθ)P(YZ,θ)考虑求模型参数 θ = ( π , p , q ) \theta=(\pi,p,q) θ=(π,p,q)的极大似然估计,即 θ ^ = arg max ⁡ θ l o g P ( Y ∣ θ ) \hat{\theta}=\argmax_{\theta}logP(Y|\theta) θ^=θargmaxlogP(Yθ)这个问题没有解析解,只能通过迭代的方法求解。EM算法就是可以用于求解这个问题的一种迭代算法
算法如下:
输入:观测变量数据 Y Y Y,隐变量数据 Z Z Z,联合分布 P ( Y , Z ∣ θ ) P(Y,Z|\theta) P(Y,Zθ),条件分布 P ( Z ∣ Y , θ ) P(Z|Y,\theta) P(ZY,θ)
输出:模型参数 θ \theta θ

  1. 选择参数初值 θ ( 0 ) \theta(0) θ(0),开始迭代
  2. E步:记 θ ( i ) \theta(i) θ(i)为第 i i i次迭代参数 θ \theta θ的估计值,在第 i + 1 i+1 i+1次迭代的E步,计算 Q ( θ , θ ( i ) ) = E Z [ l o g P ( Y , Z ∣ θ ) ∣ Y , θ ( i ) ] = ∑ Z l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) Q(\theta,\theta^{(i)})=E_Z[logP(Y,Z|\theta)|Y,\theta^{(i)}]=\sum_ZlogP(Y,Z|\theta)P(Z|Y,\theta^{(i)}) Q(θ,θ(i))=EZ[logP(Y,Zθ)Y,θ(i)]=ZlogP(Y,Zθ)P(ZY,θ(i))这里, P ( Z ∣ Y , θ ( i ) ) P(Z|Y,\theta^{(i)}) P(ZY,θ(i))是在给定观测数据 Y Y Y和当前的参数估计 θ ( i ) \theta^{(i)} θ(i)下隐变量数据 Z Z Z的条件概率分布
  3. M步:求使 Q ( θ , θ ( i ) ) Q(\theta,\theta^{(i)}) Q(θ,θ(i))极大化的 θ \theta θ,确定第 i + 1 i+1 i+1次迭代的参数的估计值 θ ( i + 1 ) \theta^{(i+1)} θ(i+1) θ ( i + 1 ) = arg max ⁡ θ Q ( θ , θ ( i ) ) \theta^{(i+1)}=\argmax_{\theta}Q(\theta,\theta^{(i)}) θ(i+1)=θargmaxQ(θ,θ(i))
  4. 重复第2步和第3步,直到收敛。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值