历史:1977,Dempster等人提出
适用:含有隐变量的概率模型 的 参数推断,即对于P(Y,Z|θ),其中Y已知,θ和Z未知,求θ。
缺点:与初值的选择有关;不能保证求得全局最优解。
引子
若概率模型只有观测变量,那么直接可以用最大似然、贝叶斯估计估计参数。
而对于带有隐变量的模型参数,不可使用以上方法。
算法:
初始化θ(0);
until 参数收敛(如,参数变化不大):
E步:
求Q函数:Q(θ,θ(i))=
M步:
求使Q函数取极大值的参数θ作为i+1,即θ(i+1)=argmaxQ(θ,θ(i))
end
理解
1,算法的核心在于Q函数的理解。
2,对于Q函数:
(1)θ是未知的参数,θ(i)是已知的迭代参数集合,初始为θ(0),Y为观测量,Z为隐含量。
(2)Q函数等于已知θ(i)和观测量Y后隐含量Z的期望。
(3)对于Q函数的导出,参见统计学习方法的159页。
目标是极大化L(θ)
而B函数是L(θ)的一个下界,即L(θ)>=B(θ,θ(i))
找到使B函数取极大值的θ作为新的θ(i)即θ(i+1),可使L(θ)也增大。
求argmaxB(θ,θ(i))去掉常数项(带θ(i)的和项)就等于argmaxQ(θ,θ(i))。
以下摘自
PRML读书会第九章 Mixture Models and EM(Kmeans,混合高斯模型,Expectation Maximization)
是我们的目标函数,加入隐藏变量可以写成这种形式:
先初始化模型的参数,由于隐变量无法观测到,我们用参数来得到它的后验
然后呢,我们通过隐藏变量的期望得到新的完整数据的最大似然函数:
以上是E步,M步是求这个似然函数的Q函数的最优解,也就是新的参数:
注意这个Q函数是包含隐变量的完整数据的似然函数
关于收敛
可以规定 参数变化不大之后即为收敛。