1. EM-ML algorithm
- formulation
- complete data : z=[y,w]
- observation : y
- hidden variable : w
- estimation : x
- Derivation
期望获得 ML 估计,但是实际中 p(y;x) 可能很难计算(比如 mixture gaussian model,相乘后再求和)
x^ML(y)=argxmaxlnp(y;x)
引入 complete data z=[y,w],令 y=g(z)
p(z;x)=y∑p(z∣y;x)p(y;x)=p(z∣g(z);x)p(g(z);x)x^ML(y)=argxmaxlnp(z;x)−lnp(z∣y;x)
由于 x^ML(y) 与 z 无关,因此右边可以对 p(z∣y;x′) 求期望
lnp(y;x)=lnp(z;x)−lnp(z∣y;x)=E[lnp(z;x)∣y=y;x′]−E[lnp(z∣y;x)∣y=y;x′]=U(x,x′)+V(x,x′)
其中 V(x,x′) 根据 Gibbs 不等式可以知道恒有 V(x,x′)≥V(x′,x′)
因此要使 lnp(y;x) 最大,只需要使 U(x,x′) 最大(可以放松要求,只要每次U(x,x′)增大就可以了,这就是Generalized EM)
E-step: compute U(x,x^n−1)=E[lnpz(z;x)∣y=y;x^n−1]
M-step: maximize x^n=argmaxxU(x,x^∣n−1)
EM-MAP 推导:待完成!
2. EM for linear exponential family
指数分布
p(z;x)=exp(xTt(z)−α(x)+β(z))U(x,xn)=E[lnp(z;x)∣y;xn]
EM 算法迭代过程中每次要找 U(x,x′) 的最大值点,因此有
∂x∂U(x,x^n)∣∣∣x=x^n+1=E[t(z)∣y;x^n]−E[α˙(x)∣y;x^n]=E[t(z)∣y;x^n]−α˙(x)∣x=x^n+1=0
同时由于 linear exponential family 本身的性质,有
E[t(z);x^n+1]=α˙(x)∣x=x^n+1
因此实际上每一步迭代过程中都满足
E[t(z);x^n+1]=E[t(z)∣y;x^n]
最终收敛于不动点
E[t(z);x^∗]=E[t(z)∣y;x^∗]
此时有
∂x∂lnp(y;x)=...=E[t(z)∣y;x^∗]−E[t(z);x^∗]=0
3. Empirical ditribution
- observation: y=[y1,...,yN]T
- empirical ditribution: p^y(b;y)=N1∑nIb(yn)
Porperties 1: N1∑nf(yn)=∑yf(y)p^y(y;y)
Properties 2: Let the set of models be P={py(⋅;x),x∈X}, then the ML can be written as
x^ML(y)=argp∈PminD(p^y(⋅;y)∣∣p)=argx∈XminD(p^y(⋅;y)∣∣p(⋅;x))
which is the reverse I-projection
Remark:
- 这个性质表明最大似然实际上是在找与经验分布最接近(相似)的分布对应的参数
-
给定经验分布(观察)后,实际上就相当于给定了一个线性族(想一下对应的 tk(y) 的如何表示,提示:用元素为1或0的矩阵),这个在此处适用,在后面对 pz 的约束也适用
- 求 ML 就是在求逆投影(reverse I-proj),这对后面理解 EM 算法的 alernating projcetions 有用
4. EM-ML Alternating projections
根据 #3 中的性质2可以获得 ML 的表达式,但是该式子过于复杂,考虑
DPI(Data processing inequality): y=g(z)
D(p(z)∣∣q(z))≥D(p(y)∣∣q(y))"="⟺qz(z)pz(z)=qy(g(z))py(g(z)) ∀z
因此根据(12)式要想最小化 D(p^y(⋅;y)∣∣p(y;x)) 可以考虑最小化 D(p^z(⋅;z)∣∣p(z;x))
因为 p(y;x) 的表达式很可能很复杂,但是 p(z;x) 可以简化很多
即最大似然转化为最小化
minD(p^z(⋅;z)∣∣p(⋅;x))
PZ(y)≜⎩⎨⎧p^Z(⋅):g(c)=y∑p^z(c)=p^y(b;y) ∀b∈y⎭⎬⎫
Remarks:这里最小化过程中对两个分布都要考虑:
- 由于 p^z 实际上在一定约束下(线性分布族,参考 #3 中的 reverse I-proj)可以任取,因此要优化 p^z 使散度最小;
- 由于 p(⋅;x) 实际上就是我们要求的东西(我们要找到一个 x 使观测值 y 的似然最大),因此也要优化 p(⋅;x) 使散度最小;

要想最小化 (14) 式,可以分解为 2 步:
- 第一步(I-projection)
p^z∗(⋅;x^(n−1))=p^z∈PZ^(y)argminD(p^z(⋅)∥pz(⋅;x^(n−1)))
- 第二步(reverse I-projection)
x^ML(n)=xargminD(p^z∗(⋅;x^(n−1))∥pz(⋅;x))
这实际上就是 EM-ML 算法,证明如下:
上面两步分别对应 EM 中的 E-step 和 M-step
E-step:
N1U(x,x^(n−1))=N1E[lnp(z;x)∣y;x^(n−1)]=N1n∑E[lnp(zn;x)∣y;x^(n−1)]=N1n∑z∑lnp(z;x)p(z∣yn;x^(n−1))=y∑p^y(y;y)z∑p(z∣y;x^(n−1))lnp(z;x)=y∑p^y(y;y)z∑p^y(g(z);y)p^∗(z;x^(n−1))lnpz(z;x)=z∑p^∗(z;x^(n−1))lnpz(z;x)=−D(p^∗(z;x^(n−1))∣∣p(z;x))−H(p^Z∗(z;x^(n−1)))
M-step:
Remarks:
- EM-ML 即在第二步中采用 ML 来估计 x,由于 ML 本身即与 reverse I-projection 等价,因此整体就是不断地在相互投影;
- 如果是 EM-MAP 就只需要将 M-step 中的 ML 估计换成 MAP 估计,但是由于 MAP 估计当中先验对于整个分布族会产生一个加权,计算复杂且没有闭式解

5. Remarks
EM 算法实质上可以看作一个升维的处理过。这是指将低维空间中的 Y 映射到高维空间 Z 中
- 根据 y 的 empirical distribution,在 PZ 中同样得到一个约束 z 的线性族
- 由预先定义的模型 p(z∣θ) 再指定另一个 PZ 中的集合,比如线性指数族
最终的目标是在 PZ 空间中获得一个最大似然估计,即 θ^ML=argminD(p^z∣∣p(z,θ))。
因此整个 EM 算法就是重复下面的过程
