192 Chapter 6. 基于扭曲度和繁衍率的模型 肖桐 朱靖波
6.3 解码和训练
与 IBM 模型 1 一样,IBM 模型 2-5 和隐马尔可夫模型的解码可以直接使用第五
章所描述的方法。基本思路与第二章所描述的自左向右搜索方法一致,即:对译文
自左向右生成,每次扩展一个源语言单词的翻译,即把源语言单词的译文放到已经
生成的译文的右侧。每次扩展可以选择不同的源语言单词或者同一个源语言单词的
不同翻译候选,这样就可以得到多个不同的扩展译文。在这个过程中,同时计算翻
译模型和语言模型的得分,对每个得到的译文候选打分。最终,保留一个或者多个
译文。这个过程重复执行直至所有源语言单词被翻译完。
类似的,IBM 模型 2-5 和隐马尔可夫模型也都可以使用期望最大化(EM)方法
进行模型训练。相关数学推导可参考附录B的内容。通常,可以使用这些模型获得双
语句子间的词对齐结果,比如使用 GIZA++ 工具。这时,往往会使用多个模型,把
简单的模型训练后的参数作为初始值传给后面更加复杂的模型。比如,先用 IBM 模
型 1 训练,之后把参数送给 IBM 模型 2,再训练,之后把参数送给隐马尔可夫模型
等。值得注意的是,并不是所有的模型使用 EM 算法都能找到全局最优解。特别是
IBM 模型 3-5 的训练中使用一些剪枝和近似的方法,优化的真实目标函数会更加复
杂。不过,IBM 模型 1 是一个凸函数(Convex Function),因此理论上使用 EM 方法
能够找到全局最优解。更实际的好处是,IBM 模型 1 训练的最终结果与参数的初始
化过程无关。这也是为什么在使用 IBM 系列模型时,往往会使用 IBM 模型 1 作为起
始模型的原因。