在感性地理解EM算法1中介绍了一个很普遍的例子讲解EM算法,同时将理论公式具体化,那么下来再讲解一个相对较难的例子,出自李航老师的统计学方法中EM算法的第一个例子,和上一个讲解的方式比较一致:
题目为:
首先给出一个假设,为了和书上的结果保持一致,我们也假设:
π
0
\pi_0
π0=
p
0
p_0
p0=
q
0
q_0
q0=0.5
首先明确此时的隐变量z,z=1表示硬币A是正面,z=0表示硬币A是反面,先明确我们希望最大化的目标:
E步,明确我们想要求解的下届函数Q(
θ
0
\theta_0
θ0),也就是要求P(z|Y,
θ
0
\theta_0
θ0),
θ
0
\theta_0
θ0={
p
0
p_0
p0,
q
0
q_0
q0}根据贝叶斯:
此处带入这个具体的例子有,假设观测值Y={
y
0
y_0
y0,
y
1
y_1
y1,…
y
9
y_9
y9}共十次观测值:
由于此时
π
0
\pi_0
π0=
p
0
p_0
p0=
q
0
q_0
q0=0.5,所以有
同理有:P(z=0|
y
i
y_i
yi,
θ
0
\theta_0
θ0)=P(z=1|
y
i
y_i
yi,
θ
0
\theta_0
θ0)=0.5
然后到了M步:
此时的下届函数Q(
θ
\theta
θ,
θ
0
\theta_0
θ0)为:
然后求可以使得此时的Q(
θ
\theta
θ,
θ
0
\theta_0
θ0)最大的
θ
\theta
θ值:分别对
π
\pi
π,
p
p
p 和
q
q
q求导:
所以有
π
1
\pi_1
π1=0.5,
p
1
p_1
p1=
q
1
q_1
q1=0.6
如果按照纯理论的方式推到一遍有:
E步:
M步:
然后分别对
π
\pi
π,
p
p
p 和
q
q
q求导:
所以有: