572 Chapter 16. 低资源神经机器翻译 肖桐 朱靖波
心思路。这个方案最简单的实现就是借助已经构建的无监督统计机器翻译模型,用
它产生伪双语数据来训练神经机器翻译模型,然后进行迭代回译来进行数据优化
[992]
。
这个方法的优点是直观,并且性能稳定,容易调试(所有模块都互相独立)。缺点是
复杂繁琐,涉及许多超参数调整工作,而且训练代价较大。
2. 基于无监督词典归纳的方法
另一个思路是直接从无监督词典归纳中得到神经机器翻译模型,从而避免繁琐
的无监督统计机器翻译模型的训练,同时也避免神经机器翻译模型继承统计机器翻
译模型的错误。这种方法的核心就是把翻译看成一个两阶段的过程:
• 首先,无监督词典归纳通过双语词典把一个源语言句子转换成一个不通顺但是
意思完整的目标语言句子。
• 然后,把这样一个不通顺的句子改写成一个流畅的句子,同时保留原来的含义,
最后达到翻译的目的。
而第二阶段的改写任务其实也是一个特殊的翻译任务,只不过现在的源语言和
目标语言是使用不同的方式表达的同一种语言的句子。因此可以使用神经机器翻译
模型来完成这个任务,而且由于这里不涉及双语数据而只需要单语数据,模型的训
练也将是无监督的。这样的方法不再需要无监督统计机器翻译,并且适应能力很强。
对于新语种,不需要重新训练神经机器翻译模型,只需要训练无监督词典归纳进行
词的翻译,再使用相同的模型进行改写。
但是,目前训练数据需要使用其他语种的双语数据来进行构造(把源语言句子
里每个词使用双语词典进行翻译作为输入,输出的目标语言句子不变)。虽然可以通
过把单语句子根据规则或者随机进行打乱来生成训练数据,但是这些句子与真实的
句子差异较大,导致训练-测试不一致的问题。而且这样一个两阶段的过程会产生错
误传播的问题,比如无监督词典归纳对一些词进行了错误的翻译,那么这些错误的
翻译会被送下一阶段进行改写,因为翻译模型这时候已经无法看到源语言句子来进
行修正,所以最终的结果将继承无监督词典归纳的错误
[993]
。
3. 更深层的融合
为了获得更好的神经机器翻译模型,可以对训练流程和模型做更深度的整合。第
十章已经介绍,神经机器翻译模型的训练包含两个阶段:初始化和优化。而无监督神
经机器翻译的核心思路也对应这两个阶段,因此可以考虑在模型的初始化阶段使用
无监督方法提供初始的监督信号,然后不但优化模型的参数,还优化训练使用的数
据,从而避免流水线带来的错误传播。其中初始的监督信号可以通过两种方法提供
给模型。一种是直接使用无监督方法提供最初的伪双语数据,然后训练最初的翻译
模型。另一种则是借助无监督方法来初始化模型,得到最初的翻译模型后,直接使
用初始化好的翻译模型产生伪双语数据,然后训练自己,如图16.18所示。图16.18(a)
的一个简单实现是利用无监督词典归纳得到词典,用这个词典对单语数据进行逐词