em算法详细例子及推导_统计学习方法--EM算法

EM算法是一种算法,不是模型,该算法用于解决含有隐变量的的概率模型的参数估计问题,利用极大似然估计的思想求优。

1 通过ELBO+KL divergence推导出EM算法

从而EM算法的目标是:

其中,X是观测数据(observed data),

是参数,包含的隐变量Z(latent variable)。(X,Z)称为完整数据(complete data)。

但有时候

无法得到,因为x较为复杂,从而想着是不是有个变量对x产生影响,或者说存在一个变量z对x产生影响,从而将z求解问题拆分成
的问题求解。这实际上是将x的求解分解出离,简单化。

将求解目标转换成隐变量的形式:

两边分别对隐变量分布q(z)求期望:

其中

从而右边对因变量分布q(z)求期望:

其中

称为ELBO,evidence lower bound(证据下界),
是KL散度,

因为KL值取值为[0,1],从而

。当前仅当KL(p || q)=0时,即

时,
。注意在推导过程中,假设KL(p || q)能够为0。

从而可以将ELBO看作

的下界,当逐步提高这个下界值时,相当于增大了

,从而对ELBO求期望最大化。

从而,

因为这里假设KL=0,从而

,所以q(z)可以用
取代,此时这里的
是t时刻的
值,是一个常量:

在倒数第二步的时候,可以将

是因为我们对
求极大值,而该式子是一个常数项,从而可以忽略。

这样最就得到了EM的表达式:

其中,E-step要做的事情是:将t时刻的

的期望表达式写出来:

M-step就是最大化期望:

从而达到迭代攀爬的目的:

2 通过ELBO+Jensen inequlity推导出EM算法

Jensne inequlity,琴生不等式。意思是对于凸函数而言,函数的期望大于期望的函数值。我个人没有去了解它的证明。这里就直接照抄白板的解说过程:

3673484b47045baa291ef1979d9cfced.png

如上图,f(x)是凸函数,在f(x)上存在两点a,b。其中在a,b之间有一点c,那么他们之间满足:

其中,

当t = 1/2 时:

。前者是先求期望,再求函数值;后者是先求函数值,再求他们的期望。从而:

那么接下来将琴生不等式运用到EM公式推导过程中:

什么时候

相等呢?当且仅当
的比值为一个常数时,该等式成立。

假设

,两边对z求积分得:

其中

可以看作是
的边缘概率;
可以看作是c的边缘概率,从而:

将(2)带入(1)的:

注意,(3)中

是一个常数值,比如当
时,则(3)中的theta就是t时刻的值

将(3)带入(Ⅰ)得:

从而,就得到了EM公式:

其中,z是隐变量,x是观测数据,

是上一时刻t的参数,是一个常量,
是关于z的后验。

根据白板大佬说的,吴恩达老师cs229课程中关于EM的推导也是用该方法进行推导的。

3 EM算法的收敛性

EM算法的收敛性主要是通过证明

它来获得的。

首先:

两边关于

求期望:

记:

其中,

是一个变量,我们可以取任意值,这里就取值为

现在,我们想要证明的是EM算法的收敛性,可分别证明:

关于(4),由于

使
达到极大值,从而:

关于(5):

其中,

是利用琴声不等式得到的。

从而

联立(6)和(7),关于EM的收敛性的证明就完成了。

4 广义EM

在2和3中关于EM表达式推导过程,都提到了一个假设,即

。但这个假设有可能是不成立的,是intractable问题。为什么呢?这还需要回到生成模型,对于大多数情况下,后验是求解不出来的。从而就有了变分推断,变分推断就是要解决后验求解不出来的问题,还有蒙特卡洛。

那如何解决这个问题呢?

既然

很可能相等,即KL(p||q)>0,那么我们就
,这样当KL(p||q)无限接近于0时,q(z)分布与
分布就无限接近。从而广义EM算法的求解步骤如下:

  1. 固定
  2. 固定
    ,

广义EM表达式:

其中,

可以看到,

是熵,表示为H[q]。

从而

与狭义的EM表达式对比:

,我们可以发觉它多了熵这部分的信息。这是因为在狭义中
是常数项,而在广义中用的是

还有EM在GMM的应用,后面补充。


这一章节不写回顾主要是因为不熟。。。

该文章是从白板系列那搬过来的(衷心的感谢!)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值