您的位置:首页 > 理论基础

计算机视觉CV中的注意力机制

2020-06-06 04:36 288 查看

虽然神经网络学习到了图片的特征来进行分类,但是这些特征在神经网络“眼里”没有差异,神经网络并不会过多关注某个“区域”。

Attention Mechanism与人类对外界事物的观察机制很类似,注意力会集中在这张图片的一个区域内,而其他的信息受关注度会相应降低。

因此,Attention Mechanism可以帮助模型对输入的每个部分赋予不同的权重,抽取出更加关键及重要的信息,使模型做出更加准确的判断,同时不会对模型的计算和存储带来更大的开销。

 

 

 

比如,传统的局部图像特征提取、显著性检测、滑动窗口方法等都可以看作一种注意力机制。

 

 

 

 

 

 

当目标发生某种转化后,模型依然能给出同样的正确的结果。

 

(a)中的采样矩阵是单位矩阵,不做任何变换,(b)中的矩阵是可以产生缩放旋转变换的采样矩阵。

 

定位网络会学习到一组参数θ,而这组参数就能够作为网格生成器(grid generator)的参数,生成一个采样信号,

这个采样信号其实是一个变换矩阵,与原始图片相乘之后,可以得到变换之后的矩阵V。

 

 

(a)列是原始的图片信息,其中第一个手写数字7没有做任何变换,第二个手写数字5,做了一定的旋转变化,而第三个手写数字6,加上了一些噪声信号;(b)列中的彩色边框是学习到的spatial transformer的框盒(bounding box),每一个框盒其实就是对应图片学习出来的一个spatial transformer;©列中是通过spatial transformer转换之后的特征图,可以看出7的关键区域被选择出来,5被旋转成为了正向的图片,6的噪声信息没有被识别进入。

 

这个模块加进去最大的好处就是能够对上一层信号的关键信息进行识别(attention),并且该信息矩阵是一个可以微分的矩阵,

 

 

如果我们给每个通道上的信号都增加一个权重,来代表该通道与关键信息的相关度的话,这个权重越大,则表示相关度越高,也就是我们越需要去注意的通道了。

 

 

 

 

 

但是无法直接将这个weightedAttention map输入到下一层中,因为Soft Mask Branch的激活函数是Sigmoid,输出值在(0,1)之间。

因此通过一系列这样的乘法,将会导致feature map的值越来越小,并且也可能打破原始网络的特性,当层次极深时,给训练带来了很大的困难。

 

因此作者在得到了weighted Attention map之后又与原来TrunkBranch的feature map进行了一个element-wised的操作,这就和ResNet有异曲同工之妙,

 

 

Soft Mask Branch对于固定的输入,多层卷积计算之后使用Max-Pooling操作对特征图进行降维操作,一直降维直到特征图宽高达到网络输出特征图的最小尺寸,比如7x7,然后逐层使用双线性插值的方法扩张特征图的宽高维度,并且与之前同样维度下的特征相加,这里的考量是结合了全局的和局部的特征,增强了特征图的表达能力。

 

最终对特征图使用2个1x1的卷积层对通道做整合计算输出一个与input宽高维度相等,但是通道数为1的特征图,最后接一个Sigmoid激活函数层将特征图归一化到0~1之间。

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: