X是一个随机向量,我们希望找到
使得
取得最大值,这就是关于
的最大似然估计。
为了方便估计
,我们一般引入log似然函数:
EM算法是一个迭代的过程,假设第n次迭代当前
的估计是
。由于我们的目标是最大化
,我们希望新一轮的更新
使得
等价的,我们希望最大化他们的不同:
现在我们考虑隐变量的问题,隐变量可能是没有观测到的或者缺失的变量,有时为了计算最大似然函数更容易解决也会引入隐变量,因为可以利用EM框架来方便计算。我们假设隐变量用Z来表示,那么
我们重写一下
得到:
利用Jensen's不定式:
其中常量
并且
其中由于
所以有:
我们可以写作:
为了方便,我们定义:
这样我们得到
现在我们得到了似然函数
的下界
另外我们观察到:
所以当
时,
所以任何能够增加
的
都会增加
所以EM算法选择最大化
最终我们得到:
去掉相对于
的常量得到:
所以EM包含以下迭代步骤:
1、E-step: 得到条件期望
2、M-step:求解
最大化该条件期望
期望最大(EM)算法推导
猜你喜欢
转载自fuliang.iteye.com/blog/1621633
今日推荐
周排行