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

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

一、Jensen 不等式

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

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

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

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

二、EM算法推导

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

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

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

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


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

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

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

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

现在求θ(i+1) 的表达式,省去对于θ而言都是常数的项:
θ(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算法-数学原理及其证明

参考http://blog.csdn.net/zouxy09/article/details/8537620 参考 http://www.cnblogs.com/jerrylead 之前介绍了E...

从最大似然到EM算法浅解

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

EM算法推导

忘了用了几天的时间来学习EM算法、GMM,学习老师的语音识别程序,先看老师的PPT(简单介绍EM算法和GMM,MFCC的步骤),源代码(刚开始看的时候完全不懂),然后在网上搜索了MFCC方法,通过博客...

EM算法推导过程

EM是我一直想深入学习的算法之一,第一次听说是在NLP课中的HMM那一节,为了解决HMM的参数估计问题,使用了EM算法。在之后的MT中的词对齐中也用到了。在Mitchell的书中也提到EM可以用于贝叶...

EM算法原理详解

http://blog.csdn.net/pipisorry/article/details/42550815EM算法有很多的应用,最广泛的就是GMM混合高斯模型、聚类、HMM、基于概率的PLSA模型...

EM算法学习(Expectation Maximization Algorithm)

http://www.cnblogs.com/mindpuzzle/archive/2013/04/05/2998746.html EM算法学习(Expectation Maxi...

EM算法的学习笔记

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

使用KD树进行最近邻查找的例子

使用KD树进行最近邻查找的例子 例1: 查询点(2.1,3.1) 星号表示要查询的点(2.1,3.1)。通过二叉搜索,顺着搜索路径很快就能找到最邻近的近似点,也就是叶子节点(2,3)。而...

android开发五子棋人人对战

转载请注明出处:http://blog.csdn.net/sw950729/article/details/51942858 本文出自:马云飞的博客 当初学编程的,都想做一个游戏,俄罗斯方块?贪吃...

统计机器学习笔记——EM算法及其应用(1)

EM算法的适用场景与简单例子
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:机器学习笔记(十七)——EM算法的推导
举报原因:
原因补充:

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