132 Chapter 3. 基于词的机器翻译模型 肖桐 朱靖波
3.6 问题分析
IBM 模型是一个时代的经典,但也留下了一些值得思考的问题。这一方面体现
了科学技术发展需要一步步前行,而非简单的一蹴而就。另一方面也体现了机器
译问题的困难程度。下面对 IBM 存在的问题进行分析,同时给出一些解决问题的思
路,希望通过这些讨论可以使我们对机器翻译问题有更深层次的理解。
3.6.1 词对齐及对称化
IBM 的五型都基于个词的假
——
一个言单最多能对
齐到一个目标语言单词。这个约束大大化简了 IBM 模型的建模。最初,Brown 等人
提出这个假设可能是因为在法英翻译中一对多的对齐情况并不多见,这个假设带
的问题也不是那么严重。但是,在像汉英翻译这样的任务中,一个汉语单词对应
个英语单词的翻译很常见,这时 IBM 模型的词对齐假设就表现出了明显的问题。比
如在翻译 试一试。 “I will have a try .” 时,IBM 模型根本不能把单词
一试 对齐到三个单词 “have a try”,因而可能无法得到正确的翻译结果。
本质上说,IBM 模型词对齐的 不完整 问题是 IBM 型本身的缺陷。解决这
个问题有很多思路,第一种方法就是,反向训练后,合并源语言单词,然后再正
训练。这里用汉英翻译为例来解释这个方法。首先反向训练,就是把英语当作待
译语言,而把汉语当作目标语言进行训练(参数估计)这样可以得到一个词对齐结
(参数估计的中间结果)。在这个词对齐结果里面,一个汉语单词可对应多个英语
单词。之后,扫描每个英语句子,如果有多个英语单词对应同一个汉语单词,就
这些英语单词合并成一个英语单词。处理完之后,再把汉语当作源语言而把英语
作目标语言进行训练。这样就可以把一个汉语单词对应到合并的英语单词上。虽
从模型上看,还是一个汉语单词对应一个英语 单词但实质上已经把这个汉语单
词对应到多个英语单词上了。训练完之后,再利用这些参数进行翻译(解码)时,
能把一个中文单词翻译成多个英文单词了。但是反向训练后再训练也存在一些问题。
首先,合并英语单词会使数据变得更稀疏,训练不充分。其次,由于 IBM 模型的词
对齐结果并不是高精度的,利用它的词对齐结果来合并一些英文单词可能造成严
的错误,比如:把本来很独立的几个单词合在了一起。因此,此方法也并不完美。
体使用时还要考虑实际需要和问题的严重程度来决定是否使用这个方法。
另一种方法是双向对齐之后进行词对齐对称Symmetrization)。这个方法可
以在 IBM 词对齐的基础上获得对称的词对齐结果。思路很简单,用正向(汉语为源
语言,英语为目标语言)和反向(汉语为目标语言,英语为源语言)同时训练。这样
可以得到两个词对齐结果。然后利用一些启发性方法用这两个词对齐生成对称的
(比如, 并集交集 等)这样就可以得到包含一对多和多对多的词对齐结
果。比如,在基于短语的统计机器翻译中已经很成功地使用了这种词对齐信息进
短语的获取。直到今天,对称化仍然是很多自然语言处理系统中的一个关键步骤。
3.6 问题分析 133
3.6.2 Deciency
Deficiency 是指会把率分些根的源
字符串。如果用 P(well|t) 表示 P(s|t) 在所有的正确的(可以理解为语法上正确的)s
上的和,即
P(well|t) =
X
s is well formed
P(s|t) (3.71)
类似地, P(ill|t) 表示 P(s|t) 在所有的错误的(可以理解为语法上错误的)s
的和。如果 P(well|t) + P(ill|t) < 1就把剩余的部分定义为 P(failure|t)它的形式化
定义为,
P(failure|t) = 1 P(well|t) P(ill|t) (3.72)
本质上,模型 3 和模型 4 就是对应 P(failure|t) > 0 的情况。这部分概率是模型损失
掉的。有时候也把这类 Deficiency 问题称为 Technical Deficiency还有一种 Deficiency
问题被称作 Spiritually Deficiency它是指 P(well|t)+P(ill|t) = 1 P(ill|t) > 0 的情况。
模型 1 和模型 2 就有 Spiritually Deficiency 的问题。可以注意到,Technical Deficiency
只存在于模型 3 和模型 4 中,模型 1 和模型 2 并没有 Technical Deficiency 问题。根本
原因是模型 1 和模型 2 的词对齐是从源语言出发对应到目标语言,t s 的翻译过程
实际上是从单词 s
1
开始到单词 s
m
结束,依次把每个源语言单词 s
j
对应到唯一一个
目标语言位置。显然,这个过程能够保证每个源语言单词仅对应一个目标语言单词。
但是,模型 3 和模型 4 中对齐是从目标语言出发对应到源语言,t s 的翻译过程从
t
1
开始 t
l
结束,依次把目标语言单词 t
i
生成的单词对应到某个源语言位置上。但是
这个过程不能保证 t
i
中生成的单词所对应的位置没有被其他已经完成对齐的目标语
单词所生成的某个源语言单词对应过,因此也就产生了 Deficency 问题。
这里还要调的是,Technical Deficiency 是模 3 模型 4 是模型本的缺
的, 题。 Spiritually Defi
ciency 几乎是不能从模型上根本解决的,因对于任意一种语言都不能枚举所有的
句子(P(ill|t) 实际上是得不到的)
IBM 的模型 5 已经解决了 Technical Deficiency 题。不过模型 5 过于复杂。实
际上 Technical Deficiency 问题是不是需要解决,这一点在本节随后的内容中还要进
行讨论。Spiritually Deficiency 解决很困难,因为即使对于人来说也很难判断一个
句子是不是 良好 的句子。当然可以考虑用语言模型来缓解这个问题,不过由于在
翻译的时候源语言句子都是定义 良好 的句子,P(ill|t) P(s|t) 的影响并不大。
用输入的源语言句子 s 良好性 并不能解决 Technical Deficiency,因为 Technical
Deficiency 是模型的问题或者模型参数估计方法的问题。无论输入什么样的 s,模型
3 和模型 4 Technical Deficiency 问题都存在。
134 Chapter 3. 基于词的机器翻译模型 肖桐 朱靖波
3.6.3 句子长度
IBM 模型中,P(t)P(s|t) 会随着目标语言句子长度的增加而减少,因为这种生
成模型有多个概率化的因素组成,一般乘积项越多结果的值越小。这也就是说,IBM
模型会更倾向选择长度短一些的目标语言句子。显然这种对短句子的偏向性并不
我们所期望的。
这个问题在很多统计机器翻译系统中都存在,实际上也是一种系统偏置System
Bias的体现。为了消除这种偏置,可以通过在模型中增加一个短句子惩罚引子来抵
消掉模型对短句子的倾向性。比如,可以定义一个惩罚引子,它的值随着长度的
少而增加。不过,简单引入这样的惩罚因子会导致模型并不符合一个严格的噪声
道模型。它对应一个判别式框架的翻译模型,这部分内容会在下一章进行介绍。
3.6.4 其他问题
模型 5 的意义是什么?模型 5 的提出是为了消除 3 模型 4 Deficiency
问题。Deficiency 问题的本质是,P(s,a|t) 在所有合理的对齐上概率和不为 1。但是,
在统计机器翻译中更关心是哪个对 a 使 P(s,a|t) 到最大,即使 P(s, a|t) 符合
概率分布的定义,也并不影响我们寻找理想的对齐 a从工程的角度说,P(s, a|t)
归一并不是一个十分严重的问题。遗憾的是,实际上到现在为止有太多对 IBM 模型
3 和模型 4 中的 Deficiency 问题进行过系统的实验和分析,但对于这个问题到底有多
严重并没有定论。当然用模 5 是可以解决这个问题。但是如果用一个非常复杂的
模型去解决了一个并不产生严重后果的问题,那这个模型也就没有太大意义了(从
实践的角度)
概念cept.)的意义是什么?经过前面的分析可知,IBM 模型的词对齐模型使
用了 cept. 这个概念。但是,在 IBM 模型中使用的 cept. 最多只能对应一个目标语言
单词(模型并没有用到源语言 cept. 的概念)。因此可以直接用单词代替 cept.。这样,
即使不引入 cept. 的概念,也并不影响 IBM 模型的建模。实际上,cept. 的引入确实可
以帮助我们从语法和语义的角度解释词对齐过程。不过,这个方法在 IBM 模型中的
效果究竟如何还没有定论。