这是2015年的一篇会议论文,作者是Dmitry Bandana,KyungHyun Cho,Yoshua Bengio。本文最重要的贡献就是提出了attention机制。下面我先总结每段的要点,然后适当添加自己的解读。
ABSTRACT
神经机器翻译(NMT)里,别人大多用encoder-decoder,我们推测把原句编码到一个固定长度的向量是一个瓶颈,然后我们提出了改进。1 INTRODUCTION
神经机器翻译是新技术,大多数都是encoder-decoder。一个潜在的问题是把信息都压缩在固定长度的向量,无法对应长句子。为了解决这个问题,我们提出了一个扩展,它同时进行对齐和翻译。每次我们的模型生成新的翻译词,它在原句那些最有可能包含有关信息的位置上进行搜索。
这个方法最重要的特点是,它没有尝试将原句的所有部分编码到固定长度的向量,而是它把原句编码到一序列向量,然后在解码的时候灵活的选用这个序列的子集。2 BACKGROUND:NEURAL MACHINE TRANSLATION
从统计的角度看,翻译相当于寻找译句 y ,使得给定原句 x 时条件概率最大,即 argmaxyp(y|x) 。2.1 RNN ENCODER-DECODER
在Encoder-Decoder框架里,编码器把原句,一个序列的向量 x=(x1,...,xTx) ,编码到一个向量 c 。最普遍的方法是用一个RNN:
ht=f(xt,ht−1)
还有
c=q({ ht,...,hTx})
解码器用来给定上下文向量 c 和所有之前预测好的词{y1,...,yt′−1} ,预测下一个词 yt