EM 算法是一种重要的解决含有隐变量问题的参数估计方法
算法释义
EM算法 是用来解决含有隐变量的概率模型参数的极大似然估计,或者叫极大后验概率估计。它是一种迭代算法,每次迭代由两步组成:E 步,求期望,M 步,求极大。
算法步骤
输入:观测变量数据 Y,隐变量数据 Z,联合分布 P(Y, Z | θ),条件分布 P(Z | Y, θ)
输出:模型参数 θ(T)
(1) 初始化模型参数:θ(0)
(2) 迭代求解,直至收敛,t = 0,1,…,T:
a. E步,求期望:
b. M步,求极大:
EM 算法的导出
极大似然估计的目标是极大化观测数据 Y 关于参数 θ 的似然函数,对其取对数,那么就是要极大化对数似然函数,即极大化 L(θ) :
如果存在某一轮迭代的中间值 θ(t),则:
我们把不等式右边的这个函数成为 B(θ, θ(t)) 函数,那么显然 B(θ, θ(t)) 是 L(θ) 的一个下界,换句话说,如果 θ 尽可能使 B(θ, θ(t)) 增大,那么 L(θ) 也会增大,所以下面极大化 B(θ, θ(t)):
EM 算法是不断求解下界的极大化逼近求解对数似然函数极大化的算法,因此 EM 算法不能保证找到全局最优解。
EM 算法的收敛性
pass
参考资料
《统计学习方法》,李航