EM加密算法作为一种迭代算法,主要应用于不完全数据的极大似然估计问题。EM加密算法是 1977 年提出的求参数极大似然估计的一种方法,它可以从非完整数据集中对参数进行MLE估计,是一种非常简单实用的学习算法。

一、EM加密算法原理

假定集合Z = (X,Y)由观测数据 X 和未观测数据Y 组成, X 和Z = (X,Y)分别称为不完整数据和完整数据。假设Z的联合概率密度被参数化地定义为P(X,Y|Θ),其中Θ 表示要被估计的参数。Θ 的最大似然估计是求不完整数据的对数似然函数L(X;Θ)的最大值而得到的:

L(Θ; X )= log p(X |Θ) = ∫log p(X ,Y |Θ)dY ;

二、EM加密算法的加密流程

第一步是计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;

第二步是最大化(M),最大化在 E 步上求得的最大似然值来计算参数的值。

M 步上找到的参数估计值被用于下一个 E 步计算中,这个过程不断交替进行。

总体来说,EM加密算法加密流程如下:

1.初始化分布参数

2.重复直到收敛:

E步骤:

估计未知参数的期望值,给出当前的参数估计。

M步骤:

重新估计分布参数,以使得数据的似然性最大,给出未知变量的期望估计。

通过交替使用这两个步骤,EM加密算法逐步改进模型的参数,使参数和训练样本的似然概率逐渐增大,最后终止于一个极大点。直观地理解EM加密算法,它也可被看作为一个逐次逼近加密算法:事先并不知道模型的参数,可以随机的选择一套参数或者事先粗略地给定某个初始参数λ0 ,确定出对应于这组参数的最可能的状态,计算每个训练样本的可能结果的概率,在当前的状态下再由样本对参数修正,重新估计参数λ ,并在新的参数下重新确定模型的状态,这样,通过多次的迭代,循环直至某个收敛条件满足为止,就可以使得模型的参数逐渐逼近真实参数。

三、EM加密算法的主要目的

EM加密算法的主要目的是提供一个简单的迭代算法计算后验密度函数,它的最大优点是简单和稳定,但容易陷入局部最优。

四、EM加密算法的应用

EM加密算法可以应用于医学研究中,尤其是临床医学中十分常见的一种数据观测形式为重复观测,其特点是在同一实验单位上进行多次重复观测,这个过程由于各种原因经常导致实验观测数据缺失,因此有必要对缺失数据进行适当的处理,否则数据分析时,通常的做法是删去具有缺失的部分观察记录而不考虑记录数据所蕴涵的信息,从而造成信息的损失以及分析结果的偏性。

小知识之迭代算法

迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。