前言:
前面分享了一篇《继SE,CBAM后的一种新的注意力机制Coordinate Attention》,其出发点在于SE只引入了通道注意力,CBAM的空间注意力只考虑了局部区域的信息,从而提出考虑全局空间信息的注意力机制。
在本文,将介绍另一个基于同样出发点的注意力模块,即Pyramid Split Attention (PSA)。PSA具备即插即用、轻量、简单高效的特点。该模块与ResNet结合,通过PSA替代ResNet的bottleneck中的3x3卷积,组成了EPSANet。
EPSANet用于图像识别,比SENet top-1acc高了1.93%。PSA用在Mask RCNN上,目标检测高了2.7 box AP,实例分割高了1.7 mask AP。
本文来自公众号CV技术指南的论文分享系列
关注公众号CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。
论文:https://arxiv.org/pdf/2105.14447v1.pdf
代码:https://github.com/murufeng/EPSANet
1. SE仅仅考虑了通道注意力,忽略了空间注意力。
2. BAM和CBAM考虑了通道注意力和空间注意力,但仍存在两个最重要的缺点:(1)没有捕获不同尺度的空间信息来丰富特征空间。(2)空间注意力仅仅考虑了局部区域的信息,而无法建立远距离的依赖。
3. 后续出现的PyConv,Res2Net和HS-ResNet都用于解决CBAM的这两个缺点,但计算量太大。
基于以上三点分析,本文提出了Pyramid Split Attention。
主要操作:将input tensor从通道上分成S组。每一组进行不同卷积核大小的卷积,以获取不同尺度的感受野,提取不同尺度的信息。再通过SE模块,提取每组的通道的加权值,最后对S组的加权值进行softmax归一化并加权。
具体将input tensor分成S组,并对每组进行不同卷积的SPC模块如下图所示。
SPC先将input tensor分成S组,每组的卷积核大小依次增大,如k=3,5,7,9。考虑到当卷积核比较大时,计算量也大,因此,对每一组再进行分组卷积,具体分组数量G = exp(2,(k-1)/2),即2的(k-1)/2次幂。当K = 3,5,7,9时,G=1,2,3,4。
在经过不同大小的卷积后,在通道上拼接。
经过SPC模块后,PSA再将SPC模块的输出通过SE Weight Module获得通道注意力值,这样做的目的是获得不同尺度特征图的注意力权值。
通过这样的做法,PSA融合了不同尺度的上下文信息,并产生了更好的像素级注意力。
最后将每组通道注意力权值拼接,进行softmax归一化,对SPC模块的输出进行加权。
完整的PSA模块如下图所示。
这里补充一下pyramid split attention中的pyramid。在《特征金字塔技术总结》中介绍了特征金字塔的两种构建方式,其中一种就是通过不同大小卷积核的卷积来构建特征金字塔。因此,这里PSA中的Pyramid是由SPC模块中的每组不同大小卷积核的卷积所构建。
如上图所示,将PSA替代ResNet的bottleneck中的3x3卷积,再堆叠几个这样的模块就构成了EPSANet,这里的E,指的是efficient。
网络设计如下图所示。
EPSANet用于图像识别,比SENet top-1acc高了1.93%。PSA用在Mask RCNN上,目标检测高了2.7 box AP,实例分割高了1.7 mask AP。
以ResNet-50和ResNet-101为backbone,加入各种注意力模块的图像识别效果对比
欢迎关注公众号 CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。
在公众号中回复关键字 “入门指南“可获取计算机视觉入门所有必备资料。
ICCV2021 | SOTR:使用transformer分割物体
ML2021 | PatrickStar:通过基于块的内存管理实现预训练模型的并行训练
ICCV2021 | PnP-DETR:用Transformer进行高效的视觉分析
ICCV2021 | 医学影像等小数据集的非自然图像领域能否用transformer?
ICCV2021 | Vision Transformer中相对位置编码的反思与改进
ICCV2021 | MicroNet:以极低的 FLOPs 改进图像识别
ICCV2021 | 重新思考视觉transformers的空间维度
CVPR2021 | TransCenter: transformer用于多目标跟踪算法
CVPR2021 | 开放世界的目标检测
CVPR2021 | TimeSformer-视频理解的时空注意模型
CVPR2021 | 一个高效的金字塔切分注意力模块PSA
CVPR2021 | SETR: 使用 Transformer 从序列到序列的角度重新思考语义分割
经典论文系列 | 重新思考在ImageNet上的预训练
经典论文系列 | Group Normalization & BN的缺陷
经典论文系列 | 目标检测--CornerNet & anchor boxes的缺陷
经典论文系列 | 缩小Anchor-based和Anchor-free检测之间差距的方法:自适应训练样本选择
2021-视频监控中的多目标跟踪综述
统一视角理解目标检测算法:最新进展分析与总结
全面理解目标检测中的anchor | 实例分割综述总结综合整理版
单阶段实例分割综述 | 小目标检测的一些问题,思路和方案
目标检测中回归损失函数总结 | 小目标检测常用方法总结
视觉Transformer综述 | 2021年小目标检测最新研究综述
Siamese network综述 | 姿态估计综述 | 语义分割综述
视频理解综述:动作识别、时序动作定位、视频Embedding