论文笔记/机器学习笔记:CBAM
Posted UQI-LIUWJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文笔记/机器学习笔记:CBAM相关的知识,希望对你有一定的参考价值。
ECCV 2018
1 介绍
- 在空间维度、和通道维度上进行attention操作
2 整体模型
- CBAM包含CAM(Channel Attention Module)和SAM(Spartial Attention Module)两个子模块,分别进行通道和空间上的Attention。
- 输入特征维度是C*H*W
- 通道注意力模块维度是C*1*1
- 逐元素乘到input feature中去(逐元素+广播)
- 空间注意力模块维度是1*H*W
- 逐元素乘到经过通道注意力之后的output feature中去(逐元素+广播)
2.1 Channel attention module(CAM)
- 通道注意力模块:通道维度不变,压缩空间维度。
- 该模块关注输入图片中有意义的信息(不同channel中有不同的信息)
- 将输入的feature map经过两个并行的MaxPool层和AvgPool层
- 特征图从C*H*W变为C*1*1的大小
- 然后经过Share MLP模块
- 该模块先将通道数压缩为原来的1/r(Reduction,减少率)倍,再扩张到原通道数
- 经过ReLU激活函数得到两个激活后的结果。
- 将这两个输出结果逐元素相加
- 通过一个sigmoid激活函数得到Channel Attention的输出结果(C*1*1维)
- 再将这个输出结果乘input feature【C*H*W的大小】
2.1.2 和SENet的区别
CAM与SEnet的不同之处是加了一个并行的最大池化层,提取到的高层特征更全面,更丰富。
2.2 Spatial attention module
- 空间注意力模块:空间维度不变,压缩通道维度。该模块关注的是目标的位置信息。
- 将Channel Attention的输出结果通过最大池化和平均池化得到两个1*H*W的特征图
- 然后经过Concat操作对两个特征图进行拼接
- 通过7*7卷积变为1通道的特征图(实验证明7*7效果比3*3好)
- 再经过一个sigmoid得到Spatial Attention的特征图
- 最后将输出结果乘原图变回C*H*W大小。
3 实验部分
3.1 图像分类结果
在数据集ImageNet-1K上使用ResNet网络进行对比实验
3.2 CBAM可视化
引入 CBAM 后,特征覆盖到了待识别物体的更多部位,而且最终判别物体的几率也更高,这表示注意力机制的确让网络学会了关注重点信息。
4
参考内容:CBAM——即插即用的注意力模块(附代码)_Billie使劲学的博客-CSDN博客_cbam
以上是关于论文笔记/机器学习笔记:CBAM的主要内容,如果未能解决你的问题,请参考以下文章
论文研读笔记——基于障碍函数的移动机器人编队控制安全强化学习
机器学习笔记: 聚类 模糊聚类与模糊层次聚类(论文笔记 Fuzzy Agglomerative Clustering :ICAISC 2015)
机器学习笔记 soft-DTW(论文笔记 A differentiable loss function for time-series)
机器学习笔记:ViT (论文 An Image Is Worth 16X16 Words: Transformers for Image Recognition at Scale)