一、定义
EM算法,全称Expectation Maximization Algorithm,译作最大期望化算法或期望最大算法,它是一种迭代算法,从不完全数据的数据集中求解模型参数的最大似然估计方法。
其所谓“不完全数据”一般指两种情况:一种是由于观测过程本身的限制或者错误,造成观测数据成为有错漏的“不完全”数据;另一种是参数的似然函数直接优化十分困难,而引入额外的参数 (隐含的或丢失的) 后就比较容易优化,于是定义原始观测数据加上额外参数组成“完全数据”, 原始观测数据自然就成为“不完全数据”。实际上,在模式识别及其相关领域, 后一种情况更为常见。
二、推导过程
(1)Jensen不等式
我们首先了解Jensen不等式(琴生不等式),它给出积分的凸函数和凹函数的积分值间的关系。那么凸凹函数的定义是什么呢?假设f是定义为实数的函数,如果对于所有的x,f(x)的二阶导数大于等于0,那么f是凸函数。当x是向量时,如果Hessian矩阵是半正定(即H>=0),那么f是凸函数。如果f(x)的二阶导数小于0或者H<0,那么f就是凹函数。
Jensen不等于描述:
- 如果f是凸函数,X是随机变量,则
,当
或者
时,则
- 如果f是凹函数,X是随机变量,则
,当
或者
时,则
来看下面的图片:
f是一个凸函数,X是一个随机变量。在横轴上,X有0.5的概率取a,0.5的概率取b。X的期望是a,b值的中点(即),a,b值的期望的函数值f(E(X))。在纵轴上,f(a)和f(b)的期望是E[f(X)]。可以很直观地看出E[f(X)] > f(E[x])
(2)推导EM算法:
对于m个样本观测数据中,找出样本的模型参数
,极大化模型分布的对数似然函数
如果我们得到未观察到的隐含变量,此时,我们的极大化模型参数的对数似然函数如下:
上面的例子是没有办法直接求θ 的,需要一些特殊技巧,我们首先对公式进行缩放如下:
上面的三个式子中,式(1)是根据联合概率密度下某个变量的边缘函数求解的,对每个样本x的所有可能z求等式右边的联合概率密度函数和,得到等式左边为随机变量X的边缘概率密度。对于(1)式直接求导非常困难,所以将每个分子分母都乘以相等的,转化成(2),在等式(2)转化成等式(3)的过程,采用了Jensen不等式。
把log函数看成整体,由于Log函数的二阶导数,为凹函数。使用Jensen不等式准则(2):
我们可以把看成是p(x),
看成是g(x)。根据期望公式
,可以得到
,即为
的期望
再根据凹函数对应的Jensen不等式性质
,得到公式(3)
如果要满足Jensen不等式,c为常数,则
由于是一个分布
从(2),(3)我们可以得出:
等式(3)中,我们包含了隐藏数据的一个下界,如果我们能极大化这个下界,则也在尝试极大化我们对数似然函数:
去掉上式中的常数部分,则需要极大化的对数似然下界
上式也是我们EM算法的M步,可以看作基于条件概率分布
的期望,是E步。
式(2)和式(3)可以写成:似然函数,我们可以通过不断最大化J的下界,来使得
不断提高,最终达到它的最大值。
上图的内在含义:
首先我们固定
,调整
使下界
上升至与
在此点处的
相等(黄色曲线到蓝色曲线),然后固定
,调整
使下界
达到最大值(
到
),然后再固定
,调整
....直到收敛到似然函数的最大值处的
概率论中随机变量的期望计算方法
设Y是随机变量x的函数,Y=g(X)(g是连续函数),那么
(1)X是离散性随机变量,它的分布律是,若
绝对收敛,则
(2)X是连续型随机变量,它的概率密度为f(X),若绝对收敛,则有
(3)EM算法流程
输入:观测数据,联合分布
,条件概率分布p(z|x;θ),最大迭代次数J
- 随机初始化模型参数θ的初始值
- for j from 1 to j 开始EM算法迭代:
(a)E步:计算联合分布的条件概率期望:
(b)M步:极大化,得到
(c)如果已收敛,则算法结束。否则继续回步骤(a)进行E步迭代。
输出:模型参数θ
(4)EM算法收敛
假设为观测数据的似然函数,
为EM算法得到的参数估计序列,
为对应的参数序列,则
是单调递增的,即
证明
取对数
由于式(4)
令
则:
由于使得
极大,因此有
而对于第二部分,我们有:
其中第(5)用了Jensen不等式,只不过和第(3)步相反,第(7)用了概率分布累积为1的性质
因此,我们得到
,证明了EM算法的收敛性。
从上面的推导可以看出,EM算法可以保证收敛到一个稳定点,但是不能保证收敛到全局的极大值点,因此它是局部最优算法。当然,如果我们的优化目标是凸函数,则EM算法可以保证收敛到全局最大值。
Reference
[1].马春腾(2014).模式识别与机器学习.Book
[2].周志华(2016).机器学习.Book
[3].李航(2019).统计学习方法.Book
[4]向日华,王润生(2003).一种基于高斯混合的距离图像分割算法.Paper
[5].D.W(2015).EM-最大期望算法.Blog