162 Chapter 5. 基于词的机器翻译建模 肖桐 朱靖波
5.4 统计机器翻译的三个基本问题
公式(5.17)给出了统计机器翻译的数学描述。为了实现这个过程,面临着三个基
本问题:
• 建模(Modeling):如何建立 P (s|t) 和 P (t) 的数学模型。换句话说,需要用可
计算的方式对翻译问题和语言建模问题进行描述,这也是最核心的问题。
• 训练(Training):如何获得 P (s|t) 和 P (t) 所需的参数。即从数据中得到模型
的最优参数。
• 解码(Decoding):如何完成搜索最优解的过程。即完成 arg max。
为了理解以上的问题,可以先回忆一下5.2.4小节中的公式(5.11),即 g(s,t) 函数
的定义,它用于评估一个译文的好与坏。如图5.13所示,g(s,t) 函数与公式(5.17)的建
模方式非常一致,即 g(s, t) 函数中红色部分描述译文 t 的可能性大小,对应翻译模型
P (s|t);蓝色部分描述译文的平滑或流畅程度,对应语言模型 P (t) 。尽管这种对应并
不十分严格的,但也可以看出在处理机器翻译问题上,很多想法的本质是一样的。
g(s, t)
=
Q
(j,i)∈
ˆ
A
P (s
j
,t
i
)
× P
lm
(t)
P (s|t)
翻译模型
P (t)
语言模型
图 5.13 IBM 模型与公式(5.11)的对应关系
但 g(s,t) 函数的建模很粗糙,因此下面将介绍的 IBM 模型对问题有着更严谨的
定义与建模。对于语言模型 P (t) 和解码过程在前面的内容中都有介绍,所以本章的
后半部分会重点介绍如何定义翻译模型 P (s|t) 以及如何训练模型参数。
5.4.1 词对齐
IBM 模型的一个基本的假设是词对齐假设。词对齐描述了源语言句子和目标语
句子之间单词级别的对应。具体来说,给定源语句子 s = {s
1
...s
m
} 和目标语译文
t = {t
1
...t
l
},IBM 模型假设词对齐具有如下两个性质。
• 一个源语言单词只能对应一个目标语言单词。如图5.14所示,(a) 和 (c) 都满足
该条件,尽管 (c) 中的“谢谢”和“你”都对应“thanks”,但并不违背这个约束。
而 (b) 不满足约束,因为“谢谢”同时对应到了两个目标语单词上。这个约束条
件也导致这里的词对齐变成一种非对称的词对齐(Asymmetric Word Alignment)
,因为它只对源语言做了约束,但是目标语言没有。使用这样的约束的目的是
为了减少建模的复杂度。在 IBM 模型之后的方法中也提出了双向词对齐,用
于建模一个源语言单词对应到多个目标语单词的情况
[242]
。
• 源语言单词可以翻译为空,这时它对应到一个虚拟或伪造的目标语单词 t
0
。在
图5.15所示的例子中,“在”没有对应到“on the table”中的任意一个词,而是把