Andrew Ng机器学习课程笔记(十三)之无监督学习之EM算法

本文介绍了Jensen不等式的概念及其在凸函数和凹函数中的应用,并详细阐述了Expectation-Maximization (EM) 算法的工作原理,包括问题定义、形式化过程、推导过程以及算法的收敛性证明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Preface

Jensen’s Inequality(Jensen不等式)
Expectation-Maximization Algorithm(EM算法)

Jensen’s Inequality

对于凸函数

f(x) f ( x ) 为一个凸函数,且如果它有二阶导数,其二阶导数恒大于等于0( f(x)′′0 f ( x ) ″ ≥ 0 )。令 x x 为一个随机变量,那么:

E[f(x)]f(EX)

这个不等式的含义如下图所示:
这里写图片描述
我们可以进一步推导出,如果 f(x)′′>0 f ( x ) ″ > 0 ,即 f(x) f ( x ) 为一个严格的凸函数。那么:

E[f(x)]=f(EX)x1X=EX1 E [ f ( x ) ] = f ( E X ) ⟺ x 为常量的概率为1 ⟺ X = E X 的概率为1

对于凹函数

如果 f(x)′′0 f ( x ) ″ ≤ 0 ,即 f(x) f ( x ) 为一个凸函数。那么:

f(EX)E[f(x)] f ( E X ) ≥ E [ f ( x ) ]

Expectation-Maximization Algorithm

问题定义

假设训练集 {x(1),x(2),...,x(m)} { x ( 1 ) , x ( 2 ) , . . . , x ( m ) } 是由m个独立的无标记样本构成。我们有这个训练集的概率分布模型 p(x,z;θ) p ( x , z ; θ ) ,但是我们只能观察到 x x 。我们需要使参数θ的对数似然性最大化,即:

argmaxθl(θ)=argmaxθmi=1logp(x(i);θ)=argmaxθmi=1logzp(x(i),z(i);θ) arg max θ l ( θ ) = arg max θ ∑ m i = 1 l o g p ( x ( i ) ; θ ) = arg max θ ∑ m i = 1 l o g ∑ z p ( x ( i ) , z ( i ) ; θ )

形式化过程

EM算法的过程大致如下:

首先,初始化 θ(0) θ ( 0 ) ,调整 Q(z) Q ( z ) 使得 J(Q,θ(0)) J ( Q , θ ( 0 ) ) θ(0) θ ( 0 ) 相等,然后求出 J(Q,θ(0)) J ( Q , θ ( 0 ) ) 使得到最大值的 θ(1) θ ( 1 ) ;固定 θ(1) θ ( 1 ) ,调整 J(Q,θ(1)) J ( Q , θ ( 1 ) ) ,使得 J(Q,θ(1)) J ( Q , θ ( 1 ) ) θ(1) θ ( 1 ) 相等,然后求出 J(Q,θ(1)) J ( Q , θ ( 1 ) ) 使得到最大值的 θ(2) θ ( 2 ) ;……;如此循环,使得 l(θ) l ( θ ) 的值不断上升,直到k次循环后,求出了 l(θ) l ( θ ) 的最大值 l(θ(k)) l ( θ ( k ) )

这里写图片描述

推导过程

在问题定义中我们知道:

argmaxθl(θ)=argmaxθmi=1logp(x(i);θ)=argmaxθmi=1logzp(x(i),z(i);θ) arg max θ l ( θ ) = arg max θ ∑ m i = 1 l o g p ( x ( i ) ; θ ) = arg max θ ∑ m i = 1 l o g ∑ z p ( x ( i ) , z ( i ) ; θ )

接下来我们正式开始EM算法的推导:

假设每一个 z(i) z ( i ) 的分布函数为 Qi Q i 。故有 ZQi(z)=1,Qi(z)0 ∑ Z Q i ( z ) = 1 , Q i ( z ) ≥ 0 。所以:

l(θ)=ilogz(i)p(x(i),z(i);θ)=ilogz(i)Qi(z(i))p(x(i),z(i);θ)Qi(z(i))iz(i)Qi(z(i))logp(x(i),z(i);θ)Qi(z(i))(1)(2)(3) l ( θ ) = ∑ i l o g ∑ z ( i ) p ( x ( i ) , z ( i ) ; θ ) ( 1 ) = ∑ i l o g ∑ z ( i ) Q i ( z ( i ) ) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) ( 2 ) ≥ ∑ i ∑ z ( i ) Q i ( z ( i ) ) l o g p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) ( 3 )

对于上述公式中的第(2)步到第(3)步的理解:

  1. 首先由于数学期望公式 Y=g(X),g(X);E(Y)=E(g(x))=k=1g(xk)pk Y = g ( X ) , g ( X ) 为 连 续 函 数 ; E ( Y ) = E ( g ( x ) ) = ∏ k = 1 ∞ g ( x k ) p k
    z(i)Qi(z(i))p(x(i),z(i);θ)Qi(z(i)) ∑ z ( i ) Q i ( z ( i ) ) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) 可以看做随机变量为 Qi(z(i)) Q i ( z ( i ) ) 概率分布函数为 p(x(i),z(i);θ)Qi(z(i)) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) 的期望,即为:
    z(i)Qi(z(i))p(x(i),z(i);θ)Qi(z(i))=E(p(x(i),z(i);θ)Qi(z(i))) ∑ z ( i ) Q i ( z ( i ) ) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) = E ( p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) )
  2. 由Jensen不等式,且 f(x)=logx,f′′(x)=1x2<0 f ( x ) = l o g x , f ″ ( x ) = − 1 x 2 < 0 ,所以:
    f(Ez(i)Qi[p(x(i),z(i);θ)Qi(z(i))])Ez(i)Qi[f(p(x(i),z(i);θ)Qi(z(i)))] f ( E z ( i ) ∼ Q i [ p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) ] ) ≥ E z ( i ) ∼ Q i [ f ( p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) ) ]

所以参数 θ θ 的对数似然性就有了一个下界,我们回想在EM算法的形式化过程中的不断推进得到的下界不断上升的过程,在这里我们也希望得到一个更加紧密的下界,也就是使等号成立的情况。
根据Jensen不等式,所以有:

p(x(i),z(i);θ)Qi(z(i))=c(c) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) = c ( c 为 常 数 )

所以:
Qi(z(i))=cp(x(i),z(i);θ)(c) Q i ( z ( i ) ) = c ∗ p ( x ( i ) , z ( i ) ; θ ) ( c 为 常 数 )

因为 ZQi(z)=1,Qi(z)0 ∑ Z Q i ( z ) = 1 , Q i ( z ) ≥ 0 ,所以:
ZQi(z(i))=Zcp(x(i),z(i);θ)=1(c) ∑ Z Q i ( z ( i ) ) = ∑ Z c ∗ p ( x ( i ) , z ( i ) ; θ ) = 1 ( c 为 常 数 )

所以:
c=1Zp(x(i),z(i);θ)(c) c = 1 ∑ Z p ( x ( i ) , z ( i ) ; θ ) ( c 为 常 数 )

所以:
Qi(z(i))=p(x(i),z(i);θ)zp(x(i),z;θ)=p(x(i),z(i);θ)p(x(i);θ)=p(z(i)|x(i);θ) Q i ( z ( i ) ) = p ( x ( i ) , z ( i ) ; θ ) ∑ z p ( x ( i ) , z ; θ ) = p ( x ( i ) , z ( i ) ; θ ) p ( x ( i ) ; θ ) = p ( z ( i ) | x ( i ) ; θ )

EM算法

EM算法主要有两个步骤,EM算法的具体内容如下:、
Repeat until convergence{

  1. (E-step) for each i, set
    Qi(z(i)):=p(z(i)|x(i);θ) Q i ( z ( i ) ) := p ( z ( i ) | x ( i ) ; θ )
  2. (M-step) set
    θ:=argmaxθiz(i)Qi(z(i))logp(x(i),z(i);θ)Qi(z(i)) θ := arg max θ ∑ i ∑ z ( i ) Q i ( z ( i ) ) l o g p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) )

收敛性证明

我们可以定义一个优化目标

J(Q,θ)=iz(i)Qi(z(i))logp(x(i),z(i);θ)Qi(z(i)) J ( Q , θ ) = ∑ i ∑ z ( i ) Q i ( z ( i ) ) l o g p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) )

使用Jensen不等式,我们可以推导出:
l(θ)J(Q,θ) l ( θ ) ≥ J ( Q , θ )

回顾前面所学的知识,EM 可以看作是函数 J 的坐标上升法,E步固定θ优化Q,M 步固定Q优化θ。 再利用相关知识便可以证明。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值