【论文笔记】Neural Machine Translation by Jointly Learning to Align and Translate
这篇论文提出了一种新的神经机器翻译方法(称为RNNsearch),该方法基于注意力机制的双向RNN编码器和解码器。传统的神经机器翻译系统通常将输入序列编码为固定长度的向量,并将其传递给解码器进行翻译。然而,这种方法在处理长句子时存在不足。为了改进这一问题,本文提出了一种新的框架:每个目标词的位置由一个注释表示,并且这些注释可以动态地选择输入序列中的相关部分。通过这种机制,在解码时可以更灵活地处理长句子。实验结果表明,在翻译性能上,提出的模型优于传统的基于短语的翻译系统(如Moses)。此外,软对齐机制允许模型自然地处理不同长度的源和目标短语,并提供了对齐示意图以解释生成过程。
Neural Machine Translation by Jointly Learning to Align and Translate
这篇论文首次在自然语言处理(NLP)或 encoder-decoder 框架中应用了 attention 机制,并将其首次用于神经网络机器翻译(NMT)系统。
Abstract 神经机器翻译作为一种新型的机器翻译方法应运而生。相较于传统的统计机器翻译方法其核心目标在于构建一个统一的神经网络架构该网络能够通过自身参数优化实现对多种语言之间互译功能的最大化提升。近年来提出的多数神经机器翻译系统多采用编码器-解码器架构其中解码器将目标序列编码为固定长度向量这一过程成为其局限性所在为此我们提出了一种改进型框架使得模型在进行译文生成时能够直接参考原句中的相关部分而不必进行显式划分从而实现了对现有短语基系统的超越性性能表现通过定量分析我们发现这种改进型框架在定性和定量评估指标上均优于传统方法这表明所设计机制与其预期效果高度吻合
1 Introduction
2013至2014年间,神经网络机器翻译作为一种新型方法被首次提出。与基于段的传统机器翻译系统不同的是——它由多个经过独立优化的小组件构成,并旨在通过统一训练实现对完整句子的一体化处理能力。
在神经机器翻译领域中存在许多基于编码器-解码器架构的方法。每个语言分别拥有独立的编码器和解码器。或者将某一种语言的特定编码器应用于某个特定句子,并比较其输出结果。此外,在这种架构中还涉及到了一个较为复杂的模型设计:首先使用一个由多个隐藏层构成的前馈网络来处理输入序列;然后通过递归机制逐步生成目标语句;最后再利用自注意力机制捕捉长距离依赖关系并生成最终结果。值得注意的是,在这种设计模式下我们通常会遇到计算复杂度较高的问题因此需要引入一些优化策略如残差连接门控注意力等技术手段以保证模型的有效训练与推理性能
该编码器-解码器模型存在一个潜在的问题在于神经网络必须将输入句子的所有关键信息压缩为固定长度的向量这一过程。这可能导致神经网络在处理较长的输入时遇到困难,并尤其在面对比训练数据更长的句子时表现不佳。研究表明(如文献中所述), Cho(2014)发现这一基本编码器-解码器架构随着输入长度增加其性能会显著下降。注:编码器-解码器模型的一个主要缺陷是难以有效处理过长的输入。
为了有效解决这一问题,在传统编码器-解码器架构的基础上提出了一种改进方案。在每次解码器生成输出单词的过程中,系统会采用软性机制定位与当前解码步骤最相关的源句信息区域,并通过整合与当前解码阶段相关联的源句上下文信息以及前一阶段输出的所有目标词汇信息来进行预测。其中重点在于通过注意力机制有效处理较长或复杂的输入文本。
这些改进型encoder-decoder架构与传统的基本encoder-decoder架构的主要区别在于其对信息处理策略的不同。传统方法旨在一次性将整个输入序列压缩为固定长度的向量进行后续处理;而改进型架构则采取分阶段的信息编码方式,在解码阶段动态选择编码向量的有效子集。这种设计使得神经翻译模型能够避免将源语言文本的所有细节信息简单地压缩为固定长度的向量表示。通过这一改进措施,在保持信息完整性的同时显著提升了对长文本的理解与处理能力。
在论文中进行实验研究后发现,在英法双语翻译任务中所提出的地对齐与联合学习方法较传统单模态encoder-decoder架构展现出显著的性能优势。经过深入分析表明,在保持模型简洁性的同时通过引入更灵活的排列机制能够进一步提升译文质量。具体而言,在英法双语翻译任务中所提出的地对齐与联合学习方法较传统单模态encoder-decoder架构展现出显著的性能优势。经过深入分析表明,在保持模型简洁性的同时通过引入更灵活的排列机制能够进一步提升译文质量.
2 背景:神经机器翻译
通过概略学的视角分析可知,在翻译行为中寻求使条件概率最大化的目标句y相当于完成与源句x相对应的任务。

在神经机器翻译领域中, 通过并行训练数据集进行参数化模型的拟合, 用于使每对句子的概率最大化. 当该模型掌握了条件分布后, 在给定源句时能够找到对应的目标句子.
当前研究中相关工作已开始关注条件分布的学习机制。其整体架构一般包含两个关键模块:第一个模块负责编码器模块将输入序列转化为表征;第二个模块则负责解码器模块将编码的表征转换为目标语言的输出序列。其中以Cho和Sutskever(2014)为代表的研究者采用双层递归神经网络架构,在编码器模块中将可变长度的源语句映射至固定长度的嵌入表示;在解码器模块中,则通过递归机制将该嵌入表示逐步解码为可变长度的目标语句。
虽然作为一种新兴的方法,在神经机器翻译方面已经展现出良好的应用效果。Sutskever(2014)的研究指出,在英法双语翻译任务中基于LSTM单元的RNN模型已经达到传统基于短语表的机器翻译系统的最高性能水平。例如,在现有系统的基础上引入神经组件以评估短语表中的短语对并优化候选译文排序等技术处理措施,则已超越以往最高水平的技术性能。
2.1 RNN encoder-decoder
encoder将向量x的序列

转换成向量c,最常见的使用RNN的方法是

(1)


在时间t点的状态变量代表t时刻的状态信息,在此过程中由上述状态变量生成的向量c具有特定的意义与作用。值得注意的是,在该模型中所涉及的f和s是若干非线性函数[Ref: Sutskever, 2014]。具体而言,在Sutskever(2014)研究中使用了LSTM架构来具体化这两个函数。

。
解码器通常被训练给定文本向量c和所有之前预测过的单词 {

} ,预测下一个单词

另一种思路而言,在解码器中进行概率计算时, 通过分解过程将联合概率分解为一系列有序的条件以计算生成翻译y的概率

(2)
这里y= {

}。对RNN,每个条件概率被描述为:

(3)
这里g是非线性的,可能是多层的函数,它的输出是

的概率,

表示为RNN的隐藏层信息。值得注意的是,此外还可以采用其他架构设计方式,类似于将RNN与上采样神经网络进行融合。
3 对齐和翻译学习
在本节中,我们构建了创新性的神经机器翻译模型。该框架由两个主要组件构成:一个是充当编码模块的双向递归神经网络(编号为3.2),另一个是根据目标语境进行引导性搜索的解码模块(编号为3.1)。
3.1 解码:通用描述
在新的模型框架中,我们定义了等式(2)中的每个条件概率:

(4)
这里的

是i时刻RNN的隐层状态,它被计算为:

值得注意的是与现有的传统 encoder-decoder 架构相比,在这里我们关注的概率是针对每一个目标词的。

不同的上下文向量

决定的。
上下文向量

取决于由编码器映射的输入序列的翻译序列

。每个注释

整合了整个输入序列的所有信息内容,并对其中特别关注的是输入序列中第i个单词及其周边区域的信息进行了详细分析。本节将深入阐述注释 生成的具体机制。
上下文向量

是通过计算所有注释的加权和:

(5)
每个注释

的 权重

的计算方法:

(6)
这里

属于对齐模型的一种方法;它能够计算位置 j 附近的输入与位置 i 的输出之间的匹配程度。其得分为基于该 RNN 网络的隐层状态计算得出。

和 输入序列的第 j 个注释

来判断的。
我们将其参数a配置为一个前馈神经网络,在该神经网络与系统中其他组件协同训练时实现了良好的效果。值得注意的是,在传统机器翻译中不将其视为潜在向量;相反地,则直接执行软对齐计算以促进代价函数梯度实现反向传播效果。这些梯度则可用于同时训练对齐模型以及整个翻译体系。
这种方法使得所有注释的加权和被用作计算一种预期注释的方法;这种预期是建立在可能的对齐基础上。

是目标词

是由源词

对齐,或者翻译过来的概率。那么,第 i 个上下文向量

是所有具有概率

的注释中的期望注释。
概率

,或者其相关的能量

,反映了注释

的在决定下一个状态

和生成

时,过去的隐藏状态

该方法的重要性得以体现。从直观上讲,在解码阶段实现了对源句子关键信息的关注。通过赋予解码器注意力机制的能力,在压缩为固定长度表示方面取代了传统方法。这种方法下,在注释序列中信息得以传播,并由选择性模块进行提取。
3.2 编码器:用于注释序列的双向RNN
通常的RNN,像等式(1)描述的那样,从第一个符号

到最后一个

依次读取输入序列x。在我们的方案中,每个单词注释需要同时总结前面和后面的内容。基于此原因, 我们提出采用双向的RNN(biRNN, 1997)。该方法已被成功地应用于语音识别领域。
依次读取输入序列x。在我们的方案中, 每个单词注释不仅需要总结前面的内容, 同时还需要总结后面的内容。基于此原因, 我们提出采用双向的RNN(biRNN, 1997)。该方法已被成功地应用于语音识别领域。
一个biRNN包括前向和后向RNN。前向RNN

按顺序读取输入向量(从

到

)并计算前向隐藏状态序列

。后向RNN

逆序读取序列(从

到

),得到一个后向隐藏状态序列

。
我们将前向隐层状态

和后向隐层状态

联系起来(
),得到每个单词

的注释。用这样的方法,注释

不仅能够归纳前面的内容,还能够概括后续的信息。值得注意的是,在处理序列数据时,RNN倾向于正当地处理最近输入的信息,并提供相应的注释说明。

就会更集中单词

的注释。注释序列被解码器和排列模型之后用来计算文本向量(用等式(5)和(6))。
4 实验设置
4.1 数据
4.2 模型
进行了两种模型的系统性训练工作。其中一个是基于 Cho2014 年发表的研究成果提出的 RNN Encoder-Decoder 模型(标记为 RNNencdec),另一个作为本文的核心创新点提出的新方法被标记为 RNNsearch 系列模型。在具体实施过程中,默认情况下每种方法均被独立优化两次:首先采用了较短序列的数据进行初步学习(30词长度)——分别标记为 RNNencdec-30 和 RNNsearch-30;随后转而对较长序列的数据进行了深入优化(50词长度)——分别标记为 RNNencdec-50 和 RNNsearch-50。
在RNNencdec架构中,编码器和解码器各自拥有1,000个隐藏单元。对于RNNsearch模型而言,在其编码器部分由前后向两个独立的RNN模块构成。在以上两种方法中,则采用了包含单个最大激活(single maxout)机制的多层网络架构来推导每个目标词的概率分布。
我们采用了同样的小批量数据上的随机梯度下降方法(Zeiler, 2012)。在确定每次SGD更新方向时, 我们采用的是基于80个句子的小批量样本进行计算的方法. 经过大约五天的时间, 我们对每个模型进行了系统性的训练.
当训练模型时,我们使用波束来搜索近似条件概率最大的翻译。
5 结果
5.1 定量结果
表一展示了基于BLEU分数评估翻译性能的数据对比。通过表格可以看出,在所有情况下,所提出的RNNsearch模型均超越了传统方法中的RNN编码器-解码器架构。特别地,在处理仅由已知词汇构成的句子时,RNNsearch不仅不逊色于基于短语的传统翻译系统(Moses),其性能表现甚至更为出色。这是一个重要成果,因为与之形成对比的是Moses系统主要依赖单一语料库进行训练这一显著特点。
我们的研究出发点之一是为了在传统的encoder-decoder架构中引入固定长度的历史状态表示。我们由此认为这种局限性可能导致传统的encoder-decoder架构在处理较长文本时效率降低。通过实验对比结果表明,所提出的改进型模型较传统 encoder-decoder架构表现出显著优势,在处理较长文本信息时展现出更好的性能水平。
5.2 定性分析
5.2.1 对齐
该方法旨在提供一种直观且高效的机制来识别译文与原文中对应词汇之间的软对齐关系。通过分析每行数据,我们能够详细解释这些数据所反映的与译文相关的权重分布情况。进一步地,在生成目标词汇时,我们能够深入分析这些数据以推断出在生成目标词汇时哪些位置具有更高的重要性特征。
从图3所示的数据分布来看,在英语与法语语言间的词汇对应关系上主要呈现出一种单调递增的趋势。通过分析各矩阵主元位置上的权重值发现,在大多数情况下这些位置都具有较高的数值权重。然而我们还发现了若干例外情况这些异常现象值得注意的是形容词与名词在两种语言中的出现位置存在明显的差异性研究发现虽然整体上来说RNNsearch算法能够有效地完成词语间的配准但其具体机制仍需进一步深入探究。
通过观察图表可以看出软对齐相较于硬对齐更具优势。相比而言,在处理翻译时显得不够流畅。然而,在实际应用中能够较为容易地根据前后文进行对应。另一个优点是能够较为容易地处理不同长度的源和目标短语,并不采用非直观的方法将某些词映射到(NULL)。
5.2.2 长句子
RNNsearch相较于传统模型(RNNencdec)在处理长句翻译任务上表现更为优秀。这得益于其无需将长句完美编码为固定长度的向量这一特点,在精准对准输入句子中某个特定单词周围的语境方面具有显著优势。
