美文网首页摄影读书
基于通道注意力与空间注意力的CBAM

基于通道注意力与空间注意力的CBAM

作者: 教训小磊 | 来源:发表于2020-09-09 10:13 被阅读0次

论文题名:《CBAM: Convolutional Block Attention Module》

arxiv:https://arxiv.org/abs/1807.06521v2

github: https://github.com/Jongchan/attention-module

CBAM 是对标于SENet所提出的一种结合了通道注意力和空间注意力的轻量级模块,它和SENet一样,几乎可以嵌入任何CNN网络中,在带来小幅计算量和参数量的情况下,大幅提升模型性能。

        卷积神经网络在很大程度上推动了计算机视觉任务的发展,最近的众多研究主要关注了网络的三个重要因素:深度、宽度、基数(cardinality)

深度的代表:VGG、ResNet

宽度的代表:GooLeNet

基数的代表:Xception、ResNeXt

        而本文作者承接SENet的思想,从attention(注意力)这个维度出发,研究提升网络性能的方法。

        人类视觉系统的一个重要特性是,人们不会试图同时处理看到的整个场景。取而代之的是,为了更好地捕捉视觉结构,人类利用一系列的局部瞥见,有选择性地聚集于显著部分。近年来,有人尝试将注意力机制引入到卷积神经网络中,以提高其在大规模分类任务中的性能。

本文作者为了强调空间和通道这两个维度上的有意义特征,依次应用通道和空间注意力模块,来分别在通道和空间维度上学习关注什么、在那里关注。CBAM如下图1 所示。

图1 CBAM模块

输入特征依次通过通道注意力模块、空间注意力模块的筛选,最后获得经过了重标定的特征,即强调重要特征,压缩不重要特征。

1.通道注意力模块

CBAM的通道注意力模块如下图2所示:

图2 通道注意力模块

        相比SENet只使用全局平局池化层来压缩通道特征,本文作者认为最大池化可以收集到难区分物体之间更重要的线索,来获得更详细的通道注意力。因此,本文同时使用了平均池化和最大池化后的特征,然后将他们依次送入一个权重共享的多层感知机中(MLP),这里估计是参考了NIN(网中网)这篇文章,最后将各自的输出特征再对应位置Add,其中本文并没有说明在参数学习这里为啥使用多层感知机而不使用全连接层(像SENet那样),可能是通过1X1卷积来更好地融合通道信息吧。通道注意力主要聚焦于输入图像的什么特征是有意义的。

2.空间注意力模块

CBAM的空间注意力模块如下图3所示:

图3  空间注意力模块

加入空间注意力模块在一定程度上弥补了只是用通道注意力的不足,因为空间注意力主要聚焦于输入图像的哪部分的有效信息较丰富。刚开始看着部分的时候对池化部分不是很理解,后来查看了代码才知道,这里的池化操作是沿着通道轴进行的,即每次池化时对比的是不同通道之间的数值,而非同一个通道不同区域的数值。哈哈,第一次见这种方法。所通过最大池化和平均池化各获得一张特征图,而后将他们拼接成一张2D特征图,再送入标准7X7卷积进行参数学习,最终得到一张1D的权重特征图。注意,不管是通道注意力得到的权重,还是空间注意力得到的权重,在最后于原数据相乘时,都使用了数据的广播机制的。

3.CBAM的tensorflow代码

图4 CBAM 代码

4.可视化

读这篇文章,还学到的一点就是运用grad-CAM进行可视化,这可以增强论文的可信度。

本文的可视化如下图4所示。

图5 可视化

grad-CAM是最近提出的一种可视化方法,它利用梯度来计算卷积层空间位置的重要性,由于梯度是针对一个唯一的类计算的,grad-CAM的结果清楚地显示了对最终预测产生影响的图像区域。本文作者通过这种方法来观测神经网络是如何有效利用图像特征的。从图4可知,加入了CBAM的ResNet50它的有效预测区域范围更大,最后的softmax概率值也更大,结果也更加准确。

5.学习感受

1.对空间注意力机制有了一定的了解;

2.学习到将平均池化和最大池化一起用效果会更好;

3.对池化的方式有了新认识;

4.学习到通过使用grad-CAM的可视化方法,可以是增加论文的说服力。

相关文章

  • 基于通道注意力与空间注意力的CBAM

    论文题名:《CBAM: Convolutional Block Attention Module》 arxiv:h...

  • Selective Kernel Networks(Upgrad

    SENet是对特征图的通道注意力机制的研究,之前的CBAM提到了对特征图空间注意力机制的研究。这里SKNet针对卷...

  • pytorch中加入注意力机制(CBAM)

    第一步:找到ResNet源代码在里面添加通道注意力机制和空间注意力机制所需库 通道注意力机制 空间注意力机制 在R...

  • 论文阅读-CBAM: Convolutional Block A

    研究问题: 在给定特征图下,通过通道和空间两个维度推导出注意力图,然后将注意力图乘到输入的特征图上以用来自适应的细...

  • Attention本质

    应用层面:空间注意力Spatial Attention 时间注意力 Temporal At...

  • 要点:注意力是人最宝贵的财富 概念:注意力是视觉、听觉、触觉、嗅觉和味觉五大信息通道对客观事物的关注能力 注意力是...

  • 注意力过载

    我们的注意力空间是有限的,如果你的注意力空间存放太多的东西,注意力过载了你的头脑就会变得不清晰。比如你想着太多的事...

  • 极度专注和发散注意,如何结合?

    说说如何结合极度专注和发散注意,管理好我们的注意力? 1、投入时间与精力寻求快乐 正面情绪会扩大注意力空间,而负面...

  • R2CNN++: Multi-Dimensional Atten

    这是进行任意角度目标检测论文,把物体的坐标处理为(x,y,w,h,θ),作者通过在文中添加两种注意力机制通道注意力...

  • Dual Attention Network for Scene

    这是一篇arXiv上的文章,也是关于注意力机制的工作,不过是在图像分割使用通道注意力机制。paper 这是一篇使用...

网友评论

    本文标题:基于通道注意力与空间注意力的CBAM

    本文链接:https://www.haomeiwen.com/subject/jbxeektx.html