一、背景
seq2seq模型:https://blog.youkuaiyun.com/zyk9916/article/details/118002934
在seq2seq模型中,encoder将整个源句子编码成一个固定长度的向量(即取encoder中的最后一个隐状态),然后送到decoder中解码。这种方法对使得长句子难以处理。
作者认为,将句子编码成定长的向量是提升模型性能的瓶颈,因此提出了注意力模型来改善这个限制。
作者提出的模型不将整个输入句子编码为一个固定长度的向量。相反,它将输入语句编码为一个向量序列,并在decode时自适应地选择这些向量的子集。每次在翻译中生成一个词时,都会搜索源句子中相关信息最集中的一组位置。然后,该模型根据与这些源位置相关的上下文向量和之前生成的所有目标词来预测目标词。
二、模型
Encoder:
输入序列:

采用双向RNN模型,对输入序列进行编码,得到一系列隐状态:

Decoder:
生成一个词yi的过程:
① 注意力机制:
根据si-1(Decoder中上一个词的隐状态),对每一个hj(Encoder中第j个隐状态)计算一个eij</

本文是关于Neural Machine Translation with Attention模型的阅读笔记。相较于seq2seq模型,注意力模型不再将源句子编码为固定长度向量,而是通过自适应选择源句子向量的子集,以解决长句子处理的难题。模型使用双向RNN编码输入序列,并在解码时通过注意力机制确定源句子中相关位置,以此预测目标词。解码过程包括计算注意力权重、上下文向量及生成目标词的概率。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



