在下面这两篇文章中都有提到 attention 机制:
使聊天机器人的对话更有营养
如何自动生成文章摘要
今天来看看 attention 是什么。
下面这篇论文算是在NLP中第一个使用attention机制的工作。他们把attention机制用到了神经网络机器翻译(NMT)上,NMT其实就是一个典型的sequence to sequence模型,也就是一个encoder to decoder模型
https://arxiv.org/pdf/1409.0473.pdf
encoder 里面用的是 Bi RNN,这样每个单词的表达不仅能包含前一个单词的信息,还可以包含后一个; 前向RNN按输入序列的顺序,生成同样顺序的隐藏层状态,反向RNN则逆向生成隐藏层状态序列,然后我们将每个时刻的这两个状态合并为一个状态,这样它就既包含当前单词的前一个单词信息,也包含后一个信息; 这个状态之后将被用于 decoder 部分。
这里的条件概率是这样的,