EleAtt-RNN: Adding Attentiveness to Neurons in Recurrent Neural Networks
EleAtt-RNN: 在循环神经网络的神经元当中加入注意力
1.创新点
现在研究者研究RNN,把注意力集中在现在和之前的输入对输出的贡献上,这篇文章(为了简单,下称本文,并不是说这篇文章是我写的,我只是在做阅读这篇文章的笔记)研究了在一个输入向量中,哪些元素的重要性比较大的问题。在一个RNN块(RNN神经元,可以是传统RNN、LSTM、GRU等多种RNN结构)中加入Element-wise-Attention Gate (EleAttG),使得RNN的单个神经元可以具有类似注意力机制的能力。
2.研究领域目前存在的问题以及已有的解决方法
2.1Standard RNN 具有梯度消失的问题,导致网络很难学习长距离的依赖关系,研究者在Standard RNN的神经元中加入门结构和线性记忆单元,例如LSTM GRU 来控制数据流动,在一定程度上解决了梯度消失的问题。Hochreiter提出了LSTM网络,LSTM网络在传统RNN神经元中添加了记忆单元,只允许有限误差流动,并且提出了几种其他的门结构来控制误差流动,Gers在之前的LSTM网络中提出了忘记门结构控制由前一个神经元传递到当前神经元的误差。以及peephole LSTM 网络结构 还有GRU网络
2.2梯度消失问题另一种解决方式是残差连接(Residual connection)。Campos提出skip rnn,通过残差连接,在训练和测试过程中跳过一些状态的更新,这使得计算图变小。
2.3针对注意力机制,目前研究者们所设计的注意力大部分是针对一组特征向量而言的,是在神经网络的层结构层面,但是本文所设计的注意力是直接针对输入向量中的每一个元素,是在神经元层面。
2.4还有一些研究者们针对特定的问题设计了特定的网络结构,但是这些网络结构泛化能力差,只针对所研究的问题有效,但是本文设计的网络结构是直接在神经元中加入了元素注意力门EleAttG,可以应用在像标准RNN,LSTM,GRU等所有RNN结构的神经元中。
3.本文提出的解决此问题的方法
4.设计的网络结构以及原理
首先回顾标准RNN和LSTM以及GRU网络的原理
标准RNN:
LSTM:
其中it是输入门,ft表示输出门,ct表示神经元的输出,ot表示输出门。
GRU:
其中rt表示重置门,zt是更新门,表示上一个隐藏层的信息h(t-1)有多少可以影响当前层的ht。
本文提出的EleAttG结构单元:
表示本文提出的元素注意力门Element-wise-Attention Gate (EleAttG),它作用于当前输入的每一个元素,产生新的输入,新的输入将代替原始输入,作为网络的输入进行后面的迭代计算。
例如将EleAttG加入到GRU单元的神经元迭代表达式为:
受到门结构和注意力机制的启发,本文提出了Element-wise-Attention Gate (EleAttG)使得每个RNN的神经元都具有注意力的能力,对于门结构,门单元只是产生一个标量,对输入向量中的每一个元素的作用大小都是一样的,而EleAttG单元可以产生一个和输入向量维度相同的注意力向量,来决定输入向量中每个元素的重要性。
a图显示了将EleAttG单元应用到标准RNN中,而b图显示了将EleAttG应用到GRU单元中
5.本文方法的不足
6.以后的工作方向
7.实验设计
8.是否用了网上数据集,用了什么数据集
3D skeleton-based action recognition: NTU RGB + D dataset (NTU) Northwestern-UCLA dataset (N-UCLA) SYSU Human-Object Interaction dataset (SYSU) JHMDB
For gesture recognition: Dynamic Hand Gesture 14/28 (DHG) dataset
sequential MNIST classification MNIST handwritten digits benchmark dataset
9.自己关于这篇文章的想法以及存在的问题
9.1在R ELATED W ORK阶段,介绍了rnn存在的梯度消失的问题,并给出了现有的解决方式。然后引出了自己设计的网络结构,但是自己设计的网络结构并不能解决梯度消失问题,感觉有点牵强。