EM加密算法

EM加密算法作為一種迭代算法,主要應(yīng)用于不完全數(shù)據(jù)的極大似然估計(jì)問(wèn)題。EM加密算法是 1977 年提出的求參數(shù)極大似然估計(jì)的一種方法,它可以從非完整數(shù)據(jù)集中對(duì)參數(shù)進(jìn)行MLE估計(jì),是一種非常簡(jiǎn)單實(shí)用的學(xué)習(xí)算法。

一、EM加密算法原理

假定集合Z = (X,Y)由觀測(cè)數(shù)據(jù) X 和未觀測(cè)數(shù)據(jù)Y 組成, X 和Z = (X,Y)分別稱為不完整數(shù)據(jù)和完整數(shù)據(jù)。假設(shè)Z的聯(lián)合概率密度被參數(shù)化地定義為P(X,Y|Θ),其中Θ 表示要被估計(jì)的參數(shù)。Θ 的最大似然估計(jì)是求不完整數(shù)據(jù)的對(duì)數(shù)似然函數(shù)L(X;Θ)的最大值而得到的:

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

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

第一步是計(jì)算期望(E),利用對(duì)隱藏變量的現(xiàn)有估計(jì)值,計(jì)算其最大似然估計(jì)值;

第二步是最大化(M),最大化在 E 步上求得的最大似然值來(lái)計(jì)算參數(shù)的值。

M 步上找到的參數(shù)估計(jì)值被用于下一個(gè) E 步計(jì)算中,這個(gè)過(guò)程不斷交替進(jìn)行。

總體來(lái)說(shuō),EM加密算法加密流程如下:

1.初始化分布參數(shù)

2.重復(fù)直到收斂:

E步驟:

估計(jì)未知參數(shù)的期望值,給出當(dāng)前的參數(shù)估計(jì)。

M步驟:

重新估計(jì)分布參數(shù),以使得數(shù)據(jù)的似然性最大,給出未知變量的期望估計(jì)。

通過(guò)交替使用這兩個(gè)步驟,EM加密算法逐步改進(jìn)模型的參數(shù),使參數(shù)和訓(xùn)練樣本的似然概率逐漸增大,最后終止于一個(gè)極大點(diǎn)。直觀地理解EM加密算法,它也可被看作為一個(gè)逐次逼近加密算法:事先并不知道模型的參數(shù),可以隨機(jī)的選擇一套參數(shù)或者事先粗略地給定某個(gè)初始參數(shù)λ0 ,確定出對(duì)應(yīng)于這組參數(shù)的最可能的狀態(tài),計(jì)算每個(gè)訓(xùn)練樣本的可能結(jié)果的概率,在當(dāng)前的狀態(tài)下再由樣本對(duì)參數(shù)修正,重新估計(jì)參數(shù)λ ,并在新的參數(shù)下重新確定模型的狀態(tài),這樣,通過(guò)多次的迭代,循環(huán)直至某個(gè)收斂條件滿足為止,就可以使得模型的參數(shù)逐漸逼近真實(shí)參數(shù)。

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

EM加密算法的主要目的是提供一個(gè)簡(jiǎn)單的迭代算法計(jì)算后驗(yàn)密度函數(shù),它的最大優(yōu)點(diǎn)是簡(jiǎn)單和穩(wěn)定,但容易陷入局部最優(yōu)。

四、EM加密算法的應(yīng)用

EM加密算法可以應(yīng)用于醫(yī)學(xué)研究中,尤其是臨床醫(yī)學(xué)中十分常見(jiàn)的一種數(shù)據(jù)觀測(cè)形式為重復(fù)觀測(cè),其特點(diǎn)是在同一實(shí)驗(yàn)單位上進(jìn)行多次重復(fù)觀測(cè),這個(gè)過(guò)程由于各種原因經(jīng)常導(dǎo)致實(shí)驗(yàn)觀測(cè)數(shù)據(jù)缺失,因此有必要對(duì)缺失數(shù)據(jù)進(jìn)行適當(dāng)?shù)奶幚?,否則數(shù)據(jù)分析時(shí),通常的做法是刪去具有缺失的部分觀察記錄而不考慮記錄數(shù)據(jù)所蘊(yùn)涵的信息,從而造成信息的損失以及分析結(jié)果的偏性。

小知識(shí)之迭代算法

迭代算法是用計(jì)算機(jī)解決問(wèn)題的一種基本方法。它利用計(jì)算機(jī)運(yùn)算速度快、適合做重復(fù)性操作的特點(diǎn),讓計(jì)算機(jī)對(duì)一組指令(或一定步驟)進(jìn)行重復(fù)執(zhí)行,在每次執(zhí)行這組指令(或這些步驟)時(shí),都從變量的原值推出它的一個(gè)新值。