论文:CBAM: Convolutional Block Attention Module 阅读笔记
一、论文
(18)CBAM: Convolutional Block Attention Module
https://arxiv.org/abs/1807.06521
code:gihub
二、论文笔记
1、背景
1、网络结构方面有往深度方向探索的(使用resnet结构之后,网络可以更深),有往宽度方向探索的,比如(googlenet)
还有往(cardinality)方向探索的(Xception and ResNeXt)这种方法不仅节省了参数量,而且相比深度和宽度,对特征更有表现力
而此论文探索的是另一种结构,attention
2、创新点
1、SENet仅仅只有通道的attention,并且使用了全局平均池化, 但是这里不仅有channel,而且有spatial, 而且在形成这两个feature map的时候都分别使用了max-pooling和 average pooling 集合的方式,作者任务,max-pooled编码feature map里边比较突出的地方,average-pooled编码全局统计特性。
由于卷积操作会将特征在通道以及空间维度进行混合,所以设计了一种分别在这两个维度进行attention的结构(CBAM),通道和空间分别对应着what 和 where
Channel attention module:
共享的MLP分别运算MaxPool 和AvgPool两个向量,然后后面把他们按元素想加,加起来。
Spatial attention module:
分别使用MaxPool AvgPool 沿着通道方向,产生来两个 H * W的feature map,然后使用通道为2的卷积将他们合在一起
3、细节
这两个attention module 可以并行,也可以序列顺序排列,实验表明顺序效果最好,并且channel 在前
和resnet 相结合
4、实验
(1)、首先是结构的对比实验(Ablation),然后是在几个任务上的效果
(2)、使用Grad-CAM论文的方法,来可视化网络的关注区域展现CBAM的效果