注意力机制(Attention)Non-local Neural Networks

2018CVPR的一篇论文,主要解决的问题是通过Non-local的方法扩大传统CNN,RNN方法的感知域(即传统的CNN一个像素点对应的输出只受其neighbor的影响,Non-local方法使每一点的输出受所有像素点的影响)。模型结构简单,效果提升显著,且可以方便的嵌入到现有网络中。对于一个视频信息在时间域,空间域都有提升:


example

输入数据X中每个点i对应的输出Y,通过下式求得:

上述过程可以理解为一个加权平均过程,其中函数看作对输入数据的预处理过程,函数f理解为数据各位置间的相关程度。文中给出了几个函数的实例,同时指出了最终效果对函数的选择的敏感度不高。

为简化函数g选择做一个线性的embedding,函数f采用以下实例:

Gaussian:              Embedded Gaussian:

Dot product:

Concatenation:

模型的功能可以通过一个残差块实现,残差块定义为,结构如下


A spacetime non-local block

文中还提到了一个subsample trick,在后加上一个最大池化层,可以有效地提升计算效率。

文章最后针对视频分类,图像识别,语义分割多个领域进行实验,加入残差块的网络都取得了很大性能提升,同时对加入的位置进行实验,得出加入残差块的位置在网络的浅层效果更加明显(自己理解是浅层的future map维度比较大,全局获得的信息更多)。

你可能感兴趣的:(注意力机制(Attention)Non-local Neural Networks)