Neural Machine Translation By Jointly Learning To Align and Translate
解决的问题(Motivation)
传统的Encoder-Decoder模型必须由Encoder把源句编码为一个固定长度的vector,对于提高模型的性能是一个瓶颈。
由于Encoder需要能够把源句表示的所有信息包含在转化的vector中,所以难以处理很长的句子,尤其是比训练集中句子要长的句子。
提出的方法
每次生成一个词的时候,自动搜索与预测目标词有关的源句的部分,模型利用这些上下文向量和已经生成的目标单词的向量来生成这个单词,因此可以不需要另外硬性的把整个源句转化为一个向量。
Details
传统的Encoder-Decoder模型(RNN):
目标词的条件概率:
p(yt∣{
y1,y2,...,yt−1},c}p(y_t|\{y_1,y_2,...,y_{t-1}\},c\}p(yt∣{
y1,y2,...,yt−1},c}
=g(yt−1,st,c)=g(y_{t-1},s_t,c)=g(y