Extract and Edit: An Alternative to Back-Translation for Unsupervised Neural Machine Translation

Extract and Edit: An Alternative to Back- Translation for Unsupervised Neural Machine Translation

这是2019NAACL的一篇文章。文本是在facebook的基础上做的后续工作,针对回译存在的问题,提出了提取-编辑方法来取代回译,取得了不错的效果。

文章链接:

Extract and Edit: An Alternative to Back-Translation for Unsupervised Neural Machine Translation

代码链接:

https://github.com/jiaweiw/Extract-Edit-Unsupervised-NMT

知识点

  1. 初始化的时候对不相关的语言对使用推断的双语词典,而对相关语言对则使用共享的BPE进行初始化。
  2. 仍然通过降噪自编码器完成语言建模。
  3. 针对回译存在的问题,本文提出了提取-编辑方法来取代回译。

摘要

对大型并行语料库的过度依赖极大地限制了机器翻译系统对大多数语言对的适用性。在以前的方法中,反向翻译主要用于无监督的神经机器翻译,其中生成伪句子对以训练具有重建损失的模型。但是,伪句子通常质量低下,因为在训练过程中会累积翻译错误。为了避免这个基本问题,我们提出了另一种更有效的方法,即提取编辑,以从目标单语语料库中提取然后编辑真实句子。此外,我们引入了比较翻译损失来评估翻译的目标句子,从而训练无监督的翻译系统。实验表明,在两个基准(英语-法语和英语-德语)和两个低资源语言对(英语-罗马尼亚和英语-俄罗斯)之间,本文的方法始终优于以前最好的无监督机器翻译系统2个(最多3:63)BLEU点。

引言

生成的伪句子对通常质量较低。在反向翻译的双重学习中,错误很容易累积,因此学习的目标语言分布将逐渐偏离实际目标分布。这个严重的缺点阻碍了无监督NMT系统的进一步发展。

另一种解决方案是从可比较的单语语料库中提取真实的平行句子,然后使用它们来训练NMT系统。最近,基于神经的方法旨在从同一领域的单语语料库中选择潜在的平行句子。但是,这些神经模型需要首先在大型并行数据集上进行训练,这不适用于监督受限的语言对。

在本文中,我们为无监督的NMT提出了一种截然不同的方法 提取-编辑,它是反向翻译的有力替代方法(见图1)。具体来说,为了训练源到目标的翻译模型,我们首先在给定一个源语言句子的目标语言空间中提取潜在的平行候选句。由于单语语料库中不一定总存在潜在的平行句对,我们进一步提出了一种简单而有效的编辑机制,对提取的句子进行修改,使其与原语句子对齐。在此基础上,提出了比较翻译损失的概念,并对该模型进行了训练。与反向翻译相比,提取-编辑通过从目标语言空间中提取和编辑真实的句子,避免了分布偏差的问题。这些提取和编辑的句子是目标语言空间的关键点,可以指导无监督学习。因此,所学习的目标语言分布更接近真实语言分布。该方法的两个主要部分提取-编辑模型和翻译模型可以在完全无监督的情况下进行联合训练。

流行基准测试的经验结果表明,精确编辑始终优于最新的无监督NMT系统(《Phrase-based & neural unsupervised machine translation》),并且可以在四种不同语言对之间进行反向翻译。 总而言之,我们的主要贡献是三方面的:

  1. 我们提出了一种更有效的替代范式来进行反向翻译,提取编辑,以训练具有潜在真实句子对的无监督NMT系统。
  2. 我们针对无监督学习引入了比较翻译损失算法,该算法通过在提取-编辑对中最大化译文与原文的相对相似度来优化译文。
  3. 我们的方法在单语语料库场景下,在四对不同的语言之间推进了先前的最先进的NMT系统。

背景

通常的无监督NMT主要由三个步骤:初始化、语言模型和回译。在本节中,我们主要介绍我们的工作中遵循的三个步骤和关键设置。在本文的其余部分,我们分别用S和T表示源语言和目标语言的空间。 enc和dec表示序列到序列系统中的编码器和解码器模型。 V s t V_{s\rightarrow t} 代表源语言中的enc和目标语言中dec的组成,可以将其视为源到目标的翻译系统。

1. Initialization

这一步主要是构建字典(不相关的语言)或做BPE处理(相关的语言)

考虑到无监督NMT任务的不适定性质,适当的初始化方法可以帮助对我们期望达到的两个语言空间的映射上的自然先验进行建模。有两种主要的初始化方法:

  1. 双语字典推断(不相关的语言)
    《Word translation without parallel data》
    《Unsupervised neural machine translation》
    《 Unsupervised machine translation using monolingual corpora only》
  2. byte-pair encoding (BPE)(相关的语言)
    《Phrase-based & neural unsupervised machine translation》

如《Phrase-based & neural unsupervised machine translation》所示,推断的双语词典可以提供语义的逐字对齐,而BPE可以减少词汇量并消除输出结果中的未知词。

在我们的提取编辑方法中,要提取潜在的平行句子对,我们需要首先比较两种语言之间句子的语义相似性。适当的初始化还可以帮助对齐语义空间并在其中提取潜在的并行对。因此,按照先前的方法,我们对不相关的语言对使用推断的双语词典,而对相关语言对则使用共享的BPE进行初始化

2. Language Modeling

这一步主要是通过降噪自编码器完成语言建模,注意此步骤中所有encoder共享参数,所有decoder共享参数。

经过适当的初始化,给定大量的单语数据,我们可以在源语言和目标语言上训练语言模型。 这些模型表达了有关每种语言的句子组成的数据驱动先验。在NMT中,通过降噪自编码器来完成语言建模,通过最小化:
在这里插入图片描述
其中C是一个噪声模型,其中一些单词被丢弃和交换,θ_enc和θ_dec是enc和dec的可学习参数。 V s s V_{s\rightarrow s} V t t V_{t\rightarrow t} 分别是源端和目标端的编码器-解码器语言模型。

在我们的提取-编辑方法中,我们遵循类似的设置,并采用Lample等人提出的噪声模型请注意,所有enc的参数在我们的系统中都是共享的(dec也是),以确保两种语言之间的高度一致和映射。共享操作对于翻译模型和提取-编辑模型都是最基本的。因此,我们使用enc来表示源语言模型enc_S和目标语言模型enc_T中的编码器(dec类似)。

3. Back-Translation

本节讲了回译存在的问题,并提出了本文的提取-编辑方法来取代回译。

它将源到目标的转换模型与后向的目标到源的模型相结合,并以重构损失训练整个系统。这可以看作是通过生成伪语言对将无监督的问题转换为有监督的问题。尽管反向翻译在以前的方法中很流行,但我们认为它受劣质伪语言对的困扰。 因此,在这项工作中,我们提出了一个新的范式,即提取-编辑,以通过提取和编辑潜在的实际平行句子来解决此问题。下面我们详细描述我们的方法。

Extract-Edit方法

在这里插入图片描述
提取-编辑方法的概述如图2所示。我们首先根据真实句子与原句的相似性,从目标语空间中提取和编辑真实句子。这些提取和编辑的句子是目的语空间的关键点,它位于真正的目的语句子可能所在的一个可能区域。然后引入比较翻译损失的概念,对翻译后的句子进行评价和训练。从根本上说,比较翻译损失通过最大限度地提高译文与原文句子的相似度来鼓励译文接近原文句子。结果,我们设法使学习的目标语言分布和两种语言空间之间的映射噪声的偏差最小。

3.1 Extract

可比语料库挖掘中的大多数现有方法都引入了两个编码器来分别表示两种语言的句子,然后使用另一个网络来测量相似度。但是,由于在语言建模中共享的编码器和解码器,因此在我们的场景中,两种语言的语义空间已经紧密相连。

因此,为了避免额外的计算资源,我们直接在语言建模中使用enc来获取两种语言的句子嵌入。如图2 (a)所示,对于给定的源句s,我们使用基于L_2距离的最近邻搜索,从目标语言空间中找到top-k个真实的句子(k是由经验决定的超参数)。用于搜索的句子嵌入是基于共享编码器enc计算的。选择top-k而不是top-1的原因是为了保持较高的召回率,从目标语言空间中获取更多的相关样本。最后,给定源句s,我们将M表示为k个潜在平行目标句的集合
在这里插入图片描述
3.2 Edit

即使提取的句子可以作为指导NMT的关键点,也不能保证目标语料库中始终存在平行的句子。因此,为了使其更接近目标语言空间中的真实配对句子,我们提出了一种修改机制:根据源句子s的语义提取目标句子 t ϵ M t \epsilon M 如图2(b)所示,我们使用一个maxpooling层来保留源句子嵌入es和提取的句子嵌入et( t ϵ M t \epsilon M )之间的更重要的特征,然后将其解码为新的句子 t t{}'
在这里插入图片描述
其中, M M{}' 是提取和编辑的句子的集合( M M{}' 可能包含s的潜在平行句子 t t{}' ,这样的话目标语言encoder-decoder模型是自编码器吗(下面一行)?否则 M M{}' 中怎么会存在s的平行句子?)。根据源句子s的语义信息,我们可以使用这种编辑机制进一步改善提取结果。与其他使用编辑生成更多结构性句子的研究不同(《 Generating sentences by editing prototypes》和《A retrieve-and-edit framework for predicting structured outputs》),此处修改后的句子旨在充当目标语言空间中更好的关键点,以指导翻译过程。当对齐两种语言空间时,这也可以视为添加约束。

3.3 Evaluate

给定源句子s,我们可以使用源到目标的翻译模型 P s t P_{s\rightarrow t} 将其翻译为t*。同时,也可以通过上述提取编辑方法来生成k个句子的集合 M M{}' 尽管 M M{}' 可能包含s的潜在平行句子 t t{}' ,但我们不能直接使用(s; t t{}' )作为基本事实对来训练翻译模型 V s t V_{s\rightarrow t} ,因为NMT系统对噪声敏感。这样的粗略操作将导致次优翻译性能。因此,为了评估翻译句子t * 的质量并训练翻译模型 V s t V_{s\rightarrow t} ,我们引入了一个评估网络R,用于评估所有句子对中源句子和目标句子之间的相对相似性。评估网络R是多层感知器; 它以目标句子嵌入et和源句子嵌入es为输入,
并将它们转换为rt和rs的联合嵌入空间。 所以相似度
在这里插入图片描述
然后,在给定提取和编辑的句子集 M M{}' 的情况下,使用类似softmax的公式来计算翻译句子t*的排名得分:
在这里插入图片描述
其中超参数λ与softmax函数的逆温度相似。较低的λ鼓励模型平等地对待所有经提取-编辑的句子,而较高的λ强调具有较高分数的句子的重要性。

3.4 Learning

Comparative Translation(比较翻译法)

如前所述,排序得分计算< s;t* >对和所有被提取和编辑的对< s; t t{}' >之间的相对相似度。假设我们有一个良好的评估网络R,其中θ_R表示其参数,我们进一步介绍了无监督机器翻译的比较翻译损失L_com:
在这里插入图片描述
其中θ_enc是共享编码器enc的参数。基本上,与目标语言空间中的前k个提取并编辑的句子相比,翻译模型试图将翻译的句子t *与源句子s的相对距离最小化。直观地,我们将提取和编辑的前k个句子视为定位目标语言空间中可能区域的锚点,并通过比较学习方案迭代地改进了源到目标的映射。

结合公式1中所述的语言建模约束,用于训练翻译模型 V s t V_{s\rightarrow t} 的最终损失函数定义为:
在这里插入图片描述
其中 ω l m \omega _{lm} ω c o m \omega _{com} 是衡量语言建模和比较学习重要性的超参数。

Adversarial Objective(对抗目标)

同时,我们需要学习一个好的评估网络R,将共享编码器的句子嵌入转换为到可比较的空间。评估网络R也由两种语言共享,以确保两种语言空间之间的牢固连接。受对抗学习的启发,我们可以将翻译系统视为一种“生成器”,该系统可以学习生成比提取和编辑后的句子更高的相似度得分的优质翻译,评估网络R作为“判别器”,学习将所提取和编辑的句子(目标语言空间中的真实句子)的得分高于翻译后的句子。因此,对于评估网络R,我们具有以下目标函数:
在这里插入图片描述
根据公式7和8,最终对抗目标定义为
在这里插入图片描述
其中翻译模型 V s t V_{s\rightarrow t} 和评估网络R玩两个人的mini-max游戏。我们在编码器-解码器转换模型 和 评估网络之间交替更新。详细的训练过程在算法1中进行了描述。
在这里插入图片描述
3.5 Model Selection

在完全无人监督的情况下,我们无权访问平行句子对。 因此,我们需要找到与翻译质量相关的标准以选择超参数。 对于神经翻译模型 V s t V_{s\rightarrow t} ,我们提出以下准则 D s t D_{s\rightarrow t} 来调整超参数:
在这里插入图片描述
t* = V s t V_{s\rightarrow t} (s) ,基本上,我们选择对所有翻译句子的排名分数均具有最大期望的超参数。

实验结果

在这里插入图片描述实验所使用的数据跟facebook相同。

总结

在本文中,我们提出了一种提取编辑方法,它是无监督NMT中广泛使用的回译的一种有效替代方法。 而不是生成伪语言对来训练系统。考虑到重建损失,我们设计了一个比较翻译损失,该损失利用了目标语言空间中的真实句子。从经验上讲,我们的方法在四对语言中仅使用单语语料库推进了先前最先进的NMT系统。从理论上讲,我们认为提取编辑学习框架可以推广到其他类型的无监督机器翻译系统,甚至其他一些无监督的学习任务。

发布了52 篇原创文章 · 获赞 7 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_38937984/article/details/102462842