个人学习笔记(十一)EM算法及其推广

       当模型含有隐变量时,无法使用极大似然估计法或贝叶斯估计法估计模型参数,这时适合使用EM算法。EM算法就是含有隐变量的概率模型参数的极大似然估计法,或极大后验概率估计法。EM算法的每次迭代由两步组成:E步,求期望(expectation);M步,求极大(maximization)。所以这一算法称为期望极大算法(expectation maximization algorithm),简称EM算法。

1、EM算法的引入

       EM算法通过迭代求 L ( θ ) = l o g P ( Y ∣ θ ) L(\theta)=logP(Y|\theta) L(θ)=logP(Yθ)的极大似然估计。在介绍EM算法之前,需要先定义一个 Q Q Q函数( Q Q Q function),这是EM算法的核心。
       完全数据的对数似然函数 l o g P ( Y , Z ∣ θ ) logP(Y,Z|\theta) logP(Y,Zθ)关于条件概率分布 P ( Z ∣ Y , θ ( i ) ) P(Z|Y,\theta^{(i)}) P(ZY,θ(i))的期望称为 Q Q Q函数,即
Q ( θ , θ ( i ) ) = E Z [ l o g P ( Y , Z ∣ θ ) ∣ Y , θ ( i ) ] Q(\theta,\theta^{(i)})=E_Z[logP(Y,Z|\theta)|Y,\theta^{(i)}] Q(θ,θ(i))=EZ[logP(Y,Zθ)Y,θ(i)]       下面是EM算法的计算过程:
       首先选择参数的初值 θ ( 0 ) \theta^{(0)} θ(0),进入下面的迭代。记 θ ( i ) \theta^{(i)} θ(i)为第 i i i次迭代参数 θ \theta θ的估计值,在第 i + 1 i+1 i+1次迭代的E步中,计算 Q Q Q函数
Q ( θ , θ ( i ) ) = E Z [ l o g P ( Y , Z ∣ θ ) ∣ Y , θ ( i ) ] = ∑ Z l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) Q(\theta,\theta^{(i)})=E_Z[logP(Y,Z|\theta)|Y,\theta^{(i)}]=\sum_ZlogP(Y,Z|\theta)P(Z|Y,\theta^{(i)}) Q(θ,θ(i))=EZ[logP(Y,Zθ)Y,θ(i)]=ZlogP(Y,Zθ)P(ZY,θ(i))       在M步中,求使 Q Q Q函数极大化的 θ \theta θ,作为第 i + 1 i+1 i+1次迭代的参数估计值 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)
θ ( i + 1 ) = arg ⁡ max ⁡ θ Q ( θ , θ ( i ) ) \theta^{(i+1)}=\arg\max_{\theta}Q(\theta,\theta^{(i)}) θ(i+1)=argθmaxQ(θ,θ(i))       重复上面的步骤直到收敛。
       需要注意的是,EM算法对初值是敏感的,每次迭代实际在求 Q Q Q函数(E步)及其极大(M步)。
       那么,为什么上面的算法能够求解模型参数呢?该如何理解它呢?我们可以用近似求解对数似然函数的极大化问题来导出EM算法。
       首先,我们面对一个含有隐变量的概率模型,目标是极大化不完全数据 Y Y Y关于参数 θ \theta θ的对数似然函数,即极大化
L ( θ ) = l o g P ( Y ∣ θ ) L(\theta)=logP(Y|\theta) L(θ)=logP(Yθ)       由于概率模型含有隐变量 Z Z Z,因此似然函数可写成
P ( Y ∣ θ ) = ∑ Z P ( Y , Z ∣ θ ) = ∑ Z P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P(Y|\theta)=\sum_ZP(Y,Z|\theta)=\sum_ZP(Y|Z,\theta)P(Z|\theta) P(Yθ)=ZP(Y,Zθ)=ZP(YZ,θ)P(Zθ)       则对数似然函数便为
L ( θ ) = l o g ∑ Z P ( Y ∣ Z , θ ) P ( Z ∣ θ ) L(\theta)=log\sum_ZP(Y|Z,\theta)P(Z|\theta) L(θ)=logZP(YZ,θ)P(Zθ)       为了极大化上面的对数似然函数,可以考虑迭代方法,保证每一代所得的 θ \theta θ能逐步逼近 L ( θ ) L(\theta) L(θ)的最大值,即在第 i i i代时,需要求解新的 θ \theta θ使 L ( θ ) > L ( θ ( i ) ) L(\theta)>L(\theta^{(i)}) L(θ)>L(θ(i))。为此,考虑两者的差
L ( θ ) − L ( θ ( i ) ) = l o g ∑ Z P ( Y ∣ Z , θ ) P ( Z ∣ θ ) − l o g P ( Y ∣ θ ( i ) ) L(\theta)-L(\theta^{(i)})=log\sum_ZP(Y|Z,\theta)P(Z|\theta)-logP(Y|\theta^{(i)}) L(θ)L(θ(i))=logZP(YZ,θ)P(Zθ)logP(Yθ(i))       将 L ( θ ) L(\theta) L(θ)变换一下,令
L ( θ ) = l o g ∑ Z P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) L(\theta)=log\sum_ZP(Z|Y,\theta^{(i)})\frac{P(Y|Z,\theta)P(Z|\theta)}{P(Z|Y,\theta^{(i)})} L(θ)=logZP(ZY,θ(i))P(ZY,θ(i))P(YZ,θ)P(Zθ)       用Jensen不等式将 l o g log log移进 ∑ Z \sum_Z Z内的系数右侧,公式为
l o g ∑ j λ j y j ≥ ∑ j λ j l o g y j ,   其 中 λ j ≥ 0 , ∑ j λ j = 1 log\sum_j\lambda_jy_j\ge\sum_j\lambda_jlogy_j, 其中\lambda_j\ge0,\sum_j\lambda_j=1 logjλjyjjλjlogyj, λj0,jλj=1       得
L ( θ ) ≥ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) L(\theta)\ge\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Y|Z,\theta)P(Z|\theta)}{P(Z|Y,\theta^{(i)})} L(θ)ZP(ZY,θ(i))logP(ZY,θ(i))P(YZ,θ)P(Zθ)       由于 L ( θ ( i ) ) L(\theta^{(i)}) L(θ(i))的公式与 Z Z Z无关,可写作
L ( θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ θ ( i ) ) L(\theta^{(i)})=\sum_ZP(Z|Y,\theta^{(i)})logP(Y|\theta^{(i)}) L(θ(i))=ZP(ZY,θ(i))logP(Yθ(i))       两式相减,得
L ( θ ) − L ( θ ( i ) ) ≥ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) P ( Y , θ ( i ) ) L(\theta)-L(\theta^{(i)})\ge\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Y|Z,\theta)P(Z|\theta)}{P(Z|Y,\theta^{(i)})P(Y,\theta^{(i)})} L(θ)L(θ(i))ZP(ZY,θ(i))logP(ZY,θ(i))P(Y,θ(i))P(YZ,θ)P(Zθ)       为表述方便,引入 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))的表达式
B ( θ , θ ( i ) ) = L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) P ( Y , θ ( i ) ) B(\theta,\theta^{(i)})=L(\theta^{(i)})+\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Y|Z,\theta)P(Z|\theta)}{P(Z|Y,\theta^{(i)})P(Y,\theta^{(i)})} B(θ,θ(i))=L(θ(i))+ZP(ZY,θ(i))logP(ZY,θ(i))P(Y,θ(i))P(YZ,θ)P(Zθ)       因此有
L ( θ ) ≥ B ( θ , θ ( i ) ) L(\theta)\ge B(\theta,\theta^{(i)}) L(θ)B(θ,θ(i))       同时,当 θ = θ ( i ) \theta=\theta^{(i)} θ=θ(i)时,有
B ( θ ( i ) , θ ( i ) ) = L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ( i ) ) P ( Y , Z ∣ θ ( i ) ) = L ( θ ( i ) ) B(\theta^{(i)},\theta^{(i)})=L(\theta^{(i)})+\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta^{(i)})}{P(Y,Z|\theta^{(i)})}=L(\theta^{(i)}) B(θ(i),θ(i))=L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ(i))=L(θ(i))       因此,任何可以使 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))增大的 θ \theta θ,都能使 L ( θ ) L(\theta) L(θ)增大,为此我们可以选择令 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))最大的 θ \theta θ作为 θ ( i + 1 ) \theta^{(i+1)} θ(i+1),即
θ ( i + 1 ) = arg ⁡ max ⁡ θ B ( θ , θ ( i ) ) \theta^{(i+1)}=\arg\max_{\theta}B(\theta,\theta^{(i)}) θ(i+1)=argθmaxB(θ,θ(i))       将 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))中与自变量 θ \theta θ无关的项去除后,可得
θ ( i + 1 ) = arg ⁡ max ⁡ θ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ Z , θ ) P ( Z ∣ θ ) \theta^{(i+1)}=\arg\max_{\theta}\sum_ZP(Z|Y,\theta^{(i)})logP(Y|Z,\theta)P(Z|\theta) θ(i+1)=argθmaxZP(ZY,θ(i))logP(YZ,θ)P(Zθ)       合并 P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P(Y|Z,\theta)P(Z|\theta) P(YZ,θ)P(Zθ)
θ ( i + 1 ) = arg ⁡ max ⁡ θ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) \theta^{(i+1)}=\arg\max_\theta\sum_ZP(Z|Y,\theta^{(i)})logP(Y,Z|\theta) θ(i+1)=argθmaxZP(ZY,θ(i))logP(Y,Zθ)       这正是 Q Q Q函数 Q ( θ , θ ( i ) ) Q(\theta,\theta^{(i)}) Q(θ,θ(i))的表达式。
       因此,在每一次迭代中极大化 Q Q Q函数,等价于极大化 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i)),也就是求取对数似然函数 L ( θ ) L(\theta) L(θ)下界的极大值。这样,EM算法在迭代中便保证了对数似然函数 L ( θ ) L(\theta) L(θ)的增加,但无法保证最后找到全局最优值。

2、EM算法的收敛性

       关于EM算法的收敛性,有两个定理。
       定理1: P ( Y ∣ θ ( i ) ) P(Y|\theta^{(i)}) P(Yθ(i))是单调递增的,即
P ( Y ∣ θ ( i + 1 ) ) ≥ P ( Y ∣ θ ( i ) ) P(Y|\theta^{(i+1)})\ge P(Y|\theta^{(i)}) P(Yθ(i+1))P(Yθ(i))       下面证明这一定理。由于对数似然函数 l o g P ( Y ∣ θ ) logP(Y|\theta) logP(Yθ) Z Z Z无关,可变换其形态,令
l o g P ( Y ∣ θ ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y ∣ θ ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ) logP(Y|\theta)=\sum_ZP(Z|Y,\theta^{(i)})logP(Y|\theta)=\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Z|Y,\theta)} logP(Yθ)=ZP(ZY,θ(i))logP(Yθ)=ZP(ZY,θ(i))logP(ZY,θ)P(Y,Zθ)       因此,对数似然函数为
l o g P ( Y ∣ θ ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g [ P ( Y , Z ∣ θ ) − P ( Z ∣ Y , θ ) ] logP(Y|\theta)=\sum_ZP(Z|Y,\theta^{(i)})log[P(Y,Z|\theta)-P(Z|Y,\theta)] logP(Yθ)=ZP(ZY,θ(i))log[P(Y,Zθ)P(ZY,θ)]       令
Q ( θ , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) Q(\theta,\theta^{(i)})=\sum_ZP(Z|Y,\theta^{(i)})logP(Y,Z|\theta) Q(θ,θ(i))=ZP(ZY,θ(i))logP(Y,Zθ) H ( θ , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Z ∣ Y , θ ) H(\theta,\theta^{(i)})=\sum_ZP(Z|Y,\theta^{(i)})logP(Z|Y,\theta) H(θ,θ(i))=ZP(ZY,θ(i))logP(ZY,θ)       则对数似然函数可写作
l o g P ( Y ∣ θ ) = Q ( θ , θ ( i ) ) − H ( θ , θ ( i ) ) logP(Y|\theta)=Q(\theta,\theta^{(i)})-H(\theta,\theta^{(i)}) logP(Yθ)=Q(θ,θ(i))H(θ,θ(i))       接着便可开始证明下式成立
l o g P ( Y ∣ θ ( i + 1 ) ) ≥ l o g P ( Y ∣ θ ( i ) ) logP(Y|\theta^{(i+1)})\ge logP(Y|\theta^{(i)}) logP(Yθ(i+1))logP(Yθ(i))       由于EM算法的每次迭代均为求取 Q Q Q函数的极大值,因此必有
Q ( θ ( i + 1 ) , θ ( i ) ) ≥ Q ( θ ( i ) , θ ( i ) ) Q(\theta^{(i+1)},\theta^{(i)})\ge Q(\theta^{(i)},\theta^{(i)}) Q(θ(i+1),θ(i))Q(θ(i),θ(i))       接着看 H H H函数
H ( θ ( i + 1 ) , θ ( i ) ) − H ( θ ( i ) , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Z ∣ Y , θ ( i + 1 ) ) P ( Z ∣ Y , θ ( i ) ) H(\theta^{(i+1)},\theta^{(i)})-H(\theta^{(i)},\theta^{(i)})=\sum_ZP(Z|Y,\theta^{(i)})log\frac{P(Z|Y,\theta^{(i+1)})}{P(Z|Y,\theta^{(i)})} H(θ(i+1),θ(i))H(θ(i),θ(i))=ZP(ZY,θ(i))logP(ZY,θ(i))P(ZY,θ(i+1))       根据Jensen不等式
H ( θ ( i + 1 ) , θ ( i ) ) − H ( θ ( i ) , θ ( i ) ) ≤ l o g ∑ Z P ( Z ∣ Y , θ ( i ) ) P ( Z ∣ Y , θ ( i + 1 ) ) P ( Z ∣ Y , θ ( i ) ) H(\theta^{(i+1)},\theta^{(i)})-H(\theta^{(i)},\theta^{(i)})\le log\sum_ZP(Z|Y,\theta^{(i)})\frac{P(Z|Y,\theta^{(i+1)})}{P(Z|Y,\theta^{(i)})} H(θ(i+1),θ(i))H(θ(i),θ(i))logZP(ZY,θ(i))P(ZY,θ(i))P(ZY,θ(i+1))       因此可得
H ( θ ( i + 1 ) , θ ( i ) ) − H ( θ ( i ) , θ ( i ) ) ≤ l o g ∑ Z P ( Z ∣ Y , θ ( i + 2 ) ) = l o g 1 = 0 H(\theta^{(i+1)},\theta^{(i)})-H(\theta^{(i)},\theta^{(i)})\le log\sum_ZP(Z|Y,\theta^{(i+2)})=log1=0 H(θ(i+1),θ(i))H(θ(i),θ(i))logZP(ZY,θ(i+2))=log1=0       这样,便证明了
l o g P ( Y ∣ θ ( i + 1 ) ) − l o g P ( Y ∣ θ ( i ) ) ≥ 0 logP(Y|\theta^{(i+1)})-logP(Y|\theta{(i)})\ge0 logP(Yθ(i+1))logP(Yθ(i))0       即
P ( Y ∣ θ ( i + 1 ) ) ≥ P ( Y ∣ θ ( i ) ) P(Y|\theta^{(i+1)})\ge P(Y|\theta^{(i)}) P(Yθ(i+1))P(Yθ(i))       接下来是第二个定理。定理2:如果 P ( Y ∣ θ ) P(Y|\theta) P(Yθ)有上界,则 L ( θ ( i ) ) = l o g P ( Y ∣ θ ( i ) ) L(\theta^{(i)})=logP(Y|\theta^{(i)}) L(θ(i))=logP(Yθ(i))收敛到某一值 L ∗ L^* L,在一定条件下EM算法得到的 θ ( i ) \theta^{(i)} θ(i)收敛值 θ ∗ \theta^* θ L ( θ ) L(\theta) L(θ)的稳定点。
       这个定理就不证明了。定理只能保证参数估计序列 θ ( i ) \theta^{(i)} θ(i)收敛到对数似然函数序列 L ( θ ( i ) ) L(\theta^{(i)}) L(θ(i))的稳定点,不能保证收敛到极大值点。

3、EM算法在高斯混合模型学习中的应用

       最后两节只叙述,不证明。
       首先介绍高斯混合模型(Gaussian misture model),高斯混合模型是指具有如下概率分布的模型
P ( y ∣ θ ) = ∑ k = 1 K α k ϕ ( y ∣ θ k ) P(y|\theta)=\sum_{k=1}^K\alpha_k\phi(y|\theta_k) P(yθ)=k=1Kαkϕ(yθk)       其中, α k \alpha_k αk是系数,满足 α k ≥ 0 , ∑ k = 1 K α k = 1 \alpha_k\ge0,\sum_{k=1}^K\alpha_k=1 αk0,k=1Kαk=1 ϕ ( y ∣ θ k ) \phi(y|\theta_k) ϕ(yθk)是高斯分布密度, θ k = ( μ k , σ k 2 ) \theta_k=(\mu_k,\sigma_k^2) θk=(μk,σk2),具体为
ϕ ( y ∣ θ k ) = 1 2 π σ k e − ( y − μ k ) 2 2 σ k 2 \phi(y|\theta_k)=\frac{1}{\sqrt{2\pi\sigma_k}}e^{-\frac{(y-\mu_k)^2}{2\sigma_k^2}} ϕ(yθk)=2πσk 1e2σk2(yμk)2       接着介绍高斯混合模型参数估计的EM算法。有 N N N个观测数据及 K K K个分模型,首先取参数的初始值开始迭代。
       在E步,计算分模型 k k k对观测数据 y j y_j yj的响应度
γ ^ j k = α k ϕ ( y j ∣ θ k ) ∑ k = 1 K α k ϕ ( y j ∣ θ k ) ,   j = 1 , 2 , ⋯   , N ;   k = 1 , 2 , ⋯   , K \hat\gamma_{jk}=\frac{\alpha_k\phi(y_j|\theta_k)}{\sum_{k=1}^K\alpha_k\phi(y_j|\theta_k)}, j=1,2,\cdots,N; k=1,2,\cdots,K γ^jk=k=1Kαkϕ(yjθk)αkϕ(yjθk), j=1,2,,N; k=1,2,,K       在M步,计算新一轮的模型参数
μ ^ k = ∑ j = 1 N γ j k ^ y j ∑ j = 1 N γ ^ j k ,   k = 1 , 2 , ⋯   , K \hat\mu_k=\frac{\sum_{j=1}^N\hat{\gamma_{jk}}y_j}{\sum_{j=1}^N\hat\gamma_{jk}}, k=1,2,\cdots,K μ^k=j=1Nγ^jkj=1Nγjk^yj, k=1,2,,K σ ^ k 2 = ∑ j = 1 N γ ^ j k ( y j − μ ^ k ) 2 ∑ j = 1 N γ ^ j k ,   k = 1 , 2 , ⋯   , K \hat\sigma_k^2=\frac{\sum_{j=1}^N\hat\gamma_{jk}(y_j-\hat\mu_k)^2}{\sum_{j=1}^N\hat\gamma_{jk}}, k=1,2,\cdots,K σ^k2=j=1Nγ^jkj=1Nγ^jk(yjμ^k)2, k=1,2,,K α ^ k = ∑ j = 1 N γ ^ j k N ,   k = 1 , 2 , ⋯   , K \hat\alpha_k=\frac{\sum_{j=1}^N\hat\gamma_{jk}}{N}, k=1,2,\cdots,K α^k=Nj=1Nγ^jk, k=1,2,,K       重复上面两步直至收敛。

4、EM算法的推广

       EM算法还可以解释为 F F F函数( F F F function)的极大-极大算法(maximization-maximization algorithm),基于这个解释有广义期望极大(generalized expectation maximization, GEM)算法等推广。
       首先引进 F F F函数。假设隐变量 Z Z Z的概率分布为 P ~ ( Z ) \widetilde{P}(Z) P (Z),定义 F F F函数如下
F ( P ~ , θ ) = E P ~ [ l o g P ( Y , Z ∣ θ ) ] + H ( P ~ ) F(\widetilde P,\theta)=E_{\widetilde P}[logP(Y,Z|\theta)]+H(\widetilde P) F(P ,θ)=EP [logP(Y,Zθ)]+H(P )       式中, H ( P ~ ) H(\widetilde P) H(P )是分布 P ~ ( Z ) \widetilde P(Z) P (Z)的熵,即
H ( P ~ ) = − E P ~ l o g P ~ ( Z ) H(\widetilde P)=-E_{\widetilde P}log\widetilde P(Z) H(P )=EP logP (Z)       引进 F F F函数的概念后,便可给出下面四条定理。
       定理1:对于固定的 θ \theta θ,存在唯一的分布 P ~ θ \widetilde P_\theta P θ使 F ( P ~ , θ ) F(\widetilde P,\theta) F(P ,θ)极大化,这时的 P ~ θ \widetilde P_\theta P θ
P ~ θ ( Z ) = P ( Z ∣ Y , θ ) \widetilde P_\theta(Z)=P(Z|Y,\theta) P θ(Z)=P(ZY,θ)       引理2:若 P ~ θ ( Z ) = P ( Z ∣ Y , θ ) \widetilde P_\theta(Z)=P(Z|Y,\theta) P θ(Z)=P(ZY,θ),则 F F F函数为
F ( P ~ , θ ) = l o g P ( Y ∣ θ ) F(\widetilde P,\theta)=logP(Y|\theta) F(P ,θ)=logP(Yθ)       定理3:如果 F ( P ~ , θ ) F(\widetilde P,\theta) F(P ,θ) P ~ ∗ \widetilde P^* P θ ∗ \theta^* θ有局部极大值,那么 L ( θ ) L(\theta) L(θ)也在 θ ∗ \theta^* θ有局部极大值,这个结论对全局最大值也使用。
       定理4:EM算法的一次迭代,可由 F F F函数的极大-极大算法实现。在第 i + 1 i+1 i+1次迭代的两步为:对固定的 θ ( i ) \theta^{(i)} θ(i),求 P ~ ( i + 1 ) \widetilde P^{(i+1)} P (i+1)使 F ( P ~ , θ ( i ) ) F(\widetilde P,\theta^{(i)}) F(P ,θ(i))极大化;对固定的 P ~ ( i + 1 ) \widetilde P^{(i+1)} P (i+1),求 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)使 F ( P ~ ( i + 1 ) , θ ) F(\widetilde P^{(i+1)},\theta) F(P (i+1),θ)极大化。
       从上面的定理可知,由EM算法与F函数的极大-极大算法得到的 θ ( i ) \theta^{(i)} θ(i)是一致的。这样便有了EM算法的推广,GEM算法。
       在GEM算法1中,先初始化参数 θ ( 0 ) \theta^{(0)} θ(0),在第 i + 1 i+1 i+1次迭代先求 P ~ ( i + 1 ) \widetilde P^{(i+1)} P (i+1)使 F ( P ~ , θ ( i ) ) F(\widetilde P,\theta^{(i)}) F(P ,θ(i))极大化,再求 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)使 F ( P ~ ( i + 1 ) , θ ) F(\widetilde P^{(i+1)},\theta) F(P (i+1),θ)极大化。
       在GME算法2中,考虑到有时候求 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)使 Q ( θ , θ ( i ) ) Q(\theta,\theta^{(i)}) Q(θ,θ(i))极大化比较困难,于是在原本EM算法的基础上放低要求,在M步中求取 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)使 Q ( θ ( i + 1 ) , θ ( i ) ) ≥ Q ( θ ( i ) , θ ( i ) ) Q(\theta^{(i+1)},\theta^{(i)})\ge Q(\theta^{(i)},\theta^{(i)}) Q(θ(i+1),θ(i))Q(θ(i),θ(i))
       在GME算法3中,当参数 θ \theta θ的维数为 d d d时,将EM算法的M步分解为 d d d次条件极大化,每次只改变参数向量的一个分量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值