这一步其实就是一个放缩的过程,不同通道的值乘上不同的权重,从而可以增强对关键通道域的注意力。
混合域
了解前两种注意力域的设计思路后,简单对比一下。首先,空间域的注意力是忽略了通道域中的信息,将每个通道中的图片特征同等处理,这种做法会将空间域变换方法局限在原始图片特征提取阶段,应用在神经网络层其他层的可解释性不强。
而通道域的注意力是对一个通道内的信息直接全局平均池化,而忽略每一个通道内的局部信息,这种做法其实也是比较暴力的行为。所以结合两种思路,就可以设计出混合域的注意力机制模型[3]。
设计思路:
[3]这篇文章中提出的注意力机制是与深度残差网络(Deep Residual Network)相关的方法,基本思路是能够将注意力机制应用到ResNet中,并且使网络能够训练的比较深。
文章中注意力的机制是软注意力基本的加掩码(mask)机制,但是不同的是,这种注意力机制的mask借鉴了残差网络的想法,不只根据当前网络层的信息加上mask,还把上一层的信息传递下来,这样就防止mask之后的信息量过少引起的网络层数不能堆叠很深的问题。
正如之前说的,[3]中提出的注意力mask,不仅仅只是对空间域或者通道域注意,这种mask可以看作是每一个特征元素(element)的权重。通过给每个特征元素都找到其对应的注意力权重,就可以同时形成了空间域和通道域的注意力机制。
很多人看到这里就会有疑问,这种做法应该是从空间域或者通道域非常自然的一个过渡,怎么做单一域注意力的人都没有想到呢?原因有:
所以该文章的注意力机制的创新点在于提出了残差注意力学习(residual attention learning),不仅只把mask之后的特征张量作为下一层的输入,同时也将mask之前的特征张量作为下一层的输入,这时候可以得到的特征更为丰富,从而能够更好的注意关键特征。
模型结构:
文章中模型结构是非常清晰的,整体结构上,是三阶注意力模块(3-stage attention module)。每一个注意力模块可以分成两个分支(看stage2),上面的分支叫主分支(trunk branch),是基本的残差网络(ResNet)的结构。而下面的分支是软掩码分支(soft mask branch),而软掩码分支中包含的主要部分就是残差注意力学习机制。通过下采样(down sampling)和上采样(up sampling),以及残差模块(residual unit),组成了注意力的机制。
模型结构中比较创新的残差注意力机制是:
三重注意力【7】待更新
时间域注意力
这个概念其实比较大,因为计算机视觉只是单一识别图片的话,并没有时间域这个概念,但是[4]这篇文章中,提出了一种基于递归神经网络(Recurrent Neural Network,RNN)的注意力机制识别模型。
RNN模型比较适合的场景是数据具有时序特征,比如使用RNN产生注意力机制做的比较好的是在自然语言处理的问题上。因为自然语言处理的是文本分析,而文本产生的背后其实是有一个时序上的关联性,比如一个词之后还会跟着另外一个词,这就是一个时序上的依赖关联性。
而图片数据本身,并不具有天然的时序特征,一张图片往往是一个时间点下的采样。但是在视频数据中,RNN就是一个比较好的数据模型,从而能够使用RNN来产生识别注意力。
特意将RNN的模型称之为时间域的注意力,是因为这种模型在前面介绍的空间域,通道域,以及混合域之上,又新增加了一个时间的维度。这个维度的产生,其实是基于采样点的时序特征。
Recurrent Attention Model [4]中将注意力机制看成对一张图片上的一个区域点的采样,这个采样点就是需要注意的点。而这个模型中的注意力因为不再是一个可以微分的注意力信息,因此这也是一个强注意力(hard attention)模型。这个模型的训练是需要使用增强学习(reinforcementlearning)来训练的,训练的时间更长。
这个模型更需要了解的并不是RNN注意力模型,因为这个模型其实在自然语言处理中介绍的更详细,更需要了解的是这个模型的如何将图片信息转换成时序上的采样信号的:
这个是模型中的关键点,叫Glimpse Sensor,我翻译为扫视器,这个sensor的关键点在于先确定好图片中需要关注的点(像素),这时候这个sensor开始采集三种信息,信息量是相同的,一个是非常细节(最内层框)的信息,一个是中等的局部信息,一个是粗略的略缩图信息。
这三个采样的信息是在
结构:
通道注意力
SKnet[6] 待更新
基数维度注意力(待更新)
ResNeSt[8],号称ResNet的强化版,是由李沐团队张航博士所提出来的,作者从基数维度出发,将注意力的思想融入到多分支卷积结构当中,来解决传统CNN感受野受限以及却反跨通道信息交互的问题。ResNeSt整体延续了“Split-Transfore-Merge”结构,有点SK的味道,综合SENet、SKNet与ResNeXt三者的思想。ResNeSt所呈现的效果确实非常惊艳的,在ADE20K、MS-COCO等数据集上屠榜,碾压其他的手动网络架构,没有额外的计算开销,代码也不是很复杂。
重识别(待更新)
Relation-Aware Global Attention是中科大&微软亚洲研究院发表于CVPR 2020上针对行人重识别任务所提出的一种注意力方法。本文提倡的观点是,要直观地判断一个特征节点是否重要,就应该知道全局范围的特性,这样便可以通过得到进行决策所需要的关系信息,来更好地探索每个特征节点各自的全局关系,从而更好地学习注意力。
Reference:
[1] Kelvin Xu,Jimmy Lei Ba ,Ryan Kiros ,Kyunghyun Cho ,Aaron Courville ,"Show, Attend and Tell: Neural Image Caption Generation with Visual Attention".2016
[2] Hu, Jie, Li Shen, and Gang Sun."Squeeze-and-excitation networks." arXiv preprintarXiv:1709.01507 .2017
[3] Wang, Fei, et al. "Residual attentionnetwork for image classification." arXiv preprint arXiv:1704.06904 .2017
[4] Mnih, Volodymyr, Nicolas Heess, and AlexGraves. "Recurrent models of visual attention." Advances inneural information processing systems. 2014.
[5] Zequn Qin1 , Pengyi Zhang1 , Fei Wu1,2, Xi Li1,2."FcaNet: Frequency Channel Attention Networks".2020
[6] Xiang Li, Wenhai Wang, Xiaolin Hu and Jian Yang "Selective Kernel Networks".2019
[7] Diganta Misra,Trikay Nalamada,Ajay Uppili Arasanipalai,Qibin Hou "Rotate to Attend: Convolutional Triplet Attention Module".2020
[8] Hang Zhang, Chongruo Wu? , Zhongyue Zhang, Yi Zhu, Haibin Lin, Zhi Zhang, Yue Sun, Tong He, Jonas Mueller, R. Manmatha, Mu Li, and Alexander Smola "ResNeSt: Split-Attention Networks ".2020
Deep Learning Paper Implementations: Spatial Transformer Networks