EM算法推导


文章目录

  • EM算法推导
  • EM算法内容
  • EM算法过程
  • 算法证明:为什么能用EM算法求最大似然
  • E-step
  • M-step
  • 整体过程
  • 收敛性证明
  • 对数似然函数递增
  • 有界性
  • EM算法的应用
  • EM算法优缺点
  • 优点
  • 缺点
  • 改进方法
  • 参考文献



EM算法内容

概率模型有时既含有观测变量(observable variable),又含有隐变量或潜在变量 (latent variable). 如果概率模型的变量都是观测变量,那么给定数据,可以直接用极大似然估计法,或贝叶斯估计法估计模型参数。但是,当模型含有隐变量时,就不能简单地使用这些估计方法。
EM 算法就是含有隐变量的概率模型参数的极大似然估计法,或极大后验概率估计法。

EM算法过程

基于em算法的 em算法优缺点_机器学习

算法证明:为什么能用EM算法求最大似然

目标是求最大化对数似然函数基于em算法的 em算法优缺点_机器学习_02的参数的值:

基于em算法的 em算法优缺点_算法_03


将对数似然函数基于em算法的 em算法优缺点_机器学习_02写成基于em算法的 em算法优缺点_EM_05基于em算法的 em算法优缺点_机器学习_06 的和:

基于em算法的 em算法优缺点_EM_07


其中,

基于em算法的 em算法优缺点_机器学习_08


等式证明:

根据概率乘积公式

基于em算法的 em算法优缺点_似然函数_09


基于em算法的 em算法优缺点_似然函数_10


所以,看下图,基于em算法的 em算法优缺点_EM_05可以看成对数似然函数基于em算法的 em算法优缺点_机器学习_02的下界

基于em算法的 em算法优缺点_机器学习_13

E-step

基于em算法的 em算法优缺点_算法_14

所以在E-step, 让 基于em算法的 em算法优缺点_基于em算法的_15 , 此时 基于em算法的 em算法优缺点_EM_16 , 因此下界基于em算法的 em算法优缺点_EM_05 被最大化,此时下界和对数似然函数相等,即 基于em算法的 em算法优缺点_EM_18 ,如下图所示

基于em算法的 em算法优缺点_基于em算法的_19

M-step

基于em算法的 em算法优缺点_基于em算法的_20


所以在M-step, 我们寻找参数 基于em算法的 em算法优缺点_基于em算法的_21 去最大化下界基于em算法的 em算法优缺点_EM_05,同时也可以让对数似然函数 基于em算法的 em算法优缺点_机器学习_02增加,因为我们在E-step中将下界放大到和对数似然函数相等。

然而,最大化基于em算法的 em算法优缺点_EM_05 可以证明等价于最大化 基于em算法的 em算法优缺点_基于em算法的_25

基于em算法的 em算法优缺点_算法_26


如下图所示

基于em算法的 em算法优缺点_基于em算法的_27

整体过程

基于em算法的 em算法优缺点_EM_28


在第 i 次迭代的E-step,使得下界 基于em算法的 em算法优缺点_EM_05 (蓝色曲线)在 基于em算法的 em算法优缺点_基于em算法的_30 处和对数似然函数 基于em算法的 em算法优缺点_机器学习_02

在第 i 次迭代的M-step,找到 基于em算法的 em算法优缺点_基于em算法的_21 最大化 基于em算法的 em算法优缺点_EM_05

在第 i +1次迭代的E-step,使得下界 基于em算法的 em算法优缺点_EM_05 (蓝色曲线)变到绿色曲线,使得在 基于em算法的 em算法优缺点_基于em算法的_21 处和对数似然函数 基于em算法的 em算法优缺点_机器学习_02 (红色曲线)相等。

收敛性证明

对数似然函数递增

基于em算法的 em算法优缺点_基于em算法的_37


所以,对数似然函数是递增的

基于em算法的 em算法优缺点_算法_38

有界性

因为

基于em算法的 em算法优缺点_算法_39

所以对数似然有上界 0, 基于em算法的 em算法优缺点_算法_40

因为对数似然函数递增且有上界,所以是收敛的。

EM算法的应用

K-Means
Gaussian Mixture Model (GMM)
Hidden Markov model (HMM) …

EM算法优缺点

优点

  • M步只涉及完整数据的最大似然,通常计算起来比较简单。
  • 收敛是稳定的,不需要设置任何超参数来使其收敛

缺点

  • 对初始值很敏感
  • 局部最优解
  • 如果数据集非常大,计算量会非常大。

改进方法

Monte Carlo Expectation Maximisation (MCEM)

Expectation/Conditional Maximisation (ECM)

Parameter Expansion Expectation Maximisation (PX-EM)