摘 要 引入了可处理缺失数据的EM算法。EM算法是一种迭代算法,每一次迭代都能保证似然函数值增加,并且收敛到一个局部极大值。在此基础上,本文也给出了推广的几种EM算法。
关键词 EM算法 ECM算法 ECME算法 MCEC算法
中***分类号:O212.1 文献标识码:A
0前言
EM 算法是 Dempster Laind,Rubin 于 1977 年提出的求参数极大似然估计的一种方法,它可以从非完整数据集中对参数进行 MLE 估计,是一种非常简单实用的学习算法。这种方法可以广泛地应用于处理缺损数据,截尾数据,带有噪声等所谓的不完全数据。本文主要说明了EM算法的基本原理及其应用,再针对它的加速收敛性引出了推广的几种EM算法,或称为广义的EM算法。
1 EM算法原理及其应用
1.1 EM算法的思想及步骤
EM算法的每一次迭代有两步组成:E步(求期望) 和M步(极大化)。一般的,以p( |Y) 表示 的基于观测数据的后验分布密度函数,称为观测后验分布, p( |Y,Z) 表示添加数据Z后得到的关于 的后验分布密度函数,称为添加后验分布,p(Z| ,Y) 表示在给定 和观测数据Y下潜在数据Z的条件分布密度函数。我们的目的是计算观测后验分布p( |Y) 的众数,于是,EM算法如下进行。
E步:将p( |Y,Z) log p( |Y,Z)关于Z的条件分布求期望,从而把Z积掉,即
Q(( | (i),Y)EZ[log p ( | Y, Z) | (i),Y (1)
M步:将Q(( | (i),Y)极大化,即找一个点 (i+1)使
Q(( | (i),Y)=Q(( | (i),Y) (2)
如此形成了一次迭代 (i) (i+1)。将上述E步和M步进行迭代直至|| (i+1) (i)||或||Q( (i+1)| (i),Y) Q( (i)| (i),Y)||充分小时停止。
1.2 EM算法的优缺点
EM算法是一种求参数极大似然估计的迭代算法,在处理不完全数据中有重要应用。EM算法实现简单,数值计算稳定,存储量小,并具有良好的全局收敛性。但是,EM算法收敛速度相当慢,只是次线性的收敛速度,这个缺点防碍了EM算法的应用。现已提出了多种加速EM算法收敛的方法。
2 推广的几种EM算法
2.1 ECM算法
EM 算法流行的原因有二:其一,M 步仅涉及完全数据极大似然,通常计算比较简单;其二,它的收敛是稳定的,因为每次迭代似然函数是不断增加的。但是如果完全数据对数似然的估计本身比较复杂时,EM 算法就不再有吸引力了,因此Meng 和Rubin (1993) 提出了 ECM 算法,这种算法的基本思想是用一系列的计算更加简单的CM 步来代替一个复杂的 M 步。当M步没有显式的表达式时,CM步通常有显式的表达式。即使 CM 步没有显式的表达式 ,但 ECM 算法通常更加稳定,因为它的极大化是在更低维度( dimension) 的参数空间中进行的。
2.2 ECME算法
这种方法是由Liu and Rubin( 1994) 提出的,它是ECM算法的推广,在 ECM 算法中,CM 步是对完全数据对数似然函数的期望进行极大化。同样,可以把这种思想运用到观察数据对数似然上,也就是说,在CM 步上,可以考虑在一定的约束条件下,对对数似然函数进行极大化,因此就产生了ECME算法。
2.3 MCEM算法
而对于EM算法的E步,有时要获得期望的显式表示是不可能的,即使近似计算也很困难,这时用Monte Carlo方法来完成,就是所谓的MonteCarlo EM(MCEM) 方法。MCEM算法比较灵活,但是需要仔细选择模拟容量和确保正确的收敛性准则。我们可以通过增加迭代次数来提高模拟容量。除此以外,由于蒙特卡罗误差,该EM算法不具有单调性,难以估计其收敛性。
3结论
EM算法可以应用于医学研究中,尤其是临床医学中十分常见的一种数据观测形式为重复观测,其特点是在同一实验单位上进行多次重复观测,这个过程由于各种原因经常导致实验观测数据缺失。本文给出了EM算法的基本思想,并给出了几种推广的EM算法,其应用范围更加广泛。
参考文献
[1] 茆诗松,王静龙,濮晓龙.高等数理统计[M].北京:高等教育出版社,1998.
[2] 杨基栋.EM算法理论及其应用[J].安庆师范学院学报(自然科学版),2009,15(4):30-35.
[3] 陈长生,王彤,徐勇勇,尚磊.医学科研中缺失数据的EM估计[J].第四***医大学学报,2002,23(1):59-61.
转载请注明出处学文网 » EM算法及其推广的几种算法