FR-ENG 和 ENG-FR 的统计机器翻译词对齐:什么是 p(e) 和 p(f)?

数据挖掘 机器学习 可能性 机器翻译 马尔可夫隐藏模型 期望最大化
2022-03-09 01:03:51

我目前正在尝试实施这篇论文,但我正在努力理解这里的一些数学。我很确定我了解如何实现 E-step,但是对于 M-step,我对如何计算 M-step 感到困惑。它在第 3.1 节之前说p1(x,z;θ1)=p(e)p(a,f|e;θ1), 然后同样p2但与ef交换了。第二部分对我来说很有意义,但什么是p(e)或者p(f)? 据我了解,e,f是双文本中的句子。那么我们如何计算一个句子的概率呢?

前面说p(e)p(f)是不影响优化问题的任意分布,但是我们如何计算p1(x,z;θ1)?

谢谢!

1个回答

你是对的p(e)是英文句子的概率。估计一个句子的概率是通过语言模型来实现的。

这种机器翻译模型被称为噪声通道模型嘈杂的通道模型说,给定一个法语句子f,它最好的英文翻译是

e=argmaxeEp(e)p(f|e)

在这个等式中p(e)是语言模型。回到 IBM 模型(基于噪声通道方法)的时代,它通常是基于 n-gram 的语言模型,计算为(假设 bigram)

p(e1e2...en)=p(e1|<s>)p(e2|e1)p(e3|e2)...p(</s>|en)

p(f|e)是需要使用EM算法求解的翻译模型。在 EM 算法内部,您不会更新语言模型参数,所以是的,p(e)p(f)不影响优化问题