6. 基于扭曲度和繁衍率的模型
第五章展示了一种基于单词的翻译模型。这种模型的形式非常简单,而且其隐
含的词对齐信息具有较好的可解释性。不过,语言翻译的复杂性远远超出人们的想
象。语言翻译主要有两方面挑战
——
如何对“调序”问题进行建模以及如何对“一
对多翻译”问题进行建模。一方面,调序是翻译问题中所特有的现象,比如,汉语
到日语的翻译中,需要对谓词进行调序。另一方面,一个单词在另一种语言中可能
会被翻译为多个连续的词,比如,汉语“联合国”翻译到英语会对应三个单词“The
United Nations”。这种现象也被称作一对多翻译,它与句子长度预测有着密切的联系。
无论是调序还是一对多翻译,简单的翻译模型(如 IBM 模型 1)都无法对其进
行很好的处理。因此,需要考虑对这两个问题单独进行建模。本章将会对机器翻译
中两个常用的概念进行介绍
——
扭曲度(Distortion)和繁衍率(Fertility)。它们可
以被看作是对调序和一对多翻译现象的一种统计描述。基于此,本章会进一步介绍
基于扭曲度和繁衍率的翻译模型,建立相对完整的基于单词的统计建模体系。相关
的技术和概念在后续章节也会被进一步应用。
6.1 基于扭曲度的模型
下面将介绍扭曲度在机器翻译中的定义及使用方法。这也带来了两个新的翻译
模型
——
IBM 模型 2
[10]
和 HMM
[264]
。
180 Chapter 6. 基于扭曲度和繁衍率的模型 肖桐 朱靖波
6.1.1 什么是扭曲度
调序(Reordering)是自然语言翻译中特有的语言现象。造成这个现象的主要原
因在于不同语言之间语序的差异,比如,汉语是“主谓宾”结构,而日语是“主宾
谓”结构。即使在句子整体结构相似的语言上进行翻译,调序也是频繁出现的现象。
如图6.1所示,当一个主动语态的汉语句子翻译为一个被动语态的英语句子时,如果
直接顺序翻译,那么翻译结果“I with you am satisfied”很明显不符合英语语法。这
里就需要采取一些方法和手段在翻译过程中对词或短语进行调序,从而得到正确的
翻译结果。
源语
我
对
你
感到
满意
顺序翻译
I
with
you
am
satisfied
(a) 顺序翻译对齐结果
源语
我
对
你
感到
满意
调序翻译
I
am
satisfied with
you
(b) 调序翻译对齐结果
图 6.1 顺序翻译和调序翻译的实例对比
在对调序问题进行建模的方法中,最基本的是使用调序距离方法。这里,可以
假设完全进行顺序翻译时,调序的“代价”是最低的。当调序出现时,可以用调序相
对于顺序翻译产生的位置偏移来度量调序的程度,也被称为调序距离。图6.2展示了
翻译时两种语言中词的对齐矩阵。比如,在图6.2(a) 中,系统需要跳过“对”和“你”
来翻译“感到”和“满意”,之后再回过头翻译“对”和“你”,这样就完成了对单词
的调序。这时可以简单地把需要跳过的单词数看作一种距离。
可以看到,调序距离实际上是在度量目标语言词序相对于源语言词序的一种扭
曲程度。因此,也常常把这种调序距离称作扭曲度(Distortion)。调序距离越大对应
的扭曲度也越大。比如,可以明显看出图6.2(b) 中调序的扭曲度要比图6.2(a) 中调序
的扭曲度大,因此6.2(b) 实例的调序代价也更大。
在机器翻译中使用扭曲度进行翻译建模是一种十分自然的想法。接下来,会介
绍两个基于扭曲度的翻译模型,分别是 IBM 模型 2 和隐马尔可夫模型。不同于 IBM
6.1 基于扭曲度的模型 181
模型 1,它们利用了单词的位置信息定义了扭曲度,并将扭曲度融入翻译模型中,使
得对翻译问题的建模更加合理。
我
对
你
感到
满意
I
am
satisfied
with
you
(a) 对齐实例 1
他
每天
乘坐
地铁
去
上班
He
takes
the
subway
to
work
every
day
(b) 对齐实例 2
图 6.2 汉语到英语翻译的对齐矩阵
6.1.2 IBM 模型 2
对于建模来说,IBM 模型 1 很好地化简了翻译问题,但是由于使用了很强的假
设,导致模型和实际情况有较大差异。其中一个比较严重的问题是假设词对齐的生
成概率服从均匀分布。IBM 模型 2 抛弃了这个假设
[10]
。它认为词对齐是有倾向性的,
它与源语言单词的位置和目标语言单词的位置有关。具体来说,对齐位置 a
j
的生成
概率与位置 j、源语言句子长度 m 和目标语言句子长度 l 有关,形式化表述为:
P (a
j
|a
j−1
1
,s
j−1
1
,m,t) ≡ a(a
j
|j,m,l) (6.1)
这里还用第五章中的例子(图6.3)来进行说明。在 IBM 模型 1 中,“桌子”对齐
到目标语言四个位置的概率是一样的。但在 IBM 模型 2 中,“桌子”对齐到“table”
被形式化为 a(a
j
|j,m,l) = a(3|2, 3, 3),意思是对于源语言位置 2(j = 2)的词,如果
它的源语言和目标语言都是 3 个词(l = 3,m = 3),对齐到目标语言位置 3(a
j
= 3)
的概率是多少?因为 a(a
j
|j,m,l) 也是模型需要学习的参数,因此“桌子”对齐到不
同目标语言单词的概率也是不一样的。理想的情况下,通过 a(a
j
|j,m,l),“桌子”对
齐到“table”应该得到更高的概率。
s
1
: 在 s
2
: 桌子
s
3
: 上
t
1
:on
t
2
:the t
3
:table
t
0
图 6.3 汉译英句对及词对齐
IBM 模型 2 的其他假设均与模型 1 相同,即源语言长度预测概率及源语言单词
生成概率被定义为:
182 Chapter 6. 基于扭曲度和繁衍率的模型 肖桐 朱靖波
P (m|t) ≡ ε (6.2)
P (s
j
|a
j
1
,s
j−1
1
,m,t) ≡ f(s
j
|t
a
j
) (6.3)
把公式(6.1)、(6.2)和(6.3)重新带入公式 P (s,a|t) = P (m|t)
Q
m
j=1
P (a
j
|a
j−1
1
,s
j−1
1
,m,t)
P (s
j
|a
j
1
,s
j−1
1
,m,t) 和 P (s|t) =
P
a
P (s,a|t),可以得到 IBM 模型 2 的数学描述:
P (s|t) =
X
a
P (s,a|t)
=
l
X
a
1
=0
···
l
X
a
m
=0
ε
m
Y
j=1
a(a
j
|j,m,l)f(s
j
|t
a
j
) (6.4)
类似于模型 1,模型 2 的表达式(6.4)也能被拆分为两部分进行理解。第一部分:
遍历所有的 a;第二部分:对于每个 a 累加对齐概率 P (s, a|t),即计算对齐概率
a(a
j
|j,m,l) 和单词翻译概率 f(s
j
|t
a
j
) 对于所有源语言位置的乘积。
同样的,模型 2 的解码及训练优化和模型 1 的十分相似,在此不再赘述,详细
推导过程可以参看第五章5.5小节解码及计算优化部分。这里直接给出 IBM 模型 2 的
最终表达式:
P (s|t) = ε
m
Y
j=1
l
X
i=0
a(i|j,m,l)f(s
j
|t
i
) (6.5)
6.1.3 隐马尔可夫模型
IBM 模型把翻译问题定义为生成词对齐的问题,模型翻译质量的好坏与词对齐
有着非常紧密的联系。IBM 模型 1 假设对齐概率仅依赖于目标语言句子长度,即对
齐概率服从均匀分布;IBM 模型 2 假设对齐概率与源语言、目标语言的句子长度以
及源语言位置和目标语言位置相关。虽然 IBM 模型 2 已经覆盖了一部分词对齐问题,
但是该模型只考虑到了单词的绝对位置,并未考虑到相邻单词间的关系。图6.4 展示
了一个简单的实例,可以看到的是,汉语的每个单词都被分配给了英语句子中的每
一个单词,但是单词并不是任意分布在各个位置上的,而是倾向于生成簇。也就是
说,如果源语言的两个单词位置越近,它们的译文在目标语言句子中的位置也越近。
s
1
: 我
s
2
: 对
s
3
: 你 s
4
: 感到
s
5
: 满意
t
1
:I
t
2
:am
t
3
:satisfied t
4
:with
t
5
:you
图 6.4 汉译英句对及对齐
6.1 基于扭曲度的模型 183
针对此问题,基于 HMM 的词对齐模型抛弃了 IBM 模型 1-2 的绝对位置假设,将
一阶隐马尔可夫模型用于词对齐问题
[264]
。HMM 词对齐模型认为,单词与单词之间
并不是毫无联系的,对齐概率应该取决于对齐位置的差异而不是本身单词所在的位
置。具体来说,位置 j 的对齐概率 a
j
与前一个位置 j −1 的对齐位置 a
j−1
和译文长
度 l 有关,形式化的表述为:
P (a
j
|a
j−1
1
,s
j−1
1
,m,t) ≡ P (a
j
|a
j−1
,l) (6.6)
这里用图6.4的例子对公式进行说明。在 IBM 模型 1-2 中,单词的对齐都是与单
词所在的绝对位置有关。但在 HMM 词对齐模型中,“你”对齐到“you”被形式化为
P (a
j
|a
j−1
,l) = P (5|4, 5),意思是对于源语言位置 3(j = 3) 上的单词,如果它的译文
是第 5 个目标语言单词,上一个对齐位置是 4(a
2
= 4),对齐到目标语言位置 5(a
j
= 5)
的概率是多少?理想的情况下,通过 P (a
j
|a
j−1
,l),“你”对齐到“you”应该得到更
高的概率,并且由于源语言单词“对”和“你”距离很近,因此其对应的对齐位置
“with”和“you”的距离也应该很近。
把公式
P
(
s
j
|
a
j
1
,s
j−1
1
,m,t
)
≡
f
(
s
j
|
t
a
j
)
和
(
6.6)重新带入公式 P (s,a|t) = P (m|t)
Q
m
j=1
P (a
j
|a
j−1
1
,s
j−1
1
,m,t)P (s
j
|a
j
1
,s
j−1
1
,m,t) 和 P ( s | t) =
P
a
P (s,a|t), 可得 HMM 词
对齐模型的数学描述:
P (s|t) =
X
a
P (m|t)
m
Y
j=1
P (a
j
|a
j−1
,l)f (s
j
|t
a
j
) (6.7)
此外,为了使得 HMM 的对齐概率 P ( a
j
|a
j−1
,l) 满足归一化的条件,这里还假设
其对齐概率只取决于 a
j
−a
j−1
,即:
P (a
j
|a
j−1
,l) =
µ(a
j
−a
j−1
)
P
l
i=1
µ(i −a
j−1
)
(6.8)
其中,µ(·) 是隐马尔可夫模型的参数,可以通过训练得到。
需要注意的是,公式(6.7)之所以被看作是一种隐马尔可夫模型,是由于其形式
与标准的一阶隐马尔可夫模型无异。P (a
j
|a
j−1
,l) 可以被看作是一种状态转移概率,
f(s
j
|t
a
j
) 可以被看作是一种发射概率。关于隐马尔可夫模型具体的数学描述也可参
考第三章中的相关内容。