当前位置: 首页 > article >正文

面向神经机器翻译的多语言去噪预训练

摘要

本文展示了多语言去噪预训练在多种机器翻译(MT)任务中能够带来显著的性能提升。我们提出了mBART——一个序列到序列的去噪自编码器,它使用BART目标(Lewis等人,2019)在多种语言的大规模单语语料库上进行预训练。mBART是首个通过去噪多种语言的完整文本来预训练完整序列到序列模型的方法,而以往的方法仅关注编码器、解码器或文本部分的重建。预训练完整模型使其能够直接针对有监督(包括句子级和文档级)和无监督机器翻译进行微调,无需针对特定任务进行修改。我们证明了添加mBART初始化在所有资源设置中都能带来性能提升,除了资源最丰富的设置,包括低资源MT提升高达12个BLEU点,以及许多文档级和无监督模型提升超过5个BLEU点。我们还展示了它能够实现新的迁移类型,适用于没有双语文本或未包含在预训练语料库中的语言对,并对哪些因素对有效预训练贡献最大进行了广泛分析。

1 引言

尽管自监督预训练在其他NLP任务中得到了广泛应用(Devlin等人,2019;Liu等人,2019;Yang等人,2019;Lewis等人,2019;Raffel等人,2019),但在机器翻译(MT)中尚未成为常规做法。现有的MT方法仅预训练模型的部分,包括编码器(Lample和Conneau,2019)和解码器(Edunov等人,2019),或使用仅重建部分文本的预训练目标(Song等人,2019),或仅关注英语语料库(Lewis等人,2019;Raffel等人,2019)。在本文中,我们展示了通过预训练一个完整的自回归模型,使用一个对多种语言的完整文本进行噪声处理和重建的目标,可以带来显著的性能提升。

在这项工作中,我们提出了mBART——一个多语言序列到序列(Seq2Seq)去噪自编码器。mBART通过将BART(Lewis等人,2019)应用于多种语言的大规模单语语料库进行训练。输入文本通过掩码短语和排列句子来添加噪声,然后学习一个单一的Transformer(Vaswani等人,2017)模型来恢复文本。与其他MT预训练方法(Lample和Conneau,2019;Song等人,2019)不同,mBART预训练了一个完整的自回归Seq2Seq模型。mBART为所有语言一次性训练,提供了一组参数,可以在有监督和无监督设置中针对任何语言对进行微调,无需任何任务特定或语言特定的修改或初始化方案。

大量实验证明,这种简单的方法效果显著。我们首先关注现有的MT基准测试。对于有监督的句子级MT,mBART初始化在低/中等资源对(<1000万双语文本对)中带来了显著的提升(高达12个BLEU点),而在高资源设置中不会牺牲性能。这些结果通过反向翻译(BT)进一步改善,在WMT16英语-罗马尼亚语和FloRes测试集上设定了新的最先进水平。对于文档级MT,我们的文档级预训练将结果提高了高达5.5个BLEU点。对于无监督的情况,我们看到了持续的提升,并为不太相关的语言对(例如,尼泊尔语-英语提升了9.5个BLEU点)产生了第一个非退化结果。以前的预训练方案仅考虑了这些任务的子集,但我们在可能的情况下比较了性能,并证明mBART始终表现最佳。

我们还展示了mBART能够实现跨语言对的新型迁移。例如,在一个语言对(如韩语-英语)的双语文本上进行微调,可以创建一个能够从单语预训练集中的所有其他语言(如意大利语-英语)进行翻译的模型,而无需进一步训练。我们还展示了不在预训练语料库中的语言也能从mBART中受益,强烈表明初始化至少部分是语言通用的。最后,我们详细分析了哪些因素对有效预训练贡献最大,包括语言数量及其整体相似性。

2 多语言去噪预训练

我们使用大规模Common Crawl(CC)语料库(§2.1)来预训练BART模型(§2.2)。我们在后续部分的实验涉及微调在不同CC语言子集上预训练的一系列模型(§2.3)。

2.1 数据:CC25语料库

数据集 我们在从Common Crawl(CC)(Wenzek等人,2019;Conneau等人,2019)中提取的25种语言子集——CC25——上进行预训练。CC25包括来自不同语系且文本量各异的语言(表1)。遵循Lample和Conneau(2019)的方法,我们通过上下采样每种语言i的文本以比例 λ i \lambda _ { i } λi重新平衡语料库:

λ i = 1 p i ⋅ p i α ∑ i p i α , ( 1 ) \lambda _ { i } = \frac { 1 } { p _ { i } } \cdot \frac { p _ { i } ^ { \alpha } } { \sum _ { i } p _ { i } ^ { \alpha } } , \qquad{(1)} λi=pi1ipiαpiα,(1)

其中 p i p _ { i } pi是每种语言在CC25中的百分比。我们使用平滑参数 α = 0.7 \alpha = 0 . 7 α=0.7

预处理 我们使用在完整CC数据上学习的句子片段模型(SPM,Kudo和Richardson,2018)进行分词,该模型包含250,000个子词标记。虽然并非所有这些语言都用于预训练,但这种分词支持在额外语言上进行微调。我们不应用额外的预处理,如真实大小写或标点/字符规范化。

2.2 模型:mBART

我们的模型遵循BART(Lewis等人,2019)的序列到序列预训练方案,本节将对其进行回顾。虽然BART仅针对英语进行了预训练,但我们系统地研究了在不同语言集上进行预训练的效果。

在这里插入图片描述

架构

我们使用标准的序列到序列Transformer架构(Vaswani等人,2017),包含12层编码器和12层解码器,模型维度为1024,16个头(约6.8亿参数)。我们在编码器和解码器的顶部额外添加了一层归一化层,这有助于在FP16精度下稳定训练。

学习

我们的训练数据涵盖K种语言: D = { D 1 , . . . , D K } \mathcal { D } = \{ \mathcal { D } _ { 1 } , . . . , \mathcal { D } _ { K } \} D={D1,...,DK},其中每个 D i \mathcal { D } _ { i } Di是语言i的单语文档集合。我们(1)假设可以使用一个噪声函数g(定义如下)来破坏文本,(2)训练模型以根据g(X)预测原始文本X。更正式地,我们的目标是最大化 L θ \scriptstyle { \mathcal { L } } _ { \theta } Lθ

L θ = ∑ D i ∈ D ∑ X ∈ D i log ⁡ P ( X ∣ g ( X ) ; θ )    , ( 2 ) \mathcal { L } _ { \boldsymbol { \theta } } = \sum _ { \mathcal { D } _ { i } \in \mathcal { D } } \sum _ { X \in \mathcal { D } _ { i } } \log P ( X | \boldsymbol { g } ( X ) ; \boldsymbol { \theta } ) \; , \qquad{(2)} Lθ=DiDXDilogP(Xg(X);θ),(2)

其中X是语言i的一个实例,分布P由Seq2Seq模型定义。
在这里插入图片描述

噪声函数

根据Lewis等人(2019)的研究,我们在g中使用两种类型的噪声。首先,我们删除文本片段并用掩码标记替换它们。我们通过根据泊松分布( λ = 3.5 λ = 3.5 λ=3.5)随机采样片段长度来掩码每个实例中35%的单词。我们还会对每个实例中的句子顺序进行排列。解码器输入是原始文本,但位置偏移一位。语言标识符号用作预测句子的初始标记。也可以使用其他噪声类型,例如Lample等人(2018c)中的方法,但我们把最优噪声策略的探索留给未来工作。

实例格式

对于每个批次中的实例,我们采样一个语言标识符号,并从相应的语料库中尽可能多地打包连续句子,直到达到文档边界或最大512个标记长度。实例中的句子用句子结束标记分隔。然后,我们附加选定的标记来表示该实例的结束。在“多句子”级别进行预训练使我们能够同时处理句子和文档翻译。

优化

我们的完整模型(包括25种语言)在256个Nvidia V100 GPU(32GB)上训练了50万步。每个GPU的总批量大小约为128K个标记,与BART(Lewis等人,2019)的配置相匹配。我们使用Adam优化器( ϵ   =   1 e − 6 ,   β 2   =   0.98 \epsilon \, = \, 1 \mathrm { e } \mathrm { - } 6 , \, \beta _ { 2 } \, = \, 0 . 9 8 ϵ=1e6,β2=0.98)和线性学习率衰减调度。总训练时间约为2.5周。我们从dropout为0.1开始训练,在25万步时将其减少到0.05,在40万步时减少到0。所有实验均使用Fairseq(Ott等人,2019)完成。

2.3 预训练模型

为了更好地衡量预训练期间多语言性的不同层次的影响,我们构建了以下一系列模型:

  • mBART25:我们在所有25种语言上预训练一个模型,使用§2.2中描述的设置。
  • mBART06:为了探索在相关语言上预训练的效果,我们在六种欧洲语言(Ro、It、Cs、Fr、Es和En)的子集上预训练一个模型。为了公平比较,我们使用约为mBART25批量大小的1/4,这使得我们的模型在预训练期间每种语言的更新次数相同。
  • mBART02:我们预训练双语模型,使用英语和另一种语言,共四种语言对:En-De、En-Ro、En-It。我们使用的批量大小约为mBART25的1/12。
  • BART-En/Ro:为了帮助建立基线性能水平,我们还在相同的英语和罗马尼亚语语料库上训练单语BART模型。
  • 随机:作为额外的基线,我们还将包括与每个翻译任务中随机初始化且未预训练的模型的比较。由于不同下游数据集的大小不同,我们总是通过网格搜索超参数(架构、dropout等)来找到最佳的非预训练配置。

所有模型使用相同的词汇表(§2.1)。并非所有标记都会在所有预训练语料库中频繁出现,但后续实验表明,即使在未见过的语言中,这种大词汇表也能在多语言设置中提高泛化能力。
在这里插入图片描述
在这里插入图片描述

3 句子级机器翻译

本节展示了mBART预训练在低到中等资源的句子级机器翻译(MT)设置中提供了持续的性能提升,包括仅使用双语文本和结合反向翻译的情况,并且优于其他现有的预训练方案(§3.2)。我们还进行了详细分析,以更好地理解哪些因素对这些提升贡献最大(§3.3),并展示了预训练甚至可以改善完全不在预训练数据中的语言的性能(§3.4)。

3.1 实验设置

数据集 我们收集了24对公开可用的平行语料库,涵盖了CC25中的所有语言(表1)。大多数语言对来自之前的WMT(Gu、Kk、Tr、Ro、Et、Lt、Fi、Lv、Cs、Es、Zh、De、Ru、Fr和En)和IWSLT(Vi、Ja、Ko、Nl、Ar、It和En)竞赛。我们还使用了FLoRes语言对(Guzmán等人,2019,En-Ne和En-Si)、来自IITB的En-Hi(Kunchukuttan等人,2017)以及来自WAT19的En-My(Ding等人,2018,2019)。我们将数据集分为三类——低资源(<100万句子对)、中等资源(>100万且<1000万)和高资源(>1000万)。

微调与解码 我们在单对双语文本数据上微调多语言预训练模型,将源语言输入编码器并解码目标语言。如图1所示,我们加载预训练权重,并使用教师强制在双语文本上训练MT模型。对于所有方向,我们使用0.3的dropout、0.2的标签平滑、2500次预热步骤和3e-5的最大学习率进行训练。对于所有低资源和中等资源语言对,我们最多使用40K次训练更新,对于高资源语言对使用100K次。最终模型基于验证似然进行选择。解码时,我们对所有方向使用beam search,beam大小为5。最终结果以BLEU(Papineni等人,2002)报告,并采用特定语言的设置,详见附录A。

3.2 主要结果

如表2所示,与随机初始化的基线相比,使用预训练的mBART25权重初始化在所有低资源和中等资源语言对上均显示出性能提升。我们在低资源语言对(如En-Vi、En-Tr)和噪声对齐的语言对(如En-Hi)上观察到超过12个BLEU点的提升。在极低资源设置(如En-Gu,仅有约10K个调优样本)中,微调失败。在这些设置中,无监督翻译更为合适,详见§5.2。
在这里插入图片描述
在这里插入图片描述

对于高资源情况(表3),我们没有观察到一致的提升,当可用平行句子超过2500万时,预训练甚至会略微降低性能。当提供大量双语文本数据时,我们怀疑监督训练会完全覆盖预训练权重。

+ 反向翻译 反向翻译(BT,Sennrich等人,2016b)是一种利用目标端单语数据增强双语文本的标准方法。我们将预训练与BT结合,并在低资源语言对(En-Si和En-Ne)上使用FLoRes数据集(Guzmán等人,2019)进行测试。为了公平比较,我们使用与Guzmán等人(2019)相同的单语数据生成BT数据。图2显示,使用mBART25预训练参数初始化模型可以在每次反向翻译迭代中提高BLEU分数,从而在所有四个翻译方向上取得新的最先进结果。

与其他预训练方法的比较

我们还将我们的预训练模型与最近的自监督预训练方法进行了比较,如表4所示。我们考虑了En-Ro翻译,这是唯一一个有既定结果的语言对。我们的mBART模型在有无BT增强的情况下均优于所有其他预训练模型。我们还与仅在相同英语和罗马尼亚语数据上训练的常规BART模型进行了比较。两者都比基线有所改进,但效果不如mBART,这表明在多语言环境中进行预训练是至关重要的。此外,结合BT可以带来额外的提升,从而使Ro-En翻译达到了新的最先进水平。

3.3 分析

我们还进行了额外的分析,以更好地量化预训练何时有效。

应该预训练多少种语言?
我们研究了在微调期间使用的目标语言对之外,预训练包含其他语言是否有帮助。表5显示了四个X-En语言对的性能。当目标语言的单语数据有限时(例如En-My,My的数据量约为En的0.5%),预训练更多语言的效果最为显著。相反,当单语数据充足时(如De、Ro),预训练多种语言会略微降低最终结果(<1 BLEU)。在这些情况下,额外的语言可能会减少每种测试语言可用的容量。此外,mBART06在Ro-En上的表现与mBART02相似,这表明使用相似语言进行预训练特别有帮助。

需要多少预训练步骤?
我们在图3中绘制了Ro-En BLEU分数与预训练步骤的关系,其中我们保存了每25K步的检查点,并应用§3.1中描述的相同微调过程。没有任何预训练时,我们的模型过拟合并表现远低于基线。然而,仅经过25K步(训练的5%),两个模型的表现都超过了最佳基线。模型在剩余的步骤中持续提升了超过3个BLEU,并且在50万步后仍未完全收敛。mBART25的表现始终略逊于mBART02。

在这里插入图片描述

双语文本的规模如何影响预训练的收益?
表2和表3显示,预训练在低资源和中等资源语言对上持续提升了性能。为了验证这一趋势,我们绘制了En-De数据集不同规模子集的性能图。具体来说,我们从完整的En-De语料库(2800万对)中随机抽取10K、50K、100K、500K、1M、5M、10M的数据集。我们将未预训练的模型与mBART02的结果进行比较,如图4所示。预训练模型仅用10K训练样本就能获得超过20个BLEU,而基线系统的得分为0。不出所料,增加双语语料库的规模可以提升两种模型的性能。我们的预训练模型始终优于基线模型,但随着双语文本数量的增加,差距逐渐缩小,尤其是在超过1000万句子对之后。这一结果证实了我们在§3.2中的观察,即预训练对高资源语言对的翻译没有帮助。

预训练是否与BT互补?
图2展示了我们的预训练模型可以与迭代反向翻译(BT)结合使用,但这仍然不是一个公平的比较。表6显示了在使用相同单语数据时的结果,我们按照Chen等人(2019)的方法使用了7900万英语和2900万缅甸语句子。在相同数量的单语语料库下,mBART预训练在En→My上达到了与BT相同的性能,但在My→En上仍落后3个BLEU。我们怀疑BT受益于更大的单语数据(英语)。此外,将mBART02模型与BT结合,即使使用相同的单语数据,我们也能看到进一步的提升。此外,我们还提供了估计的训练成本,其中BT的流程较长,包括训练基线系统(5小时)、翻译单语数据(300小时)和正式训练(350小时)。而mBART的大部分训练成本在于预训练部分,并且可以轻松调整以提高效率。
在这里插入图片描述

3.4 对未参与预训练语言的泛化能力

本节展示了mBART即使在对未出现在预训练语料库中的语言进行微调时,也能提升性能,这表明预训练具有语言通用性,尤其是在Transformer层学习到的参数中。
在这里插入图片描述

实验设置

我们分析了三对语言的结果:Nl-En、Ar-En和De-Nl,使用了预训练的mBART25、mBART06和mBART02(EnRo)模型。在预训练期间,mBART06和EnRo双语模型不包含阿拉伯语(Ar)、德语(De)或荷兰语(Nl)数据,但所有这些语言都包含在mBART25中。德语和荷兰语都是欧洲语言,与英语、罗马尼亚语以及mBART06预训练数据中的其他语言相关。

结果

mBART25在预训练期间使用了所有语言,但其他设置中至少包含一种未见过的语言。我们发现,即使在翻译与预训练语言关系较远的未见语言(阿拉伯语)和两种未见语言(德语和荷兰语)时,使用英语-罗马尼亚语进行预训练也能带来显著的性能提升。当预训练包含两种测试语言时,效果最佳,但使用其他语言进行预训练的效果也出人意料地具有竞争力。

未见词汇

阿拉伯语与mBART02和mBART06中的语言关系较远,且其使用不重叠的字符集意味着其词嵌入在很大程度上未经训练。然而,我们在Ar-En对上观察到了与Nl-En对相似的改进。这一结果表明,预训练的Transformer层学习了语言的通用特性,即使在词汇重叠最小的情况下也能很好地泛化。

未见源语言或目标语言

表7显示了当未见语言出现在源语言侧、目标语言侧或两侧时的不同性能。如果两侧都是未见语言,性能(与mBART25的差异)比至少有一侧语言在预训练中出现的情况要差。此外,尽管En-X对的表现相似,但mBART06在X-En对上比mBART02表现更好。在源语言侧微调未见语言更为困难,值得未来进行更广泛的研究。
在这里插入图片描述

4 文档级机器翻译

我们在文档级机器翻译任务上评估了mBART,其目标是翻译包含多个句子(甚至整个文档)的文本片段。在预训练期间,我们使用最多512个标记的文档片段,使模型能够学习句子之间的依赖关系。我们展示了这种预训练显著提升了文档级翻译的性能。

4.1 实验设置

数据集
我们在两个常见的文档级机器翻译数据集上评估性能:WMT19 En-De和TED15 Zh-En(统计数据见表8)。对于En-De,我们使用WMT19的文档数据训练模型,不添加任何额外的句子级数据;Zh-En数据集来自IWSLT 2014和2015评估活动(Cettolo等人,2012,2015)。按照Miculicich等人(2018)的方法,我们使用2010-2013年的TED作为测试集。

预处理
我们使用与预训练相同的预处理方法。对于每个文本块,句子之间用句子结束符号()分隔,整个实例以特定语言标识符()结束。表8中还显示了分段实例的数量,平均每个文档被分割为2-4个实例。

微调与解码
我们使用与句子级翻译相同的微调方案(§3.1),未使用以往工作中开发的任务特定技术(如Miculicich等人,2018;Li等人,2019),例如受限上下文或受限注意力机制。在解码时,我们简单地将源句子打包成块,并自回归地翻译每个实例块。模型不知道需要生成多少句子,当预测到时解码停止。默认情况下,我们使用beam size为5。

在这里插入图片描述

基线模型与评估

我们训练了4个模型:一个文档级(Doc-)MT模型(§4.1)和一个对应的句子级(Sent-)MT模型(§3.1)作为基线,分别在有预训练和无预训练的情况下进行对比。我们使用mBART25作为En-De和Zh-En的通用预训练模型。对于En-De,尽管我们的mBART25 Doc-MT模型一起解码多个句子,但翻译后的句子可以与源句子对齐,这使得我们能够在句子级(s-BLEU)和文档级(d-BLEU)上评估BLEU分数。对于Zh-En,由于测试数据中的对齐错误,我们无法生成与参考相同数量的翻译句子,因此仅提供d-BLEU分数。

我们还将我们的模型与分层注意力网络(HAN,Miculicich等人,2018)在Zh-En上进行了比较,这是该语言对文档级翻译的最先进非预训练方法。HAN结合了两层注意力机制——首先在句子内,然后在句子间。

4.2 主要结果

表9展示了En-De和Zh-En的主要结果。

随机初始化 vs. 预训练
无论是句子级还是文档级训练,使用预训练权重初始化的MT模型都显著优于随机初始化的模型。我们的mBART25模型(包括Sent-MT和Doc-MT)也优于HAN(Miculicich等人,2018),尽管它们并未针对文档级MT进行任何定制。

句子级MT vs. 文档级MT
对于En-De和En-Zh,mBART25 Doc-MT模型的表现优于在句子级微调的模型,而无预训练的模型则完全相反。对于这两个数据集,随机初始化的Doc-MT模型无法正常工作,结果远逊于句子级模型。如此大的性能差距表明,预训练对文档级性能至关重要。由于高质量文档级数据的收集通常较为困难,预训练可能是未来工作的一个强大策略。我们还在附录B中提供了一个示例。

5 无监督机器翻译

除了有监督机器翻译,我们还在目标语言对没有双语文本的任务上评估了我们的模型。我们定义了三种无监督翻译类型:

  1. 没有任何双语文本:常见解决方案是通过反向翻译(BT)学习(Artetxe等人,2017;Lample等人,2018c)。我们展示了mBART为这些方法提供了一个简单有效的初始化方案。
  2. 目标语言对没有双语文本,但目标语言出现在其他语言对的双语语料库中:先前的研究表明,通过大规模多语言MT(Johnson等人,2017;Gu等人,2019)或通过枢轴蒸馏(Chen等人,2017)可以实现零样本迁移。我们专注于为单一语言对构建MT模型,将多语言预训练留给未来工作。
  3. 目标语言对没有双语文本,但存在从其他语言到目标语言的双语文本:这是一个新的评估机制,我们将展示mBART支持有效的迁移,即使源语言没有任何形式的双语文本。

在本节中,我们通过(1)反向翻译(§5.1)和(3)语言迁移(§5.2)展示了多语言预训练在无监督机器翻译中的有效性。图5展示了这两种方法的示意图。

5.1 通过反向翻译的无监督机器翻译

数据集
我们在相似(En-De、En-Ro)和不相似(En-Ne、En-Si)语言对上评估预训练模型,这些语言对的相似性通过共享的子词单元来衡量。我们使用与有监督基准相同的测试集(§3.1),并直接使用预训练数据(CC25)进行反向翻译,以避免引入新信息。

学习过程
按照Lample等人(2018c)和Lample与Conneau(2019)描述的过程,我们首先用预训练权重初始化翻译模型,然后通过动态反向翻译(BT)生成的源句子来预测单语句子。Lample和Conneau(2019)仅预训练编码器,因此需要额外的去噪训练来学习seq2seq模型——而mBART的预训练seq2seq模型无需此步骤。然而,我们在动态BT的前1000步中限制mBART仅生成目标语言的标记,以避免其直接复制源文本。

结果
表10展示了与无预训练模型以及现有预训练方法的无监督翻译结果对比。我们的模型在所有方向上均显著优于无预训练模型,并在不相似语言对(En-Ne、En-Si)上显著优于XLM,而现有方法在这些语言对上完全失败。对于相似语言对,我们的模型也表现优异,优于XLM和MASS,并在En-X对上取得了最佳结果。

5.2 通过语言迁移的无监督机器翻译

第二种无监督机器翻译假设目标语言出现在与其他源语言的双语语料库中。

数据集
我们仅考虑X→En翻译,并从§3.1中选择了12个语言对的双语文本,涵盖印度语言(Ne、Hi、Si、Gu)、欧洲语言(Ro、It、Cs、Nl)、东亚语言(Zh、Ja、Ko)和阿拉伯语言(Ar)。

结果
如图5(b)所示,我们使用预训练的mBART25模型对每个语言对进行微调,然后直接将其应用于其他语言对,如表11所示。我们还提供了直接微调性能(§3)的对角线结果作为参考。除了Gu-En(有监督模型完全失败,0.3 BLEU)外,我们始终可以在不同微调模型上获得合理的迁移分数。在某些情况下,我们甚至可以取得与有监督结果相似(Cs-En)或更好(Ne-En、Gu-En)的结果。

作为对比,我们也在没有预训练的随机初始化模型上应用了相同的流程,结果始终接近0 BLEU。这表明多语言预训练是至关重要的,并且能够生成跨语言的通用表示。因此,一旦模型学会将一种语言翻译为英语,它就能够利用相似的表示翻译所有语言。我们还在附录B中提供了中文(Zh)、日语(Ja)和韩语(Ko)之间语言迁移的三个示例。
在这里插入图片描述

在这里插入图片描述

语言迁移何时有用?

表11还展示了每对语言混合的结果。首先,对于大多数语言对,当微调也在同一语系中进行时,语言迁移效果更好,尤其是在印度语言(Hi、Ne、Gu)之间。然而,有效的迁移并不需要显著的词汇共享。例如,Zh-En和It-En分别在Ko-En和Ar-En上取得了最佳的迁移学习结果,尽管Zh与Ko、It与Ar之间的词汇重叠(甚至字符重叠)较低。

结合反向翻译
我们还在表12中展示了4对无监督机器翻译在反向翻译(BT)与语言迁移之间的对比。结果也是混合的。如果存在高质量(相似语言)双语文本数据,或者在翻译不相似语言对时,语言迁移能够击败传统的BT方法。此外,我们还展示了结合这两种技术的有希望的结果。在这种情况下,我们从最佳迁移模型开始,并在预训练中使用的相同单语语料库上应用(迭代)BT。表12展示了1次BT迭代的结果。对于所有语言对,我们通过结合这两种技术看到了改进。

6 相关工作

文本生成的预训练
这项工作继承了自监督预训练在NLP应用中的最新成功(Peters等人,2018;Radford等人,2018;Devlin等人,2019;Yang等人,2019;Liu等人,2019),特别是文本生成任务(Radford等人,2019;Song等人,2019;Dong等人,2019;Raffel等人,2019;Lewis等人,2019),其中设计了不同的自监督目标来训练大规模神经网络模型。预训练模型通常用作微调各种下游任务的初始化,例如可控语言建模(Shirish Keskar等人,2019)、机器翻译(Song等人,2019)、摘要生成(Liu和Lapata,2019)和对话生成(Zhang等人,2019)。与大多数先前工作不同,我们专注于深入探索将去噪预训练应用于各种翻译应用。

NLP任务中的多语言性
这项工作也与多语言语言学习的持续趋势相关,包括将多语言词嵌入对齐(Mikolov等人,2013;Chen和Cardie,2018;Lample等人,2018b)到通用空间,以及学习跨语言模型(Wada和Iwata,2018;Lample和Conneau,2019;Conneau等人,2019)以利用跨语言的共享表示。

对于机器翻译,最相关的领域是多语言翻译(Firat等人,2016;Viégas等人,2016;Aharoni等人,2019;Arivazhagan等人,2019),其最终目标是联合训练一个翻译模型,同时翻译多个语言方向,并共享表示以提高低资源语言的翻译性能(Gu等人,2018)。在本文中,我们主要关注预训练阶段的多语言性,并在标准的双语场景中微调学习到的模型。与多语言翻译相比,我们不需要跨多种语言的平行数据,而是仅针对目标方向,这潜在地提高了对低资源语言和特定领域的可扩展性。此外,多语言预训练不太可能受到不相似语言之间的干扰问题,这是常规多语言翻译模型的典型问题。

文档翻译
作为关键应用之一,这项工作还与之前将文档级上下文融入神经机器翻译的努力相关(Wang等人,2017;Jean等人,2017;Tiedemann和Scherrer,2017;Miculicich等人,2018;Tu等人,2018)。Li等人(2019)是最相关的工作,他们也利用预训练的编码器(BERT)来处理更长的上下文。然而,这些工作均未在纯Seq2Seq模型上展示出文档级的积极结果,这些结果通常涉及任务特定技术,并且通常仅在句子级翻译中有效,上下文范围有限。据我们所知,我们的多语言预训练模型是首个在文档级翻译中展示改进结果的纯Seq2Seq学习工作。

无监督翻译
这项工作还总结了之前在没有直接平行语料库的情况下学习翻译的努力,并将其重新定义为无监督机器翻译,分为三类,本文仅关注第一类和第三类的应用(§5)。当没有任何平行语料库可用时,Artetxe等人(2017);Lample等人(2018a,c)提出联合学习去噪自编码器和双向反向翻译,但这需要良好的初始化,并且仅在相似语言对上表现良好;Wu等人(2019a)用从目标单语数据中检索的相似句子替换反向翻译;Wu等人(2019b)通过从维基百科中挖掘句子并将其用作弱监督翻译对来解决该问题。与Lample和Conneau(2019);Song等人(2019)类似,我们遵循第一种方法,并将预训练模型作为初始化步骤。此外,我们研究了使用语言迁移的无监督翻译,这与Pourdamghani等人(2019)类似,他们生成源语言的翻译体并训练系统以纠正这些中间话语。它还与Conneau等人(2018);Artetxe等人(2019)的跨语言表示学习密切相关。

7 结论

我们证明了多语言去噪预训练能够显著提高句子级和文档级的有监督和无监督机器翻译性能。我们分析了预训练何时以及如何最有效,并可以与其他方法(如反向翻译)结合使用。我们的结果还展示了从多语言预训练中学到的表示的迁移学习能力。

在未来的工作中,我们将扩展当前的预训练到更多语言,例如mBART100模型。我们模型的规模使其在生产中部署成本较高——未来的工作将探索预训练更高效的模型。

附录

A 评估细节

对于所有任务,我们使用BLEU分数(Papineni等人,2002)作为自动指标来评估翻译性能。通常,我们对系统输出和参考文本的分词结果计算BLEU分数,并在翻译后应用特定语言的分词处理。需要注意的是,由于我们直接处理原始文本,在恢复句子片段子词后会自动获得去分词化的输出。根据文献,特定语言的分词处理说明如下:

  • Gu、Ne、Si、Hi:我们使用Indic-NLP库对印度语言输出进行分词。
  • Ja:我们使用KyTea对日语文本进行分词。
  • Ko:我们使用Mecab-Ko及其默认词典对韩语文本进行分词。
  • Ar:我们对阿拉伯语文本应用QCRI阿拉伯语规范化工具。
  • My:我们使用Ding等人(2019)提供的官方分词工具对缅甸语进行分词。
  • Ro:根据Sennrich等人(2016a)的方法,我们对罗马尼亚语文本应用Moses分词和特殊规范化处理。
  • Zh:我们使用sacreBleu(Post,2018)的中文分词器(–tok zh)。

对于上述未列出的其他语言,我们使用sacreBLEU的DEFAULT分词方式计算BLEU分数。

B 翻译示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

原文地址:https://blog.csdn.net/qq_39698985/article/details/146248364
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/586302.html

相关文章:

  • 力扣 Hot 100 刷题记录 - 对称二叉树
  • C++前缀和
  • env.development.local 和 env.development 的区别
  • MySQL EXPLAIN 详解
  • python 提取视频中的音频
  • 9月论文学习
  • Houdini学习笔记
  • 蓝桥杯15届省C
  • Apache Shiro反序列化漏洞深度剖析:从原理到利用
  • 32、构造函数
  • MySQL的行级锁锁的到底是什么?
  • 高防ip有哪些优点?ip欺骗攻击的原理是什么
  • 添加 ChatGPT/Grok/Gemini 到浏览器搜索引擎
  • 【Python】PyQt5在PyCharm的配置与应用
  • 【 PyQt】事件的触发:信号与槽
  • js原型链污染
  • AI辅助编程!DeepSeek vs ChatGPT- AI在地图网络分析(最佳路径)上的应用
  • 虚拟展览馆小程序:数字艺术与文化展示的新形式探索
  • 【蓝桥杯集训·每日一题2025】AcWing 6134. 哞叫时间II
  • 数据库应用实训室建设初步设计方案