EPSANet:计算机视觉注意力论文解读
转载:Bestsong
简介
(1)Pyramid Split Attention Block用于增强特征提取
(2)即插即用,可将Pyramid Split Attention Block取代ResNet的3×3卷积,提出基准网络ESPANet
(3)目标分类与目标检测任务达到state-of-the-art效果
(4)代码开源:https://github.com/murufeng/EPSANet
算法
Pyramid Split Attention (PSA)在SENet的基础上提出多尺度特征图提取策略,整体结构图如下所示。具体可分为如下四个步骤:
(1)Split and Concat (SPC)模块用于获得空间级多尺度特征图;
(2)SEWeight(SENet中的模块)被用于获得空间级视觉注意力向量来抽取多尺度响应图的目标特征;
(3)使用Softmax函数用于再分配特征图权重向量;
(4)元素相乘操作用于权重向量与原始特征图来获得最终结果响应图。
PSA模块整体结构
Split and Concat module
SPC模块整体结构图
如上图所示,k0、k1 、k2和k3是不同卷积核参数(以ESPANet-small为例,论文取3,5,7和9),G0、G1、G2和G3是分组卷积的参数(以ESPANet-small为例,论文默认取1,4,8和16)。整体可看做是模型采用不同卷积核提取多尺度目标特征,并采取Concat操作结合不同感受野下的多尺度特征。
ESPANet
ESPANet中的block如下所示,相比于ResNet,其就是使用PSA模块取代3x3的卷积,ESPANet block整体结构如下图所示。
ESPANet block
因此ESPANet整体结构图与ResNet类型,唯一区别即使在每个block中前者使用PSA模块取代后者的3x3卷积,ESPANet整体结构如下图所示。
ESPANet整体结构图
代码
由于ESPANet整体结构图与ResNet类型,唯一区别即使在每个block中前者使用PSA模块取代后者的3x3卷积,因此本部分着重于PSA模块的代码。
PSA模块整体配置如下:包含四个卷积层和SEWeight模块和Softmax函数
PSA模块整体初始化代码
PSA模块前向传播函数如下:Split---Concat---SEWeight---Softmax
此外本文中使用的SEWeight就是SENet中使用的SEWeight,有兴趣的可以看看这篇论文(
https://openaccess.thecvf.com/content_cvpr_2018/papers/Hu_Squeeze-and-Excitation_Networks _CVPR_2018_paper.pdf)
PSA模块前向传播代码
综上所示,ESPANet是一个即插即用视觉注意力基准网络,可用于目标分类、检测、分割等计算机视觉任务,整体代码可从(https://github.com/murufeng/EPSANet)得到。
- 免责声明
- 本文所包含的观点仅代表作者个人看法,不代表新火种的观点。在新火种上获取的所有信息均不应被视为投资建议。新火种对本文可能提及或链接的任何项目不表示认可。 交易和投资涉及高风险,读者在采取与本文内容相关的任何行动之前,请务必进行充分的尽职调查。最终的决策应该基于您自己的独立判断。新火种不对因依赖本文观点而产生的任何金钱损失负任何责任。