机器学习笔记(十七)——EM算法的推导

原创 2016年10月22日 12:45:00

一、Jensen 不等式

    在EM算法的推导过程中,用到了数学上的Jensen不等式,这里先来介绍一下。
若Ω是有限集合{x1,x2,,xn},而μ是Ω上的正规计数测度,则不等式的一般形式可以简单地用和式表示:

(1)φ(i=1ng(xi)λi)i=1nφ(g(xi))λi171

  其中λ1+λ2++λn=1,λi0

  若φ是凹函数,只需把不等式符号调转。主要参考文献【1】
  

二、EM算法推导

    面对一个含有隐含变量的概率模型,目标是极大化观测数据Y关于参数θ的对数似然函数,即极大化:

(184)L(θ)=logP(Y;θ)=logzP(Y,Z;θ)=logzP(Y|Z;θ)P(Z;θ)

    事实上,EM算法是通过迭代逐步极大化L(θ)的。假设在第i次迭代后θ的估计值是θ(i)。我们希望新的估计值θ能使L(θ)增加,即L(θ)>L(θ(i)),并逐步达到极大值。为此考虑两者的差:
(185)L(θ)L(θ(i))=log(zP(Y|Z;θ)P(Z;θ))logP(Y;θ(i))=log(zP(Z|Y;θ(i))P(Y|Z;θ)P(Z;θ)P(Z|Y;θ(i)))logP(Y;θ(i))zP(Z|Y;θ(i))logP(Y|Z;θ)P(Z;θ)P(Z|Y;θ(i))logP(Y;θ(i))=zP(Z|Y;θ(i))logP(Y|Z;θ)P(Z;θ)P(Z|Y;θ(i))P(Y;θ(i))

上式利用了Jensen不等式,在17-1式中, 令 φlog, 且zP(Z|Y;θ(i))=1,则可得上述推导。注意log为凹函数,不等号要改变方向


(186)B(θ,θ(i))=L(θ(i))+zP(Y|Z;θ(i))logP(Y|Z;θ)P(Z;θ)P(Y|Z;θ(i))P(Y;θ(i))172

则:
(187)L(θ)B(θ,θ(i))

那么,B(θ,θ(i))L(θ)的一个下界,由17-2知道:
(188)L(θ(i))=B(θ(i),θ(i))

因此,任何可以使B(θ,θ(i))增大的θ,都可使L(θ)增大,选择θ(i+1)使B(θ,θ(i))达到极大,即:
(189)θ(i+1)=argmaxθB(θ,θ(i))

现在求θ(i+1) 的表达式,省去对于θ而言都是常数的项:
(190)θ(i+1)=argmaxθ(L(θ(i))+zP(Y|Z;θ(i))logP(Y|Z;θ)P(Z;θ)P(Y|Z;θ(i))P(Y;θ(i)))=argmaxθ(zP(Y|Z;θ(i))logP(Y|Z;θ)P(Z;θ))=argmaxθ(zP(Y|Z;θ(i))logP(Y,Z;θ))=argmaxθQ(θ,θ(i))

EM算法并不能保证全局最优值,直观解释如图所示。
这里写图片描述

参考文献

http://wiki.mbalib.com/wiki/%E8%A9%B9%E6%A3%AE%E4%B8%8D%E7%AD%89%E5%BC%8F

简单易学的机器学习算法——EM算法

一、EM算法简介 EM算法是期望极大(Expectation Maximization)算法的简称,是一种解决存在隐含变量优化问题的有效方法。...
  • google19890102
  • google19890102
  • 2015-06-12 14:30:48
  • 13678

EM算法(Expectation Maximization Algorithm)详解

EM算法(Expectation Maximization Algorithm)详解 主要内容 EM算法简介 预备知识 极大似然估计 Jensen不等式 EM算法详解 问题描述 EM算法推导 E...
  • zhihua_oba
  • zhihua_oba
  • 2017-06-27 11:44:49
  • 5776

EM算法介绍及总结

本文摘自统计学习方法 李航著 清华大学出版社EM算法介绍及总结EM算法是一种迭代的算法,1977年由Dempster等人提出,用于含有隐变量(Hidden Variable)的概率模型参数的极大似然估...
  • u011784495
  • u011784495
  • 2017-05-16 13:52:50
  • 2018

EM算法的学习笔记

EM算法说起来很简单,给定一个要估计的参数的初值,计算隐含变量分布,再根据隐含变量的分布更新要估计的参数值,之后在这两个步骤之间进行迭代。但是其中的数学原理,GMM的推导等等其实并不简单,难想更难算。...
  • littleorange6
  • littleorange6
  • 2017-07-03 20:08:15
  • 936

EM算法再次总结

说明:此篇是作者对“EM”的第二次总结,因此可以算作对上次总结的查漏补缺以及更进一步的理解,所以很多在第一次总结中已经整理过的内容在本篇中将不再重复,如果你看的有些吃力,那建议你看下我的第一次总结: ...
  • xueyingxue001
  • xueyingxue001
  • 2016-07-25 09:41:28
  • 6354

EM算法的深入理解

EM算法主要用于含有隐变量的概率模型的学习,针对不完全数据的最大对数似然函数找到局部最优解。...
  • step_forward_ML
  • step_forward_ML
  • 2017-09-15 09:37:57
  • 568

从最大似然到EM算法浅解

从最大似然到EM算法浅解 zouxy09@qq.com http://blog.csdn.net/zouxy09          机器学习十大算法之一:EM算法。能评得上十大之一,让人听起来觉得挺N...
  • zouxy09
  • zouxy09
  • 2013-01-24 13:14:23
  • 291061

EM算法原理

在聚类中我们经常用到EM算法(i.e. Expectation - Maximization)进行参数估计, 在该算法中我们通过函数的凹/凸性,在expectation 和maximization两步...
  • abcjennifer
  • abcjennifer
  • 2012-11-10 23:49:42
  • 81471

简析EM算法(最大期望算法)

问题  假设男、女身高都服从正态分布,我们通过抽样调查,利用最大似然估计,很容易估计出男、女群体的身高平均值。      如果出现了意外,我们把抽样信息中男女的标记给弄丢了,男女身高数据混在了一起...
  • quicmous
  • quicmous
  • 2016-08-14 17:27:28
  • 3214

关于EM算法的简单讲解

EM算法 EM算法是一种迭代算法,1977年由Dempster等人总结提出,用于含有隐变量(hidden variable)的概率模型参数的极大似然估计,或极大后验概率估计。例如估计LDA中的隐变...
  • qq_30843221
  • qq_30843221
  • 2017-02-06 21:54:52
  • 632
收藏助手
不良信息举报
您举报文章:机器学习笔记(十七)——EM算法的推导
举报原因:
原因补充:

(最多只允许输入30个字)