NLP论文阅读(五)

On the Properties of Neural Machine Translation: Encoder–Decoder Approaches

神经机器翻译是一种相对较新的纯粹基于神经网络的统计机器翻译方法。神经机器翻译模型通常由编码器和解码器组成。编码器从可变长度输入句子中提取固定长度表示,并且解码器从该表示生成正确的翻译。在本文中,我们专注于使用两个模型分析神经机器翻译的属性; RNN编码器-解码器和新提出的门控递归卷积神经网络。作者证明神经机器翻译在没有未知单词的短句子上表现相对较好,但随着句子长度和未知单词数量的增加,其性能迅速下降。此外,我们发现所提出的门控递归卷积网络自动学习句子的语法结构。

最近提出了一种纯粹基于神经网络的统计机器翻译新方法(Kalchbrenner and Blunsom, 2013;Sutskever et al., 2014)。这种新的方法,我们称之为神经机器翻译,是受到最近深度表征学习趋势的启发。(Kalchbrenner and Blunsom, 2013;Sutskever et al。,2014;Cho等,2014)由编码器和解码器组成。编码器从变长输入语句中提取定长向量表示,解码器从该表示中生成正确的变长目标翻译。

从实际和理论上讲,神经机器翻译的出现具有重要意义。神经机器翻译模型仅需要传统统计机器翻译(SMT)模型所需的一小部分内存。我们为本文训练的模型总共只需要500MB的内存。这与现有的SMT系统形成鲜明对比,后者通常需要数十亿字节的内存。这使得神经机器翻译在实践中具有吸引力。此外,与传统的翻译系统不同,神经翻译模型的每个组件都被联合训练以最大化翻译性能。

由于这种方法相对较新,因此在分析这些模型的属性和行为方面没有太多工作。例如:这种方法表现更好的句子有哪些属性?源/目标词汇的选择如何影响性能?在哪些情况下神经机器翻译失败?

了解这种新神经机器翻译方法的特性和行为以确定未来的研究方向至关重要。此外,了解神经机器翻译的弱点和优势可能会导致更好的方法集成SMT和神经机器翻译系统。

在本文中,我们分析了两个神经机器翻译模型。其中之一是最近提出的RNN编码器-解码器(Cho等人,2014)。另一个模型用RNN编码器-解码器模型中的编码器替换了一个新的神经网络,我们称之为门控递归卷积神经网络(grConv)。我们对从法语到英语的翻译任务评估这两个模型。

我们的分析表明,随着源句长度的增加,神经机器翻译模型的性能会迅速下降。此外,我们发现词汇量大小对翻译性能有很大影响。尽管如此,从质量上我们发现这两种模型大多数时间都能够生成正确的翻译。此外,新提出的grConv模型能够在没有监督的情况下学习一种源语言的句法结构。

Neural Network for Variable-length Sequences

在本节中,我们描述了两种能够处理可变长度序列的神经网络。这些是递归神经网络和提出的门控递归卷积神经网络。

Recurrent Neural Network with Gated Hidden Neurons

pic1
递归神经网络(RNN,图1(a))通过随时间保持隐藏状态h而对可变长度序列$x=(x_1,x_2,…,x_T)起作用。在每个时间步t,隐藏状态h(t)被更新

其中f是激活函数。通常f就像对输入向量执行线性变换,对它们求和以及应用逐元素逻辑sigmoid函数一样简单。

通过学习下一个输入$p(x_{t+1}|x_t,···,x_1)$的分布,RNN可以有效地用于学习可变长度序列的分布。例如,在1-K矢量序列的情况下,可以通过作为输出的RNN来学习分布。

对于所有可能的符号j=1,…,K,其中$w_j$是权重矩阵W的行。这导致联合分布

最近,在(Cho等人,2014)中提出了一种新的RNN激活函数。新的激活函数增加了通常的逻辑sigmoid激活函数,其中两个门控单元称为reset, r和update, z,门控。每个门取决于先前的隐藏状态$h^(t-1)$,并且当前输入$x_t$控制信息流。这让人联想到长期短期记忆(LSTM)单位(Hochreiter和Schmidhuber,1997)。有关该单元的详细信息,请参阅(Cho等,2014)和图1(b)。对于本文的其余部分,我们总是使用这个新的激活函数。

Gated Recursive Convolutional Neural Network

除了RNN之外,处理可变长度序列的另一种自然方法是使用递归卷积神经网络,其中每个级别的参数通过整个网络共享(参见图2(a))。在本节中,我们介绍了一个二进制卷积神经网络,其权重递归地应用于输入序列,直到它输出一个固定长度的向量。除了通常的卷积架构之外,我们还建议使用前面提到的门控机制,它允许递归网络动态学习源句子的结构。

令x =$(x_1,x_2,…,x_T)为输入序列,其中x_t∈R^d。所提出的门控递归卷积神经网络(grConv)由四个权重矩阵$W^1,W^r,G^1和G^r$组成。在每个递归级别t∈[1,T-1],第j个隐藏单元h_j^{(t)}的激活由下式计算

其中$W_c,W_l和W_r$是一个门的值,它们总和加起来为1.隐藏单元被初始化为

其中U是将input投影到一个隐空间中去
pic2
新的激活$\overline{h}_j^{(t)}$如往常一样被计算:

其中$\phi$是一个逐元素的非线性.

门的系数w被计算通过

其中$G^l,G^r∈R^{3×d}$并且

根据这种激活,人们可以将递归级别t的单个节点的激活视为从左右子节点计算的新激活,来自左子节点的激活或来自右子节点的激活之间的选择。该选择允许递归卷积的整体结构相对于输入样本自适应地改变。参见图2(b)的说明。

在这方面,我们甚至可以将提议的grConv视为进行一种无监督的解析。如果我们考虑选通单元作出硬判决的情况,即ω遵循1-of-K编码,则很容易看出网络适应输入并形成树状结构(见图2)。但是,我们将进一步研究该模型所学的结构,以便进一步研究。

Purely Neural Machine Translation

Encoder–Decoder Approach

翻译的任务可以从机器学习的角度理解学习的条件分布p(f|e)目标句子(翻译)f给定源句子e。一旦条件分布模型是后天习得的,可以直接使用模型样本目标句子判一个源,通过实际采样或使用(近似)搜索算法寻找最大的分布。

最近的一些论文提出使用神经网络直接从双语平行语料库中学习条件分布(Kalchbrenner和Blunsom,2013; Cho等,2014; Sutskever等,2014)。例如,(Kalchbrenner和Blunsom,2013)的作者提出了一种涉及卷积n-gram模型的方法,以提取源句的固定长度矢量,该矢量用RNN增强的逆卷积n-gram模型解码。在(Sutskever等人,2014)中,使用具有LSTM单元的RNN来编码源句子并从最后隐藏状态开始,以解码目标句子。同样,(Cho et al。,2014)的作者提出使用RNN编码和解码一对源和目标短语

所有这些最近的工作的核心是编码器-解码器架构(见图3)。编码器处理可变长度输入(源句子)并构建固定长度矢量表示(在图3中表示为z)。在编码表示上进行条件化,解码器生成可变长度序列(目标句子)。
pic3
之前(Sutskever等,2014),这种编码器 - 解码器方法主要用作现有统计机器翻译(SMT)系统的一部分。这种方法用于重新排列SMT系统生成的n-最佳列表(Kalchbrenner和Blunsom,2013),(Cho等人,2014)的作者使用这种方法为现有存在的短语表提供额外的分数。
在本文中,我们专注于分析直接翻译性能,如(Sutskever等,2014),具有两种模型配置。在这两个模型中,我们使用带有门控隐藏单元的RNN(Cho等人,2014),因为这是唯一不需要非平凡的方法来确定目标长度的选项之一。第一个模型将使用与门控隐藏单元相同的RNN作为编码器,如(Cho等人,2014),第二个模型将使用所提出的门控递归卷积神经网络(grConv)。我们的目标是了解编码器 - 解码器方法对BLEU测量的平移性能的归纳偏差。

Experiment Settings

Models

我们训练两种模型:RNN编码器 - 解码器(RNNenc)(Cho等人,2014)和新提出的门控递归卷积神经网络(grConv)。请注意,两种模型都使用带有门控隐藏单元的RNN作为解码器(参见第2.1节)

我们使用带有AdaDelta(Zeiler,2012)的minibatch随机梯度下降来训练我们的两个模型。我们将平方权重矩阵(转移矩阵)初始化为正交矩阵,其中在RNNenc的情况下其谱半径设置为1,在grConv的情况下设置为0.4。 tanh和rectifier(max(0,x))分别用作RNNenc和grConv的元素非线性函数。

grConv有2000个隐藏的神经元,而RNNenc有1000个隐藏的神经元。在两种情况下,嵌入字都是620维.2两种模型都训练了大约110小时,相当于grConv和RNNenc的296,144次更新和846,322次更新。

Translation using Beam-Search
我们使用基本形式的波素搜索(beam-search)来找到最大化特定模型(在这种情况下,RNNenc或grConv)给出的条件概率的翻译。在解码器的每个时间步骤,我们保持具有最高对数概率的s个翻译候选者,其中s = 10是波束宽度。在波束搜索期间,我们排除包含未知单词的任何假设。对于在最高得分候选者中选择的每个序列结束符号,波束宽度减1,直到波束(beam)宽度达到零。

波束搜索(近似)找到RNN下的最大对数概率序列,并在(Graves,2012)和(Boulanger-Lewandowski等,2013)中成功使用。最近,(Sutskever等,2014)的作者发现这种方法在基于LSTM单元的纯神经机器翻译中是有效的。

当我们使用波束搜索来找到k个最佳平移时,我们不使用通常的对数概率,而是使用相对于翻译长度进行归一化的概率。这防止了RNN解码器偏向较早的翻译行为,例如,(Graves,2013)。

-------------本文结束感谢您的阅读-------------