一
机器翻译中要计算未对齐句对的翻译概率,我们可以采用EM算法获取
P(f|e) =Sigma(P(a, f|e)),一共有如下3种对齐方式
初始化设定 t(x|b)=t(x|c)=t(y|b)=t(y|c)=1/2
对齐1:p(a,f|e)=1/2*1/2=1/4
对齐2:p(a,f|e)=1/2*1/2=1/4
对齐3:p(a,f|e)=1/2
继续计算
对齐1:p(a|e,f)=(1/4)/(1/4+1/4)=1/2
对齐2:p(a|e,f)=(1/4)/(1/4+1/4)=1/2
对齐3:p(a|e,f)=(1/2)/(1/2)=1
tc(x|b)=1/2
tc(x|c)=1/2
tc(y|b)=1+1/2=3/2
tc(y|c)=1/2
完成E步骤,利用E步骤获取的信息重新估计参数
t(x|b)=(1/2)/(1/2+3/2)=1/4
t(x|c)=(1/2)/(1/2+1/2)=1/2
t(y|b)=(3/2)/(1/2+3/2)=3/4
t(y|c)=(1/2)/(1/2+1/2)=1/2
完成M步骤,重复上面的EM步骤,直至收敛
以上只是简单的EM算法的使用,在机器翻译,语言识别等领域应用比较广泛,多用于训练。
二
請按照IBM Model 1及EM algorithm,計算expectation step的c,和maximization step的t,並假設的常數項為1,即。
目前t(e | f) :
e | t(e|這) | t(e|小孩) |
the | 0.7 | 0.1 |
child | 0.05 | 0.8 |
Alignments:
Counts:
e | c(e|這) | c(e|小孩) |
the | 0.876 | 0.125 |
child | 0.0589 | 0.942 |
重新估計後的t(e | f) :
e | t(e|這) | t(e|小孩) |
the | 0.937 | 0.117 |
child | 0.063 | 0.883 |