(26)[ICLR15] NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_37993251/article/details/88747684

计划完成深度学习入门的126篇论文第二十六篇,蒙特利尔大学的KyungHyun Cho和Yoshua Bengio领导研究的新的机器翻译的方法JOINTLY LEARNING TO ALIGN AND TRANSLATE。


ABSTRACT&INTRODUCTION

摘要

神经机器翻译是近年来提出的一种机器翻译方法。与传统的统计机器翻译不同,神经机器翻译的目的是建立一个单一的神经网络,可以共同调整,以最大限度地提高翻译性能。最近提出的神经机器翻译模型通常属于encoder–decoders家族,将源语句编码成固定长度的向量,然后由译码器生成翻译。

在本文中,我们推测,使用一个固定长度的向量是一个瓶颈改善这个基本的encoder–decoders体系结构的性能,并提出自动扩展这个通过允许一个模型(软)搜索部分源相关的句子预测目标词,没有明确让这些部分形成的hard segment。采用这种新方法,我们的翻译性能可以与现有的基于短语的英法翻译系统相媲美。此外,定性分析表明,该模型得到的(软)对齐结果与我们的直觉非常吻合。

介绍

神经机器翻译是一种新兴的机器翻译方法,最近由Kalchbrenner and Blunsom(2013)、Sutskever(2014)和Cho等人(2014b)提出。与传统的基于短语的翻译系统(如Koehn et al., 2003)不同,传统的翻译系统由许多单独调优的sub-components组成,而神经机器翻译尝试构建和训练一个单一的、大型的神经网络,该网络读取一个句子并输出正确的翻译。所提出的神经机器翻译模型大多属于编码器译码器家族(Sutskever et al., 2014;Cho等人(2014a),为每种语言配备编码器和解码器,或为每句话应用特定于语言的编码器,然后对其输出进行比较(Hermann和Blunsom, 2014)。

编码器神经网络将源语句读入固定长度的向量并进行编码。然后解码器从所编码的向量输出一个转换。整个编解码器系统由一种语言对的编解码器和一种语言对的编解码器组成,通过联合训练使给定源语句的正确翻译概率最大化。这种编码器解码器方法的一个潜在问题是,神经网络需要能够将源语句的所有必要信息压缩成一个固定长度的向量。这可能会使神经网络难以处理长句,特别是那些比训练语料库中的长句。Cho等人(2014b)的研究表明,随着输入语句长度的增加,基本编码器解码器的性能确实会迅速恶化。为了解决这一问题,我们引入了一个扩展的编码器解码器模型,该模型学会了联合对齐和翻译。每次提出的模型在翻译中生成一个单词时,它(软)搜索源句中最相关信息集中的一组位置。然后,该模型根据与这些源位置相关的上下文向量和所有之前生成的目标单词预测目标单词。

这种方法与基本编码器解码器最重要的区别在于,它不试图将整个输入语句编码为一个固定长度的向量。相反,它将输入的句子编码成一个向量序列,并在解码翻译时自适应地选择这些向量的子集。这使得神经翻译模型不必将源句的所有信息(无论其长度)压缩到一个固定长度的向量中。我们证明这可以让模型更好地处理长句。

在这篇论文中,我们证明了提出的联合学习对齐和翻译的方法比基本的编码器解码器方法取得了显著的改善翻译性能。长句的这种改善更为明显,但任何长度的句子都可以观察到。在英法翻译任务中,该方法通过单一的模型实现了与传统的基于短语的翻译系统相当或接近的翻译性能。此外,定性分析表明,该模型在源句和对应的目标句之间找到了一种语言上合理的(软)对齐。

2 BACKGROUND: NEURAL MACHINE TRANSLATION

从概率的角度来看,翻译等价于在给定源句y的情况下,找到一个目标句y,使y的条件概率最大化,即在神经机器翻译中,我们使用一个并行的训练语料库,拟合一个参数化的模型来最大化句子对的条件概率。当条件分布被翻译模型学习后,给定一个源句,通过搜索最大条件概率的句子,可以生成相应的翻译。

最近,许多论文提出利用神经网络直接学习这种条件分布(如Kalchbrenner and Blunsom, 2013; Cho et al., 2014a; Sutskever et al., 2014; Cho et al., 2014b; Forcada and Neco, 1997)。这种神经机器翻译方法包含两个组件,带第一个合成一个源句子x和第二个解码一个目标句子y。例如,两个递归神经网络(RNN)所使用的(Cho et al ., 2014)和(Sutskever et al ., 2014)源句子变长编码到一个固定长度的向量和向量解码成一种目标句子变长。

尽管神经机器翻译是一种全新的方法,但它已经显示出了良好的效果。Sutskever等(2014)报道,基于长短时记忆(LSTM)单元的神经机器翻译在英法翻译任务上的性能接近传统基于短语的机器翻译系统的最高水平。在现有的翻译系统中添加神经成分,例如,在短语表中对短语对进行评分(Cho等,2014a),或者对候选翻译进行重新排序(Sutskever等,2014),都可以超过以前最先进的性能水平。

2.1 RNN ENCODER–DECODER

这里,我们简要描述了Cho等人(2014a)和Sutskever等人(2014)提出的被称为RNN编码器解码器的底层框架,在此基础上,我们构建了一个能够同时学习对齐和翻译的新架构。

在Encoder–Decoder框架中,编码器读取输入语句,一个向量序列,变成向量c。最常见的方法是使用这样的RNN

在时间t是一个隐藏状态,c是从隐藏状态序列中的生成向量,f和q是非线性函数。Sutskever et al. (2014)(参考第24篇S2S)使用LSTM作为函数f,

在给定上下文向量c和之前预测的所有单词的情况下,解码器通常被训练来预测下一个单词。也就是说,解码器通过将联合概率分解为有序条件,定义了平移y上的概率:

。每一个条件概率模型是:

g是非线性函数, 输出概率为是RNN的隐藏状态。值得注意的是,其他结构,如RNN和去卷积神经网络的混合可以使用(Kalchbrenner and Blunsom, 2013)。

3 LEARNING TO ALIGN AND TRANSLATE

在本节中,我们提出了一种新的神经机器翻译体系结构。新体系结构由bidirectional RNN作为编码器(第3.2节)和译码器组成,译码器在译码翻译时模拟搜索源语句(第3.1节)。

3.1 DECODER: GENERAL DESCRIPTION

在新的模型体系结构中,我们将式(2)中的每个条件概率定义为:

其中是时间i的RNN隐藏状态:

需要注意的是,与现有的编解码器方法(见式(2))不同,这里的概率取决于每个目标单词的上下文向量

上下文向量依赖于一系列annotations,编码器将输入语句映射到其中。每个注释包含关于整个输入序列的信息,重点关注围绕输入序列第i个单词的部分。我们将在下一节详细解释如何计算annotations。

然后,将上下文向量计算为这些注释的加权和

每个注释的权量j计算

是一个对齐模型,它对位置j周围的输入和位置i的输出匹配程度进行评分。得分基于RNN隐藏状态(恰好在发出之前,式(4))和输入语句的第j个注释

我们将对齐模型a参数化为一个前馈神经网络,该神经网络与所提出的系统的所有其他组件联合训练。注意,与传统的机器翻译不同,对齐不被认为是一个潜在的变量。相反,对齐模型直接计算软对齐,这允许反向传播成本函数的梯度。该梯度可用于联合训练对齐模型和整个平移模型。

我们可以理解将所有注释的加权和作为计算预期注释的方法,其中预期超过了可能的对齐。让是一个概率的目标词对齐或翻译,单词来源。然后,第i个词上下文向量就是预期的注释与概率所有注释。

概率,或其相关能源。反映了注释的重要性对前面的隐藏状态,如果在决定下一个状态和生成。直观地说,这在解码器中实现了注意机制。解码器决定要注意源句的某些部分。通过让解码器具有注意机制,我们将编码器从必须将源语句中的所有信息编码为固定长度向量的负担中解放出来。使用这种新方法,信息可以传播到整个注释序列中,解码程序可以相应地选择性地检索这些注释。

3.2 ENCODER: BIDIRECTIONAL RNN FOR ANNOTATING SEQUENCES

通常的RNN,如式(1)所述,按照从第一个符号x1到最后一个符号xTx的顺序读取输入序列x。然而,在建议的方案中,我们希望每个单词的注释不仅要总结前面的单词,还要总结下面的单词。因此,我们提出使用bidirectional RNN (BiRNN, Schuster and Paliwal, 1997),该方法最近已成功应用于语音识别(如Graves et al., 2013)。

BiRNN由前向RNN和后向RNN组成,前向RNN 按顺序读取输入序列()并计算一个正向隐藏状态序列 。后向RNN f按相反的顺序读取序列(),得到一个反向隐藏状态序列

我们每个单词通过连接前向隐藏状态和反向。通过这种方式,注释包含了前面单词和下面单词的摘要。由于RNNs倾向于更好地表示最近的输入,注释将重点放在周围的单词上。解码器和随后的对齐模型使用这个注释序列来计算上下文向量(Eqs5-6)。模型的图解如图1所示。

4 EXPERIMENT SETTINGS

我们对所提出的英法翻译方法进行了评价。我们使用ACL WMT 14.3提供的双语并行语料库作为比较,并报告了Cho等人(2014a)最近提出的RNN编码器解码器的性能。我们对这两个模型使用相同的训练过程和相同的数据集。

4.1 DATASET

WMT 14包含以下英法平行语料库:Europarl (61M单词)、news commentary (5.5M单词)、UN (421M单词)和两个爬虫语料库,分别为90M和272.5M单词,共计8.5 m单词。按照Cho等人(2014a)的方法,我们使用Axelrod等人(2011)的数据选择方法,将合并后的语料库缩减为3.48亿词。除了上述并行语料库外,我们不使用任何单语数据,尽管可以使用更大的单语语料库对编码器进行预培训。我们连接news-test-2012和news-test-2013制作一个开发(验证)集,并对WMT 14测试集(news-test-2014)上的模型进行评估,该测试集包含3003个训练数据中没有的句子。

在通常的标记之后,我们使用每种语言中出现频率最高的3万个单词来训练我们的模型。任何没有包含在候选列表中的单词都被映射到一个特殊的令牌([UNK])。我们不应用任何其他特殊的预处理,如小写大小写或词干,对数据。

4.2 MODELS

我们训练了两种类型的模型。第一个是RNN编码器解码器(RNNencdec, Cho等,2014a),另一个是我们提出的模型,我们称之为RNNsearch。我们对每个模型进行两次训练:首先训练长度不超过30个单词的句子(RNNencdec-30, RNNsearch-30),然后训练长度不超过50个单词的句子(RNNencdec-50, RNNsearch-50)。

RNNencdec的编码器和解码器各有1000个隐藏单元。RNNsearch的编码器由前向和后向递归神经网络(RNN)组成,每个RNN都有1000个隐藏单元。它的解码器有1000个隐藏单元。在这两种情况下,我们使用一个单层maxout (Goodfellow et al., 2013)隐层的多层网络来计算每个目标单词的条件概率(Pascanu et al., 2014)。

我们使用小批量随机梯度下降(SGD)算法和Adadelta (Zeiler, 2012)对每个模型进行训练。每个SGD更新方向使用80个句子的小批计算。我们对每个模型进行了大约5天的培训。

一旦一个模型被训练好,我们使用波束搜索来找到一个近似最大化条件概率的翻译(见,例如Graves, 2012;Boulanger-Lewandowski等,2013)。Sutskever等(2014)使用这种方法从他们的神经机器翻译模型生成翻译。

有关实验中使用的模型体系结构和训练过程的更多细节,请参见附录A和附录B。

5 RESULTS

5.1 QUANTITATIVE RESULTS

在表1中,我们列出了用BLEU评分衡量的翻译性能。从表中可以明显看出,在所有情况下,提议的RNNsearch都优于传统的RNNencdec。更重要的是,当只考虑由已知单词组成的句子时,RNNsearch的性能与传统的基于短语的翻译系统(Moses)一样高。考虑到Moses除了我们用来训练RNNsearch和RNNencdec的并行语料库之外,还使用了一个单独的单语语料库(4.18亿个单词),这是一个重大的成就。

提出这种方法的动机之一是在基本的编码器解码器方法中使用固定长度的上下文向量。我们推测,这一限制可能使基本的编码器解码器方法在长句中表现不佳。从图2中可以看出,随着句子长度的增加,RNNencdec的性能显著下降。另一方面,RNNsearch-30和RNNsearch-50都对句子的长度有更强的鲁棒性。特别是RNNsearch- 50,即使句子长度在50或50以上,也没有显示出性能下降。RNNsearch-30的性能甚至优于RNNencdec-50(见表1),这进一步证实了该模型相对于基本编码器解码器的优越性。

5.2 QUALITATIVE ANALYSIS

5.2.1 ALIGNMENT

提出的方法提供了一种直观的方法来检查生成翻译中的单词与源句中的单词之间的(软)对齐。这是通过可视化注释权重 Eq。(6),如图3所示。每个图中矩阵的每一行都表示与注释相关的权重。从这里我们可以看出,在生成目标单词时,源句中的哪些位置被认为更重要。

从图3的对齐可以看出,英语和法语单词的对齐在很大程度上是单调的。我们在每个矩阵的对角线上都能看到强权重。然而,我们也观察到一些非平凡的、非单调的排列。在法语和英语中,形容词和名词的顺序通常是不同的,我们可以在图3 (a)中看到一个例子。从这个图中,我们可以看到模型正确地将短语[European Economic Area]翻译成[zone economique europ een]。RNNsearch能够正确地将[zone]与[Area]对齐,跳过两个单词([European]和[Economic]),然后一次返回一个单词来完成整个词组[zone economique europ eenne]。

相对于硬对齐,软对齐的强度是显而易见的,例如,从图3 (d)中可以看出。任何硬对齐都会将[the]映射到[l]和[man]映射到[homme]。这对翻译是没有帮助的,因为必须考虑[the]后面的单词来决定它应该被翻译成[le]、[la]、[les]还是[l]。我们的软对齐通过让模型同时考虑[the]和[man]很自然地解决了这个问题,在这个例子中,我们看到模型能够正确地将[the]转换成[l]。我们在图3所示的所有案例中都观察到了类似的行为。软对齐的另一个好处是,它可以自然地处理不同长度的源和目标短语,而不需要反直觉地将一些单词映射到某个地方或从某个地方映射到另一个地方([NULL])(参见Koehn, 2010年第4章和第5章)。

5.2.2 LONG SENTENCES

从图2中可以清楚地看出,本文提出的模型(RNNsearch)在长句翻译方面明显优于传统模型(RNNencdec)。这可能是由于RNNsearch不需要将长句完美地编码为固定长度的向量,而只需要精确地编码围绕特定单词的输入句的部分。作为一个例子,考虑来自测试集的这个源语句:

rnnenc12 -50将这句话翻译成:

RNNencdec-50正确地翻译了原句,直到[医疗中心]。然而,从那时起(下划线),它偏离了原句的原意。例如,它用[en fonction de son etat de sant e](based on his state of health)代替了[based on his status as a health care worker at a hospital]。

另一方面,RNNsearch-50生成了以下正确的翻译,保留了输入句子的全部含义,而没有遗漏任何细节:

让我们考虑一下测试集中的另一个句子:

rnnenc12 -50的翻译是:

和前面的例子一样,RNNencdec在生成大约30个单词(参见带下划线的短语)后开始偏离源语句的实际含义。在那之后,翻译的质量就会下降,出现一些基本的错误,比如没有结尾处的引号。
同样,RNNsearch-50能够正确地翻译这句话:

结合已经给出的定量结果,这些定性观察证实了我们的假设,即相对于标准的RNNencdec模型,RNNencdec搜索架构能够更可靠地翻译长句。
在附录C中,我们提供了一些由RNNencdec-50、RNNsearch-50和谷歌翻译生成的长源句的示例翻译,以及参考翻译。

6 RELATED WORK

6.1 LEARNING TO ALIGN

Graves(2013)最近在手写合成的背景下提出了一种类似的将输出符号与输入符号对齐的方法。笔迹合成是一项要求模型生成给定字符序列的笔迹的任务。在他的工作中,他使用高斯核的混合来计算注释的权重,其中每个核的位置、宽度和混合系数都是通过对齐模型来预测的。更具体地说,他的对齐被限制为预测位置,使位置单调地增加。

与我们的方法的主要区别在于,在(Graves, 2013)中,注释权重的模式只向一个方向移动。在机器翻译的上下文中,这是一个严重的限制,因为(远程)重新排序常常需要生成语法正确的翻译(例如,英语到德语)。

另一方面,我们的方法需要计算源句中每个单词对应翻译中的每个单词的注释权重。这个缺点并不严重,在翻译任务中,大多数输入和输出的句子只有15 40个单词。然而,这可能会限制拟议方案对其他任务的适用性。

6.2 NEURAL NETWORKS FOR MACHINE TRANSLATION

自Bengio等(2003)提出神经概率语言模型以来,神经网络在机器翻译中得到了广泛的应用。然而,神经网络的作用在很大程度上仅限于为现有的统计机器翻译系统提供一个单一的功能,或者对现有系统提供的候选翻译列表进行重新排序。

例如,Schwenk(2012)提出在基于短语的统计机器翻译系统中,使用前馈神经网络计算一对源和目标短语的得分,并将该得分作为额外的特征。最近,Kalchbrenner and Blunsom(2013)和Devlin等人(2014)报道了成功地将神经网络作为现有翻译系统的子组件。传统上,作为目标端语言模型训练的神经网络被用来重新核取或重新排序候选翻译的列表(参见,例如,Schwenk et al., 2006)。

虽然上述方法已被证明可以提高翻译性能超过最先进的机器翻译系统,但我们更感兴趣的是一个更雄心勃勃的目标,即设计一个全新的基于神经网络的翻译系统。因此,我们在本文中考虑的神经机器翻译方法与这些早期的工作有很大的不同。我们的模型没有使用神经网络作为现有系统的一部分,而是独立工作,直接从源句生成翻译。

7 CONCLUSION

传统的神经机器翻译方法称为编码器译码器方法,它将整个输入语句编码成一个固定长度的向量,然后从这个向量对翻译进行解码。根据Cho等人(2014年b)和Pouget-Abadie等人(2014年)最近的一项实证研究,我们推测使用固定长度的上下文向量翻译长句是有问题的。

在本文中,我们提出了一种新的体系结构来解决这个问题。我们扩展了基本的编码器解码器,让模型(软)在生成每个目标字时搜索一组输入字,或者由编码器计算出它们的注释。这使模型不必将整个源语句编码为一个固定长度的向量,而且还使模型只关注与生成下一个目标单词相关的信息。这对神经机器翻译系统在较长句子中产生良好效果的能力具有重要的积极影响。与传统的机器翻译系统不同,翻译系统的所有部件,包括对齐机制,都经过联合训练,以获得更好的生成正确翻译的日志概率。

我们在英法翻译任务中测试了这个被称为RNNsearch的模型。实验结果表明,无论句子长度如何,该算法都比传统的编译码器模型(RNNencdec)有显著的性能优势,并且对源语句的长度具有更强的鲁棒性。从定性分析中,我们研究了RNNsearch生成的(软)对齐,我们可以得出这样的结论:当模型生成正确的翻译时,它可以正确地将每个目标单词与源句中的相关单词或它们的注释对齐。

也许更重要的是,所提议的方法实现了与现有基于短语的统计机器翻译相当的翻译性能。这是一个引人注目的结果,考虑到提出的体系结构,或整个神经机器翻译家族,直到今年才被提出。我们相信这里提出的体系结构是朝着更好的机器翻译和更好地理解自然语言迈出的有希望的一步。

留给未来的挑战之一是更好地处理未知或罕见的词汇。这将要求模型得到更广泛的应用,并在所有上下文中匹配当前最先进的机器翻译系统的性能。

猜你喜欢

转载自blog.csdn.net/weixin_37993251/article/details/88747684