Attention机制理解笔记(空间注意力+通道注意力+CBAM+BAM)_落了一地秋的博客-CSDN博客_空间注意力模型Attention机制理解笔记声明Attention分类(主要SA和CA)spitial attentionchannel attentionSA + CA(spitial attention+channel attention)加强SA+CA理解空间注意力机制和通道注意力机制解释attention机制Attention模型架构1.空间注意力模型(spatial attention)2.通道注意力机制3.空间和通道注意力机制的融合CBAM 和 BAMBLOG1的笔记重点及总结BLOG2重点看下这篇文章BAM
https://blog.csdn.net/weixin_46239293/article/details/119739759?spm=1001.2101.3001.6650.5&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-5-119739759-blog-105760359.pc_relevant_recovery_v2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-5-119739759-blog-105760359.pc_relevant_recovery_v2&utm_relevant_index=6注意力机制技术总结-技术圈STN(2015)论文原文:Spatial Transformer Networks这是一篇过时的文章,读者不必了解太多,但它的主要思想却值得写一下
https://jishuin.proginn.com/p/763bfbd56c67
一、前言
SA(soft attention):包括空间注意力和通道注意力,目的是选择细粒度的重要像素点,是pixel级。
HD(hard attention):是 local 注意力,致力于搜索粗糙的潜在判别区域,它们是region级。
空间注意力:
一般来说对于同一像素点不同通道求均值,再经过一些卷积和上采样的运算得到spitial attention mask,空间特征每层像素点被赋予不同的权重。
通道注意力:
就是针对 N C H W 的每个C赋予权重。
空间注意力 + 通道注意力:
有BAM和CBAM两种代码方式,spitial attention 矩阵与channel attention矩阵相乘得到 SA+CA的效果。
二、Bottlenet attention Module(BAM 2018)
具体结构如下图所示:利用了空洞卷积来获取更大的感受野,增加了通道注意力,方式是在feature map上全局平均池化,再降维升维,如右下角所示使用了上面那篇论文中的Attention Residual learning方式来融合。
三、Convolutional Block Attention Module (CBAM 2018)
CBAM同样是使用空间注意力和通道注意力,不过与BAM不同的是,通道注意力并不是像BAM那样融合在空间注意力内再做归一化,而是先后分开进行。
通道注意力的生成方式:先在feature maps上进行全局最大池化和全局平均池化得到两个1维向量,再经过共享的MLP层,再进行相加,sigmoid归一化。
空间注意力的生成方式:在通道上进行最大池化和平均池化,得到两个feature map,经过7x7卷积,得到一个feature map,再BN,sigmoid归一化。
注:这种空间注意力只考虑了局部信息,在后面CVPR2021的Coordinate Attention中有所改进。
四、Coordinate Attention(2021)
这篇论文基于SE和CBAM改进而来,作者认为SE没有考虑空间信息,CBAM通过对每个位置的通道上进行池化,由于经过几层卷积和降采样后的feature maps的每个位置只包含原图的一个局部区域,因此这种做法只考虑了局部区域信息。为此,作者提出了一种新的attention机制--Coordinate Attention。
Coordinate Attention利用两个1D全局池化操作将沿垂直和水平方向的input features分别聚合为两个单独的direction-aware feature maps。 然后将具有嵌入的特定方向信息的这两个特征图分别编码为两个attention map,每个attention map都沿一个空间方向捕获输入特征图的远距离依存关系。 位置信息因此可以被保存在所生成的attention map中。 然后通过乘法将两个attention map都应用于input feature maps,以强调注意区域的表示。
具体结构如图c所示,简单说来,Coordinate Attention是通过在水平方向和垂直方向上进行平均池化,再进行transform对空间信息编码,最后把空间信息通过在通道上加权的方式融合。
五、其他注意力机制的参考论文
1. Spatial Transformer Networks
2. Object-Part Attention Model for Fine-grained Image Classifification
3. Residual Attention Network for Image Classifification
4. BAM: Bottleneck Attention Module
5. CBAM: Convolutional Block Attention Module
6. Non-local Neural Networks
7. Pyramid Attention Network for Semantic Segmentation
8. Squeeze-and-Excitation Networks
9. CCNet: Criss-Cross Attention for Semantic Segmentation
10. GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond
11. Dual Attention Network for Scene Segmentation
12. Coordinate Attention for Effificient Mobile Network Design