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]
。比如,在基于短语的统计机器翻译中已经很成功地使用了这种词对齐信息
进行短语的获取。直到今天,对称化仍然是很多自然语言处理系统中的一个关键步
骤。