统计学习方法(九)EM算法及其推广

    • 第九章 EM算法及其推广
      • 9.1 EM算法的引入
        • 9.1.1 EM算法
        • 9.1.2 EM算法的导出
        • 9.1.3 EM算法在非监督学习中的应用
      • 9.2 EM算法的收敛性

第九章 EM算法及其推广

EM算法是一种迭代算法,用于含有隐变量(hidden variable)的概率模型参数的极大似然估计,或极大后验概率估计。

EM算法的每次迭代由两步组成:E步(求期望)+M步(求极大值)

EM算法:期望极大算法(expectation maxmization algorithm)

9.1 EM算法的引入

EM算法就是还有隐变量的概率模型参数的极大似然估计法,或极大后验概率估计法。

首先介绍一下极大似然估计:

给定:模型(参数全部或者部分未知)和数据集(样本)

估计:模型的未知参数。

在最大释然估计中,我们试图在给定模型的情况下,找到最佳的参数,使得这组样本出现的可能性最大。

极大似然估计,只是一种概率论在统计学中的应用,它是参数估计的方法之一。说的是已知某个随机样本满足某种概率分布,但是其中具体的参数不清楚,参数估计就是通过若干次实验,观察其结果,利用结果推出参数的大概值。最大似然估计是建立在这样的思想上:已知某个参数能使这个样本出现的概率值最大,我们当然不会再去选择其他小概率的样本,所以干脆就把这个参数作为估计的真实值。

最大似然估计你可以把它看作是一个反推。多数情况下我们是根据已知条件来推算结果,而最大似然估计是已经知道了结果,然后寻求使该结果出现的可能性最大的条件,以此作为估计值。比如,如果其他条件一定的话,抽烟者发生肺癌的危险时不抽烟者的5倍,那么如果现在我已经知道有个人是肺癌,我想问你这个人抽烟还是不抽烟。你怎么判断?你可能对这个人一无所知,你所知道的只有一件事,那就是抽烟更容易发生肺癌,那么你会猜测这个人不抽烟吗?我相信你更有可能会说,这个人抽烟。为什么?这就是“最大可能”,我只能说他“最有可能”是抽烟的,“他是抽烟的”这一估计值才是“最有可能”得到“肺癌”这样的结果。这就是最大似然估计。

一般步骤:

(1)写出似然函数;
(2)对数似然函数取对数,并整理;
(3)求导数,令导数为0,得到似然方程;
(4)解似然方程,得到的参数即为所求。
统计学习方法(九)EM算法及其推广_第1张图片

这里写图片描述

9.1.1 EM算法

统计学习方法(九)EM算法及其推广_第2张图片

中间推导:
 
统计学习方法(九)EM算法及其推广_第3张图片
 
这里写图片描述
统计学习方法(九)EM算法及其推广_第4张图片
统计学习方法(九)EM算法及其推广_第5张图片

EM算法:

统计学习方法(九)EM算法及其推广_第6张图片
统计学习方法(九)EM算法及其推广_第7张图片

9.1.2 EM算法的导出

Jensen 不等式: E[f(x)]>=f(E[x])  E [ f ( x ) ] >= f ( E [ x ] )

统计学习方法(九)EM算法及其推广_第8张图片

统计学习方法(九)EM算法及其推广_第9张图片

EM算法:

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

这里写图片描述

极大化的困难:上式含有未观测数据并包含积分的对数

极大化 L(θ)  L ( θ ) 的过程:迭代方法,逐步极大化

统计学习方法(九)EM算法及其推广_第10张图片

统计学习方法(九)EM算法及其推广_第11张图片

EM算法步骤:

  1. 初始化参数 θ (0)   θ ( 0 ) ,开始迭代;
  2. E步:假设 θ (i)   θ ( i ) 为第 i  i 次迭代参数 θ  θ 的估计值,则在第 i+1  i + 1 次迭代中,计算 Q i (z)  Q i ( z )
    Q i (z)=P(Z|Y,θ (i) )  Q i ( z ) = P ( Z | Y , θ ( i ) )
  3. M步:求使得 l(θ (i) )  l ( θ ( i ) ) 极大化的 θ  θ ,确定第 i+1  i + 1 次的参数估计值 θ (i+1)   θ ( i + 1 )
    θ (i+1) =argmax θ Q(θ,θ (i) )  θ ( i + 1 ) = a r g m a x θ Q ( θ , θ ( i ) )
  4. 重复2~3步,直到收敛

9.1.3 EM算法在非监督学习中的应用

统计学习方法(九)EM算法及其推广_第12张图片

9.2 EM算法的收敛性

EM算法提供一种近似计算含有隐变量概率模型的极大似然估计的方法,其最大的优点是简单性和普适性,那么EM算法得到的估计序列是否收敛?如果收敛,是否收敛到全局或局部极大值?

统计学习方法(九)EM算法及其推广_第13张图片

统计学习方法(九)EM算法及其推广_第14张图片

只能得到局部极值点,不能得到全局极值点。

举例:

假定有训练集 x(1),x(2),,x(m)  x ( 1 ) , x ( 2 ) , … , x ( m ) ,包含 m  m 个独立样本,希望从中找到该组数据的模型 p(x,z)  p ( x , z ) 的参数,这里 z  z 是模型的隐变量。

写出对数似然函数:

这里写图片描述

高斯式解释:

统计学习方法(九)EM算法及其推广_第15张图片

如上图所示,紫色的线是我们的目标模型p(x| θ) 的曲线。

  1. 因为这个模型含有隐变量z,所以为了消除z的影响,就先做一个除了不含有z模型:r(x| θ),使得r(x| θ) ≤ p(x| θ)。(你先别管这个r怎么得到,方法之后会说,反正总能给一个r满足这个条件吧!),取一个值令 r(x|θ1) = p(x|θ1),如绿线所示,然后对r(x| θ) 求极大似然,得到r的极值点B,和此时r的参数 θ2,如红线所示。

  2. 这一步上图没有给出,就是:将r的 参数从θ1变成θ2,此时r的图像就向右上方移动,与p相交于A,此时仍然有r≤p。

  3. 重复第二步和第三部,直到收敛。

从上图可以看出,EM算法只能求得局部极值点。

你可能感兴趣的:(统计学习方法)