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