Attention机制

在机器翻译领域中,Attention机制是从机器视觉领域首先提出的。其直觉是当人们观察事物时,人们总是将注意力放在关注的事物上,而不是看的所有画面。
为了更好地解释Attention机制的作用,我们引入机器翻译任务中的问题。在机器翻译任务中,人们发现,RNN对短的句子总是有很好的翻译效果,而长句子的翻译效果则不尽如人意,这是因为即使是LSTM也只能记住大约30个词。我们可以从这样一个方面考虑,如下图,是一种机器翻译模型,encoder编码所有的输入之后输出一个C,decode部分每次将前一个隐藏单元ht1h_{t-1}以及C作为输出进行翻译,因此翻译时一直依靠C单元,由于C单元维度有限,因此他能保留的信息可能会不足以翻译某些位置的词,因此会产生错误。
Attention机制
Attention机制就可以解决这个问题。我们将所有隐藏单元都做作为输入,但是分配不同的权重,如下图。这时,和当前翻译位置有关的隐藏单元,将会有更大的权重用于翻译。这就是Attention机制,其让网络有目的的去找到需要用于翻译的部分,这样就能更好的利用之前学习到的内容。

Attention机制