Encoder-Decoder 的缺陷
与其说是 Encoder-Decoder 的局限,不如说是 RNN 的局限,在机器翻译中,输入某一序列,通过 RNN 将其转化为一个固定向量,再将固定序列转化为输出序列,即上面所讲的将英文翻译成中文。
不管输入序列和输出序列长度是什么,中间的「向量 c」长度都是固定的。所以,RNN 结构的 Encoder-Decoder 模型存在长程梯度消失问题,对于较长的句子,我们很难寄希望于将输入的序列转化为定长的向量而保存所有有效信息,即便 LSTM 加了门控机制可以选择性遗忘和记忆,随着所需翻译的句子难度怎能更加,这个结构的效果仍然不理想。
Attention 机制的引入
Attention 就是为了解决信息过长导致信息丢失的问题,Attention 名为注意力机制,何为注意力机制。