EM算法原理介绍

1. 引言

    EM算法是Dempster等人在1977年提出来的一种迭代算法,用于含有隐变量的概率模型参数的极大似然估计或极大后验概率估计。EM算法的每次迭代由两步组成:E步,求期望;M步,求极大,因此,该算法也被称为期望极大算法,简称EM算法。

2. EM算法原理介绍

2.1 EM算法的原理

    一般地,用 Y Y Y表示观测随机变量的数据, Z Z Z表示隐随机变量的数据, Y Y Y Z Z Z连在一起称为完全数据,观测数据 Y Y Y又称为不完全数据。假设给定观测数据 Y Y Y,其概率分布是 P ( Y ∣ θ ) P(Y | \theta) P(Yθ),其中 θ \theta θ是需要估计的模型参数,那么不完全数据 Y Y Y的似然函数是 P ( Y ∣ θ ) P(Y | \theta) P(Yθ),对数似然函数是 L ( θ ) = log ⁡ P ( Y ∣ θ ) L(\theta)=\log P(Y | \theta) L(θ)=logP(Yθ),假设 Y Y Y Z Z Z的联合概率分布是 P ( Y , Z ∣ θ ) P(Y, Z | \theta) P(Y,Zθ),那么完全数据对数似然函数是 log ⁡ P ( Y , Z ∣ θ ) \log P(Y, Z | \theta) logP(Y,Zθ)

    EM算法就是通过极大化不完全数据 Y Y Y的对数似然函数来对参数 θ \theta θ进行估计,即极大化:
L ( θ ) = log ⁡ P ( Y ∣ θ ) = log ⁡ ∑ Z P ( Y , Z ∣ θ ) = log ⁡ ( ∑ Z P ( Y ∣ Z , θ ) P ( Z ∣ θ ) ) \begin{aligned} L(\theta) &=\log P(Y | \theta)=\log \sum_{Z} P(Y, Z | \theta) \\ &=\log \left(\sum_{Z} P(Y | Z, \theta) P(Z | \theta)\right) \end{aligned} L(θ)=logP(Yθ)=logZP(Y,Zθ)=log(ZP(YZ,θ)P(Zθ))由于上式中含有未观测的数据和求和的对数,因此,没法直接对参数进行极大化估计。事实上,EM算法是通过迭代逐步近似极大化 L ( θ ) L(\theta) L(θ),假设在第 i i i次迭代后 θ \theta θ的估计值是 θ ( i ) \theta^{(i)} θ(i),我们希望估计值 θ \theta θ能使 L ( θ ) L(\theta) L(θ)增加,即 L ( θ ) > L ( θ ( i ) ) L(\theta)>L\left(\theta^{(i)}\right) L(θ)>L(θ(i)),并逐步达到极大值,因此,可以直接考虑两者的差:
L ( θ ) − L ( θ ( i ) ) = log ⁡ ( ∑ Z P ( Y ∣ Z , θ ) P ( Z ∣ θ ) ) − log ⁡ P ( Y ∣ θ ( i ) ) L(\theta)-L\left(\theta^{(i)}\right)=\log \left(\sum_{Z} P(Y | Z, \theta) P(Z | \theta)\right)-\log P\left(Y | \theta^{(i)}\right) L(θ)L(θ(i))=log(ZP(YZ,θ)P(Zθ))logP(Yθ(i))利用Jensen不等式可以得到其下界:
L ( θ ) − L ( θ ( i ) ) = log ⁡ ( ∑ Z P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) ) − log ⁡ P ( Y ∣ θ ( i ) ) ⩾ ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) − log ⁡ P ( Y ∣ θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ θ ( i ) ) \begin{aligned} L(\theta)-L\left(\theta^{(i)}\right) &=\log \left(\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \frac{P(Y | Z, \theta) P(Z | \theta)}{P\left(Z | Y, \theta^{(i)}\right)}\right)-\log P\left(Y | \theta^{(i)}\right) \\ & \geqslant \sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log \frac{P(Y | Z, \theta) P(Z | \theta)}{P\left(Z | Y, \theta^{(i)}\right)}-\log P\left(Y | \theta^{(i)}\right) \\ &=\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log \frac{P(Y | Z, \theta) P(Z | \theta)}{P\left(Z | Y, \theta^{(i)}\right) P\left(Y | \theta^{(i)}\right)} \end{aligned} L(θ)L(θ(i))=log(ZP(ZY,θ(i))P(ZY,θ(i))P(YZ,θ)P(Zθ))logP(Yθ(i))ZP(ZY,θ(i))logP(ZY,θ(i))P(YZ,θ)P(Zθ)logP(Yθ(i))=ZP(ZY,θ(i))logP(ZY,θ(i))P(Yθ(i))P(YZ,θ)P(Zθ)
B ( θ , θ ( i ) ) = ^ L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ θ ( i ) ) B\left(\theta, \theta^{(i)}\right) \hat{=} L\left(\theta^{(i)}\right)+\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log \frac{P(Y | Z, \theta) P(Z | \theta)}{P\left(Z | Y, \theta^{(i)}\right) P\left(Y | \theta^{(i)}\right)} B(θ,θ(i))=^L(θ(i))+ZP(ZY,θ(i))logP(ZY,θ(i))P(Yθ(i))P(YZ,θ)P(Zθ)
L ( θ ) ⩾ B ( θ , θ ( i ) ) L(\theta) \geqslant B\left(\theta, \theta^{(i)}\right) L(θ)B(θ,θ(i))即函数 B ( θ , θ ( i ) ) B\left(\theta, \theta^{(i)}\right) B(θ,θ(i)) L ( θ ) L(\theta) L(θ)的一个下界,并且有:
L ( θ ( i ) ) = B ( θ ( i ) , θ ( i ) ) L\left(\theta^{(i)}\right)=B\left(\theta^{(i)}, \theta^{(i)}\right) L(θ(i))=B(θ(i),θ(i))因此,任何可以使 B ( θ , θ ( i ) ) B\left(\theta, \theta^{(i)}\right) B(θ,θ(i))增大的 θ \theta θ也可以使 L ( θ ) L(\theta) L(θ)增大,因此,每次迭代时可以直接对 B ( θ , θ ( i ) ) B\left(\theta, \theta^{(i)}\right) B(θ,θ(i))进行极大化更新 θ \theta θ
θ ( i + 1 ) = arg ⁡ max ⁡ θ B ( θ , θ ( i ) ) \theta^{(i+1)}=\arg \max _{\theta} B\left(\theta, \theta^{(i)}\right) θ(i+1)=argθmaxB(θ,θ(i))对其求 θ \theta θ偏导,有:
θ ( i + 1 ) = arg ⁡ max ⁡ θ ( L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ P ( Y ∣ Z , θ ) P ( Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ θ ( i ) ) ) = arg ⁡ max ⁡ θ ( ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ ( P ( Y ∣ Z , θ ) P ( Z ∣ θ ) ) ) = arg ⁡ max ⁡ θ ( ∑ Z P ( Z ∣ Y , θ ( i ) ) log ⁡ P ( Y , Z ∣ θ ) ) = arg ⁡ max ⁡ θ Q ( θ , θ ( i ) ) \begin{aligned} \theta^{(i+1)} &=\arg \max _{\theta}\left(L\left(\theta^{(i)}\right)+\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log \frac{P(Y | Z, \theta) P(Z | \theta)}{P\left(Z | Y, \theta^{(i)}\right) P\left(Y | \theta^{(i)}\right)}\right) \\ &=\arg \max _{\theta}\left(\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log (P(Y | Z, \theta) P(Z | \theta))\right) \\ &=\arg \max _{\theta}\left(\sum_{Z} P\left(Z | Y, \theta^{(i)}\right) \log P(Y, Z | \theta)\right) \\ &=\arg \max _{\theta} Q\left(\theta, \theta^{(i)}\right) \end{aligned} θ(i+1)=argθmax(L(θ(i))+ZP(ZY,θ(i))logP(ZY,θ(i))P(Yθ(i))P(YZ,θ)P(Zθ))=argθmax(ZP(ZY,θ(i))log(P(YZ,θ)P(Zθ)))=argθmax(ZP(ZY,θ(i))logP(Y,Zθ))=argθmaxQ(θ,θ(i))上式等价于EM算法的一次迭代,即求 Q Q Q函数及其极大化,EM算法是通过不断求解下界的极大化逼近求解对数似然函数极大化的算法。最终,EM算法可以归纳如下:

    EM算法:

  • 输入:观测变量 Y Y Y,隐变量数据 Z Z Z,联合分布 P ( Y , Z ∣ θ ) P(Y, Z | \theta) P(Y,Zθ),条件分布 P ( Z ∣ Y , θ ) P(Z | Y, \theta) P(ZY,θ)
  • 输出:模型参数 θ \theta θ
  • 选择参数初始值 θ ( 0 ) \theta^{(0)} θ(0),开始迭代;
  • E步:记 θ ( i ) \theta^{(i)} θ(i)为第 i i i次迭代参数 θ \theta θ的估计值,在第 i + 1 i+1 i+1次迭代的E步,计算期望,即Q函数: Q ( θ , θ ( i ) ) = E z [ log ⁡ P ( Y , Z ∣ θ ) ∣ Y , θ ( i ) ] = ∑ Z log ⁡ P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) \begin{aligned} Q\left(\theta, \theta^{(i)}\right) &=E_{z}\left[\log P(Y, Z | \theta) | Y, \theta^{(i)}\right] \\ &=\sum_{Z} \log P(Y, Z | \theta) P\left(Z | Y, \theta^{(i)}\right) \end{aligned} Q(θ,θ(i))=Ez[logP(Y,Zθ)Y,θ(i)]=ZlogP(Y,Zθ)P(ZY,θ(i))这里, P ( Z ∣ Y , θ ( i ) ) P\left(Z | Y, \theta^{(i)}\right) P(ZY,θ(i))是在给定观测数据 Y Y Y和当前的参数估计 θ ( i ) \theta^{(i)} θ(i)下的隐变量数据 Z Z Z的条件概率分布;
  • M步:求使 Q ( θ , θ ( i ) ) Q\left(\theta, \theta^{(i)}\right) Q(θ,θ(i))极大化的 θ \theta θ,确定第 i + 1 i+1 i+1次迭代的参数的估计值:
    θ ( i + 1 ) = arg ⁡ max ⁡ θ Q ( θ , θ ( i ) ) \theta^{(i+1)}=\arg \max _{\theta} Q\left(\theta, \theta^{(i)}\right) θ(i+1)=argθmaxQ(θ,θ(i))
  • 重复4、5步骤,直到收敛,即 ∥ θ ( i + 1 ) − θ ( i ) ∥ &lt; ε 1 \left\|\theta^{(i+1)}-\theta^{(i)}\right\|&lt;\varepsilon_{1} θ(i+1)θ(i)<ε1或者 ∥ Q ( θ ( i + 1 ) , θ ( i ) ) − Q ( θ ( i ) , θ ( i ) ) ∥ &lt; ε 2 \left\|Q\left(\theta^{(i+1)}, \theta^{(i)}\right)-Q\left(\theta^{(i)}, \theta^{(i)}\right)\right\|&lt;\varepsilon_{2} Q(θ(i+1),θ(i))Q(θ(i),θ(i))<ε2,其中, ε 1 , ε 2 \varepsilon_{1}, \varepsilon_{2} ε1,ε2为设定的阈值。
2.2 EM算法在高斯混合模型中的应用

    EM算法的一个重要的应用是高斯混合模型的参数估计。首先,先看下什么是高斯混合模型。

    高斯混合模型: 高斯混合模型是指具有如下形式的概率分布模型:
P ( y ∣ θ ) = ∑ k = 1 K α k ϕ ( y ∣ θ k ) P(y | \theta)=\sum_{k=1}^{K} \alpha_{k} \phi\left(y | \theta_{k}\right) P(yθ)=k=1Kαkϕ(yθk)其中, α k \alpha_{k} αk是系数, α k ⩾ 0 , ∑ k = 1 K α k = 1 \alpha_{k} \geqslant 0, \quad \sum_{k=1}^{K} \alpha_{k}=1 αk0,k=1Kαk=1 ϕ ( y ∣ θ k ) \phi\left(y | \theta_{k}\right) ϕ(yθk)是高斯分布函数, θ k = ( μ k , σ k 2 ) \theta_{k}=\left(\mu_{k}, \sigma_{k}^{2}\right) θk=(μk,σk2)
ϕ ( y ∣ θ k ) = 1 2 π σ k exp ⁡ ( − ( y − μ k ) 2 2 σ k 2 ) \phi\left(y | \theta_{k}\right)=\frac{1}{\sqrt{2 \pi} \sigma_{k}} \exp \left(-\frac{\left(y-\mu_{k}\right)^{2}}{2 \sigma_{k}^{2}}\right) ϕ(yθk)=2π σk1exp(2σk2(yμk)2)称为第 k k k个分模型。

    假设观测数据 y 1 , y 2 , ⋯ &ThinSpace; , y N y_{1}, y_{2}, \cdots, y_{N} y1,y2,,yN由高斯混合模型生成,
P ( y ∣ θ ) = ∑ k = 1 K α k ϕ ( y ∣ θ k ) P(y | \theta)=\sum_{k=1}^{K} \alpha_{k} \phi\left(y | \theta_{k}\right) P(yθ)=k=1Kαkϕ(yθk)其中, θ = ( α 1 , α 2 , ⋯ &ThinSpace; , α K ; θ 1 , θ 2 , ⋯ &ThinSpace; , θ K ) \theta=\left(\alpha_{1}, \alpha_{2}, \cdots, \alpha_{K} ; \theta_{1}, \theta_{2}, \cdots, \theta_{K}\right) θ=(α1,α2,,αK;θ1,θ2,,θK),接下来用EM算法估计高斯混合模型的参数 θ \theta θ

    可以设想观测数据 y j , j = 1 , 2 , ⋯ &ThinSpace; , N y_{j}, \quad j=1,2, \cdots, N yj,j=1,2,,N是这样产生的:首先依概率 α k \alpha_{k} αk选择第 k k k个高斯分布模型 ϕ ( y ∣ θ k ) \phi\left(y | \theta_{k}\right) ϕ(yθk),然后依第 k k k个分模型的概率分布 ϕ ( y ∣ θ k ) \phi\left(y | \theta_{k}\right) ϕ(yθk)生成观测数据 y j y_{j} yj,这时,观测数据 y j , j = 1 , 2 , ⋯ &ThinSpace; , N y_{j}, \quad j=1,2, \cdots, N yj,j=1,2,,N是已知的,反映观测数据 y j y_{j} yj来自第 k k k个分模型是未知的,用隐变量 γ j k \gamma_{j k} γjk表示,其定义如下:
在这里插入图片描述 其中, γ j k \gamma_{j k} γjk是0-1随机变量。因此,可以得到完全数据的似然函数:
在这里插入图片描述其中, n k = ∑ j = 1 N γ j k , ∑ k = 1 K n k = N n_{k}=\sum_{j=1}^{N} \gamma_{j k}, \quad \sum_{k=1}^{K} n_{k}=N nk=j=1Nγjk,k=1Knk=N。因此,完全数据的对数似然函数可以表达为:
log ⁡ P ( y , γ ∣ θ ) = ∑ k = 1 K n k log ⁡ α k + ∑ j = 1 N γ j k [ log ⁡ ( 1 2 π ) − log ⁡ σ k − 1 2 σ k 2 ( y j − μ k ) 2 ] \log P(y, \gamma | \theta)=\sum_{k=1}^{K} n_{k} \log \alpha_{k}+\sum_{j=1}^{N} \gamma_{j k}\left[\log \left(\frac{1}{\sqrt{2 \pi}}\right)-\log \sigma_{k}-\frac{1}{2 \sigma_{k}^{2}}\left(y_{j}-\mu_{k}\right)^{2}\right] logP(y,γθ)=k=1Knklogαk+j=1Nγjk[log(2π 1)logσk2σk21(yjμk)2]

    接下来,可以计算Q函数:
Q ( θ , θ ( i ) ) = E [ log ⁡ P ( y , γ ∣ θ ) ∣ y , θ ( i ) ] = E { ∑ k = 1 K n k log ⁡ α k + ∑ j = 1 N γ j k [ log ⁡ ( 1 2 π ) − log ⁡ σ k − 1 2 σ k 2 ( y j − μ k ) 2 ] } = ∑ k = 1 K { ∑ j = 1 N ( E γ j k ) log ⁡ α k + ∑ j = 1 N ( E γ j k ) [ log ⁡ ( 1 2 π ) − log ⁡ σ k − 1 2 σ k 2 ( y j − μ k ) 2 ] } \begin{aligned} Q\left(\theta, \theta^{(i)}\right) &amp;=E\left[\log P(y, \gamma | \theta) | y, \theta^{(i)}\right] \\ &amp;=E\left\{\sum_{k=1}^{K} n_{k} \log \alpha_{k}+\sum_{j=1}^{N} \gamma_{j k}\left[\log \left(\frac{1}{\sqrt{2 \pi}}\right)-\log \sigma_{k}-\frac{1}{2 \sigma_{k}^{2}}\left(y_{j}-\mu_{k}\right)^{2}\right]\right\} \\ &amp;=\sum_{k=1}^{K}\left\{\sum_{j=1}^{N}\left(E \gamma_{j k}\right) \log \alpha_{k}+\sum_{j=1}^{N}\left(E \gamma_{j k}\right)\left[\log \left(\frac{1}{\sqrt{2 \pi}}\right)-\log \sigma_{k}-\frac{1}{2 \sigma_{k}^{2}}\left(y_{j}-\mu_{k}\right)^{2}\right]\right\} \end{aligned} Q(θ,θ(i))=E[logP(y,γθ)y,θ(i)]=E{k=1Knklogαk+j=1Nγjk[log(2π 1)logσk2σk21(yjμk)2]}=k=1K{j=1N(Eγjk)logαk+j=1N(Eγjk)[log(2π 1)logσk2σk21(yjμk)2]}这里需要计算 E ( γ j k ∣ y , θ ) E\left(\gamma_{j k} | y, \theta\right) E(γjky,θ),记为 γ ^ j k \hat{\gamma}_{j k} γ^jk,其计算如下:
在这里插入图片描述
γ ^ j k = E γ j k \hat{\gamma}_{j k}=E \gamma_{j k} γ^jk=Eγjk n k = ∑ j = 1 N E γ j k n_{k}=\sum_{j=1}^{N} E \gamma_{j k} nk=j=1NEγjk代入Q函数得:
Q ( θ , θ ( i ) ) = ∑ k = 1 K n k log ⁡ α k + ∑ j = 1 N γ ^ j k [ log ⁡ ( 1 2 π ) − log ⁡ σ k − 1 2 σ k 2 ( y j − μ k ) 2 ] Q\left(\theta, \theta^{(i)}\right)=\sum_{k=1}^{K} n_{k} \log \alpha_{k}+\sum_{j=1}^{N} \hat{\gamma}_{j k}\left[\log \left(\frac{1}{\sqrt{2 \pi}}\right)-\log \sigma_{k}-\frac{1}{2 \sigma_{k}^{2}}\left(y_{j}-\mu_{k}\right)^{2}\right] Q(θ,θ(i))=k=1Knklogαk+j=1Nγ^jk[log(2π 1)logσk2σk21(yjμk)2]

    接下来是M步,计算Q函数的极大值,
θ ( i + 1 ) = arg ⁡ max ⁡ θ Q ( θ , θ ( i ) ) \theta^{(i+1)}=\arg \max _{\theta} Q\left(\theta, \theta^{(i)}\right) θ(i+1)=argθmaxQ(θ,θ(i)) μ ^ k , σ ^ k 2 α ^ k , k = 1 , 2 , ⋯ &ThinSpace; , K \hat{\mu}_{k}, \hat{\sigma}_{k}^{2}\hat{\alpha}_{k}, k=1,2, \cdots, K μ^k,σ^k2α^k,k=1,2,,K分别表示 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)的各参数,分别对 μ k , σ k 2 , α k \mu_{k}, \sigma_{k}^{2}, \alpha_{k} μk,σk2,αk求偏导并令其为0得:
μ ^ k = ∑ j = 1 N γ ^ j k y j ∑ j = 1 N γ ^ j k , k = 1 , 2 , ⋯ &ThinSpace; , K σ ^ k 2 = ∑ j = 1 N γ ^ j k ( y j − μ k ) 2 ∑ j = 1 N γ ^ j k , k = 1 , 2 , ⋯ &ThinSpace; , K α ^ k = n k N = ∑ j = 1 N γ ^ j k N , k = 1 , 2 , ⋯ &ThinSpace; , K \begin{array}{c}{\hat{\mu}_{k}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k} y_{j}}{\sum_{j=1}^{N} \hat{\gamma}_{j k}}, \quad k=1,2, \cdots, K} \\\\ {\hat{\sigma}_{k}^{2}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k}\left(y_{j}-\mu_{k}\right)^{2}}{\sum_{j=1}^{N} \hat{\gamma}_{j k}}, \quad k=1,2, \cdots, K} \\\\ {\hat{\alpha}_{k}=\frac{n_{k}}{N}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k}}{N}, \quad k=1,2, \cdots, K}\end{array} μ^k=j=1Nγ^jkj=1Nγ^jkyj,k=1,2,,Kσ^k2=j=1Nγ^jkj=1Nγ^jk(yjμk)2,k=1,2,,Kα^k=Nnk=Nj=1Nγ^jk,k=1,2,,K 重复以上过程,直到收敛为止。高斯混合模型参数估计的EM算法可以总结如下:

    高斯混合模型参数估计的EM算法

  1. 输入:观测数据 y 1 , y 2 , ⋯ &ThinSpace; , y N y_{1}, y_{2}, \cdots, y_{N} y1,y2,,yN,高斯混合模型;
  2. 输出:高斯混合模型的参数;
  3. 取参数的初始值开始迭代
  4. 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 , ⋯ &ThinSpace; , N ; k = 1 , 2 , ⋯ &ThinSpace; , K \hat{\gamma}_{j k}=\frac{\alpha_{k} \phi\left(y_{j} | \theta_{k}\right)}{\sum_{k=1}^{K} \alpha_{k} \phi\left(y_{j} | \theta_{k}\right)}, \quad j=1,2, \cdots, N ; \quad k=1,2, \cdots, K γ^jk=k=1Kαkϕ(yjθk)αkϕ(yjθk),j=1,2,,N;k=1,2,,K
  5. M步:计算新一轮迭代的模型参数:
    μ ^ k = ∑ j = 1 N γ ^ j k y j ∑ j = 1 N γ ^ j k , k = 1 , 2 , ⋯ &ThinSpace; , K σ ^ k 2 = ∑ j = 1 N γ ^ j k ( y j − μ k ) 2 ∑ j = 1 N γ ^ j k , k = 1 , 2 , ⋯ &ThinSpace; , K α ^ k = n k N = ∑ j = 1 N γ ^ j k N , k = 1 , 2 , ⋯ &ThinSpace; , K \begin{array}{c}{\hat{\mu}_{k}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k} y_{j}}{\sum_{j=1}^{N} \hat{\gamma}_{j k}}, \quad k=1,2, \cdots, K} \\\\ {\hat{\sigma}_{k}^{2}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k}\left(y_{j}-\mu_{k}\right)^{2}}{\sum_{j=1}^{N} \hat{\gamma}_{j k}}, \quad k=1,2, \cdots, K} \\\\ {\hat{\alpha}_{k}=\frac{n_{k}}{N}=\frac{\sum_{j=1}^{N} \hat{\gamma}_{j k}}{N}, \quad k=1,2, \cdots, K}\end{array} μ^k=j=1Nγ^jkj=1Nγ^jkyj,k=1,2,,Kσ^k2=j=1Nγ^jkj=1Nγ^jk(yjμk)2,k=1,2,,Kα^k=Nnk=Nj=1Nγ^jk,k=1,2,,K
  6. 重复4、5步,直到收敛。

3. 总结

  • EM算法对初始值比较敏感。
  • EM算法由于是通过迭代的思想,采用下界不断逼近对数似然函数,因此,得到的参数估计可能是局部最优解。
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值