机器翻译 | Improving Neural Machine Translation Models with Monolingual Data论文翻译

题目

基于单语数据的神经机器翻译模型改进

摘要

神经机器翻译(NMT)在仅使用并行数据进行训练的情况下,在几种语言对上取得了最先进的表现。目标侧单语数据在提高基于短语的统计机器翻译的流畅性方面起着重要作用,我们研究了单语数据在NMT中的应用。与之前将NMT模型与单独训练的语言模型相结合的工作相反,我们注意到编码器-解码器NMT架构已经具有学习与语言模型相同信息的能力,并且我们探索了在不改变神经网络架构的情况下使用单语言数据进行训练的策略通过将单语训练数据与自动反向翻译配对,我们可以将其视为额外的并行训练数据,并且我们在WMT 15任务英语↔德语(+ 2.8-3.7 BLEU)和低资源IWSLT 14任务土耳其语→英语(+ 2.1-3.4 BLEU)上获得了重大改进,获得了新的最先进的结果。我们还表明,对领域内单语言并行数据的微调对IWSLT 15任务英语→德语有实质性的改进

1、介绍

神经机器翻译(NMT)在仅使用并行数据进行训练的情况下,在几种语言对上取得了最先进的表现。目标端单语数据在提高基于短语的统计机器翻译的流畅性方面起着重要作用,本文研究了神经机器翻译中单语数据的使用。

自第一批IBM模型出现以来,单语数据训练的语言模型在统计机器翻译中发挥了核心作用(Brown et al., 1990)。它们的重要性有两个主要原因。首先,基于词的翻译模型和基于短语的翻译模型做出了很强的独立性假设,翻译单元的概率独立于上下文估计,语言模型通过做出不同的独立性假设,可以模拟这些翻译单元的匹配程度。其次,目标语言中可用的单语言数据的数量通常远远超过并行数据的数量,并且当使用更多数据或与翻译任务更相似的数据进行训练时,模型通常会得到改进。

神经机器翻译的(注意)编码器-解码器架构(Sutskever et al., 2014;Bahdanau等人,2015),解码器本质上是一个RNN语言模型,也以源上下文为条件,因此第一个基本原理,添加语言模型来补偿翻译模型的独立性假设,并不适用。然而,数据参数在NMT中仍然有效,我们期望单语言数据在并行数据稀疏或不适合翻译任务(例如,由于域不匹配)的情况下特别有用。

与之前的工作(将单独训练的RNN语言模型集成到NMT模型中)相比(g lehre等人,2015),我们探索了在不改变神经网络架构的情况下将单语言训练数据纳入训练过程的策略。这使得我们的方法适用于不同的NMT架构。

本文的主要贡献如下:

  • 通过将单语目标句子混合到训练集中,可以提高神经机器翻译系统的机器翻译质量。
  • 我们研究了两种不同的方法来填充单语训练实例的源端:使用虚拟源句子,以及使用通过反向翻译获得的源句子,我们称之为合成。我们发现后者更有效。
  • 我们通过对单语言或并行域内数据进行微调,成功地使NMT模型适应新的领域

2、神经机器翻译

我们遵循Bahdanau等人(2015)的神经机器翻译架构,我们将在这里简要总结。然而,我们注意到我们的方法并不特定于这个体系结构。

神经机器翻译系统是用循环神经网络实现的编码器-解码器网络。

详细的描述可以在(Bahdanau et al., 2015)中找到。在随机梯度下降的并行语料库上进行训练。对于平移,采用小波束尺寸的波束搜索

3、单语训练数据的NMT训练

在机器翻译中,更多的单语数据(或更接近测试集的单语数据)有助于在考虑源句子S之前提高对目标句子T的先验概率p(T)的估计。与(g lehre et al., 2015)在单语训练数据上训练单独的语言模型,并通过浅融合或深融合将其纳入神经网络相比,我们提出了用单语数据训练主NMT模型的技术,利用编码器-解码器神经网络已经在前一个目标词上条件下一个目标词的概率分布这一事实。我们描述了两种策略来做到这一点:提供带有空(或虚拟)源句子的单语训练示例,或者提供带有合成源句子的单语训练数据,该合成源句子是通过自动将目标句子翻译成源语言获得的,我们将其称为反向翻译

3.1、伪源句子

我们采用的第一种技术是将单语训练样例视为具有空源端的并行样例,本质上是添加上下文向量ci无信息的训练样例,并且网络必须完全依赖先前的目标词进行预测。这可以被理解为一种dropout (Hinton et al., 2012),不同之处在于,上下文向量被丢弃的训练实例构成了新的训练数据。我们也可以将这种设置设想为多任务学习,其中两个任务是当源已知时进行翻译,当源未知时进行语言建模

在训练过程中,我们以1比1的比例使用并行和单语训练样本,并随机洗牌。我们将一个epoch定义为通过并行数据集的一次迭代,并为每个epoch从单语言数据集重新采样。我们将单语句子与单词虚拟源端配对,以允许使用相同的网络图处理并行和单语训练示例对于单语minibatches2,我们冻结了编码器和注意模型的网络参数

这种单语数据集成的一个问题是,我们不能任意增加单语训练实例的比例,或仅用单语训练数据微调模型,因为不同的输出层参数对两个任务是最优的,如果单语训练实例的比例过高,网络会“忘记”它对源上下文的条件

3.2、合成源句

为了确保输出层对源上下文保持敏感,并且不会从单语数据中学习到好的参数,我们建议将单语训练实例与可以从中近似上下文向量的合成源句子配对。我们通过反向翻译获得这些信息,即将单语目标文本自动翻译成源语言。

在训练过程中,我们将合成的平行文本混合到原始(人工翻译的)平行文本中,并且不区分两者:没有网络参数被冻结。重要的是,只有这些额外训练示例的源端是合成的,而目标端来自单语语料库

4、评估

我们使用WMT 15(英语↔德语)、IWSLT 15(英语→德语)和IWSLT 14(土耳其语→英语)的训练和测试数据,对并行文本和附加单语数据对英语↔德语和土耳其语→英语进行NMT训练评估。

4.1、数据与方法

我们使用Groundhog3作为NMT系统在所有实验中的实现(Bahdanau et al., 2015;Jean et al., 2015)。我们通常遵循Sennrich等人(2016)所描述的设置和训练程序。

对于英语↔德语,我们使用mteval-v13a.pl报告对去标记文本的区分大小写的BLEU,以便与官方的WMT和IWSLT结果进行比较。对于土耳其语→英语,我们报告区分大小写的BLEU标记文本与多蓝。perl与g 等人(2015)的结果进行比较。

Gülçehre et al.(2015)根据并行训练数据确定网络词汇,并用特殊的UNK符号替换未登录词。他们删除了含有超过10% UNK符号的单语句子。相反,我们将未见过的单词表示为子词单元序列(Sennrich et al., 2016),并且可以使用在并行数据上学习到的现有网络词汇表表示任何额外的训练数据。在所有的实验中,网络词汇都是固定的。

表1:英语↔德语训练数据。

4.1.1、English↔German

我们使用WMT 2015提供的所有并行训练数据(Bojar et al., 2015)。我们使用News Crawl语料库作为单语数据实验的额外训练数据。训练数据量如表1所示。

基线模型需要训练一周。集合从最后4个保存的训练模型(每隔12小时保存一次)中采样。每个模型都经过12小时的固定嵌入微调。

对于合成并行数据的实验,我们从德语单语数据集中随机抽取360万个句子反向翻译成英语。用于此的德语→英语系统是基线系统(平行)。翻译在NVIDIA Titan Black GPU上花了大约一周的时间。在德语→英语的实验中,我们使用英语→德语系统+合成词将420万个单语英语句子反译为德语。请注意,我们总是使用单个模型进行反向翻译,而不是集成模型。我们把它留给未来的工作来探索使用合成数据的NMT训练对反向翻译质量的敏感程度。网络词汇量为90000。

表2:土耳其语→英语训练数据。

我们还在IWSLT 15测试集上进行了实验,以研究跨域设置测试集由TED演讲文稿组成。作为领域内的训练数据,IWSLT提供了WIT3并行语料库(Cettolo et al., 2012),其中也包括TED演讲。

4.1.2、Turkish→English

我们使用了IWSLT 14机器翻译轨道(Cettolo et al., 2014)提供的数据,即WIT3并行语料库(Cettolo et al., 2012),其中包括TED演讲,以及SETimes语料库(Tyers和Alperen, 2010)在去除包含空行或长度比大于9的句子对后,我们保留了32万个训练数据的句子对。对于单语训练数据的实验,我们使用英语LDC千兆词语料库(第五版)。训练数据量如表2所示。只有32万个句子的并行数据可用于训练,这是一个比英语↔德语低得多的翻译设置。

g lehre等人(2015)使用形态学工具Zemberek对土耳其语文本进行分割,随后对形态学分析进行消歧(Sak等人,2007),并去除分析产生的非表面标记。我们使用相同的预处理。对于土耳其语和英语,我们将罕见的单词(或土耳其语的语素)表示为字符双字母序列(Sennrich et al., 2016)。2万个最常见的单词(语素)没有被分割。这些网络的词汇量为23000个符号。

为了获得一个合成的并行训练集,我们从Gigaword中随机抽取320万个句子进行反向翻译。我们使用与土耳其语→英语基线系统相同设置训练的英语→土耳其语NMT系统。

我们发现过拟合是一个比较大的英语↔德语数据集更大的问题,并遵循g lehre et al.(2015)使用高斯噪声(stddev 0.01) (Graves, 2011)和输出层上的dropout (p=0.5) (Hinton et al., 2012)。我们也使用提前停止,基于在tst2010上每三小时测量一次的BLEU,我们将其视为开发集。对于土耳其语→英语,我们使用阈值为5的梯度剪裁,遵循g lehre等人(2015),而对于英语↔德语,我们使用阈值为1,遵循Jean等人(2015a)。

4.2、结果

4.2.1、英语→德语 WMT 15

表3显示了WMT训练和测试数据的英语→德语结果。我们发现,将并行训练数据与具有虚拟源端的单语数据以1-1的比例混合,单个系统的质量提高了0.4-0.5 BLEU,集成系统的质量提高了1 BLEU。我们训练系统的时间是基线的两倍,为训练算法提供了相似数量的并行训练实例。为了确保质量的提高是由于单语训练实例,而不仅仅是增加了训练时间,我们还继续对基线系统进行了一周的训练,但BLEU没有任何改善。

在训练过程中包括合成数据是非常有效的,并且在我们的基线上产生2.8-3.4 BLEU的改进。我们最好的集成系统也比基于语法的基线(Sennrich和Haddow, 2015)高出1.2-2.1 BLEU。我们也大大优于Jean等人(2015a)和Luong等人(2015)报告的NMT结果,他们之前报告了SOTA结果我们注意到,对于单个系统,差异特别大,因为我们的集成不像Luong等人(2015)那样多样化,他们使用了8个独立训练的集成组件,而我们从相同的训练运行中采样了4个集成组件。

4.2.2、英语→德语 IWSLT 15

表4显示了IWSLT测试集上英语→德语的结果。IWSLT测试集由TED演讲组成,因此与WMT测试集非常不同,WMT测试集是新闻文本。我们研究单语训练数据是否特别有价值,如果它可以用来使模型适应新的体裁或领域,特别是使一个在WMT数据上训练的系统适应翻译TED演讲。

表3:英语→德语在WMT训练/测试集上的翻译性能(BLEU)。Ens-4: 4个模型的集合。由于训练时间和速度的不同,训练实例的数量也不同。

表4:IWSLT测试集(TED演讲)上的英语→德语翻译性能(BLEU)。单一的模型。

系统1和系统2对应于表3中的系统,仅在WMT数据上进行训练。系统2在并行和合成WMT数据上训练,在tst2015上获得了25.5分的BLEU分数。我们观察到,即使是少量的微调,即对现有模型的继续训练,在WIT数据上也可以使在WMT数据上训练的系统适应TED域通过反译单语WIT语料库(使用在WMT数据上训练的德语→英语系统,即没有领域内知识),我们获得了合成数据集WITsynth。在WITsynth(系统4)上进行一次微调,在tst2015上的BLEU得分为26.7,或者提高了1.2 BLEU。我们观察到在WITmono上的微调没有改善,WITmono是带有虚拟输入的单语TED语料库(系统3)。

这些单语数据的适应实验稍微有些人为,因为并行训练数据是可用的。系统5使用原始WIT训练数据进行微调,在tst2015上获得了28.4的BLEU,提升了2.9 BLEU。虽然域内并行数据最有价值并不奇怪,但我们发现令人鼓舞的是,使用单语言数据进行NMT域适应也是可能的,并且是有效的,因为存在只有单语言域内数据可用的设置

表5:WMT训练/测试集上的德语→英语翻译性能(BLEU) (newstest2014;newstest2015)。

在该数据集上发表的最佳结果是由Luong和Manning(2015)使用8个独立训练模型的集合获得的。在单模型结果的比较中,我们在tst2013上比他们的模型高出1 BLEU。

4.2.3、德语→英语WMT 15

德语→英语在WMT 15数据集上的结果如表5所示。与反向翻译方向一样,我们看到了添加单语训练数据和合成源句子的实质性改进(3.6-3.7 BLEU),这比深度融合所观察到的改进要大得多(g lehre等人,2015);在newstest2015上,我们的整体性能比之前的最先进的产品高出2.3 BLEU。

4.2.4、土耳其语→英语IWSLT 14

表6显示了土耳其语→英语的结果。平均而言,我们看到以1-1的比例添加带有虚拟源端的单语言数据在测试集上提高了0.6 BLEU,尽管我们注意到不同测试集之间的差异很大。

使用合成训练数据(Gigawordsynth),我们的平均性能比基线高2.7 BLEU,并且也比g l ehre等人(2015)通过浅融合或深融合获得的结果平均高0.5 BLEU。为了比较合成数据的正则化效果,即使没有新的训练数据,我们也对并行训练文本的目标侧进行反向翻译,以获得训练语料库并行合成。将原始的并行语料库与并行合成(比例为1-1)混合在一起,在基线(平均为1.7 BLEU)上有了一些改进,但是新的单语言训练数据(Gigawordmono)给出了更高的改进,尽管与测试集相比超出了域。我们推测,新的领域内单语数据将带来更高的改进

4.2.5、合成数据的反向翻译质量

我们之前的实验留下的一个问题是,自动反向翻译的质量如何影响合成数据的训练。为了研究这个问题,我们用三种不同的德语→英语系统反译相同的德语单语语料库:

  • 用我们的基线系统和贪婪解码
  • 使用我们的基线系统和波束搜索(波束大小为12)。这与表3中实验使用的系统相同。
  • 使用德语→英语系统,该系统本身是用合成数据训练的(波束大小为12)。

表7:WMT训练/测试集上的英语→德语翻译性能(BLEU) (newstest2014;newstest2015)。系统的不同之处在于如何获得综合训练数据。4个模型的集合(除非另有说明)。

表7显示了德语→英语系统的BLEU分数,以及在不同的反向翻译上训练得到的英语→德语系统的BLEU分数。德语→英语反译的质量差异很大,newstest2015上的差异为6 BLEU。对于在不同合成语料库上训练的英语→德语系统,我们发现6个BLEU的反译质量差异导致了0.6-0.7个BLEU的翻译质量差异。我们可以通过降低一些质量来提高反翻译的速度,例如通过减小光束尺寸,我们将其留给未来的研究来探索合成数据的数量对翻译质量的影响程度

我们还展示了3个模型(每个训练运行的最佳单一模型)和12个模型(每个训练运行的所有4个模型)的集成结果。由于集成组件的多样性增加,这些集成优于从同一训练运行中采样的4个模型的集成,并且我们获得了0.8-1.0 BLEU的另一个改进。

4.3、与基于短语的SMT形成对比

将单语目标数据反向翻译成源语言以生成合成平行文本的方法已经被用于基于短语的SMT (Bertoldi和Federico, 2009;Lambert et al., 2011)。虽然该方法在技术上类似,但合成并行数据在NMT中发挥着新的作用。

表6:IWSLT测试集(TED演讲)上土耳其语→英语翻译性能(标记化BLEU)。单一的模型。由于提前停止,训练实例的数量会有所不同。

表8:WMT测试集(newstest201{4,5}的平均值)和IWSLT测试集(tst201{3,4,5}的平均值)上基于短语的SMT结果(英语→德语),以及添加PBSMT和NMT合成数据后的平均BLEU增益

为了探索反向翻译数据对于基于短语的SMT和NMT的相对有效性,我们使用Moses (Koehn等人,2007)训练了两个基于短语的SMT系统,仅使用WMTparallel,或同时使用WMTparallel和WMTsynth_de来训练翻译和重新排序模型。两个系统包含相同的语言模型,一个5-gram的Kneser-Ney模型在所有可用的WMT数据上训练。我们使用了Haddow等人(2015)描述的基线特征。

结果如表8所示。在基于短语的SMT中,我们发现使用反向翻译的训练数据对WMT测试集有适度的积极影响(+0.7 BLEU),但对IWSLT测试集没有影响。这与基于短语的SMT的回译数据的主要效果是领域适应的预期是一致的(Bertoldi和Federico, 2009)。WMT测试集和我们用作单语数据的新闻抓取语料库都来自同一来源,即报纸文章的网络抓取相反,News Crawl是IWSLT测试集的域外

图1:不同系统的土耳其语→英语训练和发展集(tst2010)交叉熵作为训练时间(训练实例数)的函数。

基于短语的SMT可以通过语言模型利用单语言数据,与之相反,NMT到目前为止还不能在不需要对体系结构进行更改的情况下有效地使用单语言数据。我们发现,合成并行数据的影响并不局限于领域自适应,即使是域外的合成数据也能提高NMT的质量,正如我们对IWSLT的评估一样。合成数据在WMT测试集(+2.9 BLEU)上比在IWSLT测试集(+1.2 BLEU)上更有效,这一事实支持了域适应有助于将合成数据添加到NMT训练中的假设

这是一个重要的发现,反向翻译数据主要用于基于短语的SMT的领域自适应,在NMT中更为普遍,并且具有超越领域自适应的积极作用。在下一节中,我们将进一步研究其有效性的原因。

图2:不同系统的英语→德语训练和开发集(newstest2013)交叉熵作为训练时间(训练实例数)的函数。

4.4、分析

我们之前指出过拟合是我们的基线系统的一个问题,特别是在几十万个训练句子的小数据集上,尽管采用了正则化。这种过拟合如图1所示,图1根据训练时间绘制了土耳其语→英语模型的训练集和发展集交叉熵。为了实现可比性,我们在平行训练集的同一随机样本上测量所有模型的训练集交叉熵。我们可以看到,只在并行训练数据上训练的模型快速过拟合,而所有三个单语言数据集(parallelsynth, Gigawordmono或Gigawordsynth)延迟过拟合,并在开发集上给出更好的困惑。Gigawordsynth达到了最佳的开发集交叉熵。

图2显示了英语→德语的交叉熵,比较了仅使用并行数据训练的系统和包含合成训练数据的系统。由于英语→德语有更多的训练数据,没有迹象表明在前4000万个训练实例(或7天的训练)中会发生过拟合;虽然两个系统都获得了相当的训练集交叉熵,但具有合成数据的系统在开发集上达到了较低的交叉熵。对此的一种解释是前一节讨论的域效应。

一个中心的理论预期是,单语目标端数据提高了模型的流畅性,即生成自然目标语言句子的能力。作为句子级流利度的代理,我们研究了词级流利度,特别是作为子词单位序列产生的词,以及使用额外的单语数据训练的NMT系统是否产生更多的自然词。例如,英语→德语系统将英语短语“civil rights protection”翻译成一个单一的复合词,由三个子词单位组成:b rger|rechts|schutzes12,我们分析翻译系统产生的这些多单位词中有多少是结构良好的德语词。

表9:系统输出中未在并行训练数据中出现的单词数(countref = 1168),以及在数据中得到证实的比例,或根据母语人士自然出现的比例。英语→德语;newstest2015;整体系统。

我们比较了newstest2015测试集的系统输出中通过子词单元产生的单词数量,这些单词没有出现在并行训练语料库中。我们还计算了其中有多少在完整的单语语料库或参考翻译中得到证实,我们都认为这是“自然的”。此外,主要作者是一位以德语为母语的人,他根据每个系统中未经证实的单词的自然性,随机注释了一个子集(n = 100),区分了自然的德语单词(或名字),如literature |klassen(文学类),和无意义的单词,如* as |best| attenten (Astbestmatten(石棉垫)的拼写错误)。

在结果(表9)中,我们看到使用额外的单语或合成数据训练的系统在非并行数据中证明了更高比例的新单词,并且我们的注释器认为更高比例的自然单词。这支持了我们的期望,即额外的单语数据可以提高NMT系统的(词级)流畅性。

5、相关工作

据我们所知,(g lehre等人,2015)首先对纯神经机器翻译架构的单语数据集成进行了研究,他们独立训练单语语言模型,然后在解码过程中通过对波束进行重评分(浅融合),或将语言模型的循环隐藏状态添加到编码器-解码器网络的解码器状态中,对它们进行集成。用一个额外的控制器机制来控制LM信号的大小(深度融合)。在深度融合中,控制器参数和输出参数在进一步的并行训练数据上进行调整,但语言模型参数在微调阶段是固定的。Jean等人(2015b)也报告了使用5-gram语言模型对NMT输出进行重新排序的实验,但改进很小(在0.1-0.5 BLEU之间)。

合成平行文本的产生与计算机视觉中使用的数据增强技术相似,其中数据集通常使用(有限)训练集的旋转、缩放或其他扭曲变体来增强(Rowley等人,1996)。

另一个类似的研究途径是自训练(McClosky et al., 2006;Schwenk, 2008)。主要区别在于,自训练通常指的是这样的场景:训练集通过人工产生的输出标签的训练实例来增强,而我们从人工产生的输出(即翻译)开始,并人为地产生一个输入。我们期望这对自动翻译中的噪声具有更强的鲁棒性。改进单语源数据的NMT,在基于短语的SMT的类似工作之后(Schwenk, 2008),仍然是未来可能的工作。

(Ter-Sarkisov等人,2015)已经证明,通过持续训练对神经网络的领域适应对神经语言模型是有效的,在与我们并行的工作中,对神经翻译模型也是有效的(Luong和Manning, 2015)。我们是第一个证明我们可以有效地适应单语数据的神经翻译模型的人。

6、结论

在本文中,我们提出了两种简单的方法,在不改变网络架构的情况下,在NMT系统的训练过程中使用单语言训练数据。提供具有虚拟源上下文的训练示例在某种程度上是成功的,但是我们通过将单语言目标数据反向翻译为源语言,并将该合成数据作为额外的训练数据处理,在所有任务和新的SOTA结果中获得了实质性的收益。我们还表明,少量的领域内单语数据,反向翻译成源语言,可以有效地用于领域适应。在我们的分析中,我们确定了领域适应效应、过拟合的减少和流畅性的提高是使用单语数据进行训练有效的原因。

虽然我们的实验确实使用了单语训练数据,但我们只使用了可用数据的一小部分随机样本,特别是对于合成并行数据的实验。可以想象,更大的合成数据集或通过数据选择获得的数据集将提供更大的性能优势。

由于我们没有改变神经网络架构来集成单语言训练数据,因此我们的方法可以很容易地应用于其他NMT系统。我们期望我们的方法的有效性不仅随着用于反向翻译的机器翻译系统的质量而变化,而且还取决于可用的并行和单语言数据的数量(以及与测试集的相似性),以及基线模型的过拟合程度。未来的工作将探索我们的方法在更多环境中的有效性。

posted @ 2023-07-14 20:26  张Zong在修行  阅读(57)  评论(0编辑  收藏  举报