目录
CBAM(Convolutional Block Attention Module )模块
前面介绍了CVPR2017发表的关于通道注意力机制SENET:地址和CVPR2016发表的关于空间注意力机制STN:地址,有兴趣的同学可以去看看。今天介绍的是CVPR2018发表的混合域的注意力机制CBAM。CBAM将通道域和空间域同时融合到网络模型中,还是放上原文连接:CBAM。
文章提出的卷积块注意模块(CBAM)是一个简单而有效的前馈卷积神经网络注意模块。在给定中间特征图的情况下,我们的模块沿通道和空间两个独立维度依次推断图片的注意力,然后将注意图乘输入特征图,进行自适应特征细化。因为CBAM是一个轻量级的通用模块,它可以无缝地集成到任何CNN架构中,开销可以忽略不计,并且可以端到端与基础CNN一起训练。通过对ImageNet-1K、MS COCO检测和VOC 2007检测数据集的大量实验,验证了CBAM模块的有效性。实验表明,不同的模型在分类和检测性能上都有一致的改进,这表明CBAM具有广泛的适用性。
卷积神经网络(CNNs)基于其丰富的特征表示能力显著提高了视觉任务。为了提高网络的性能,现在的研究主要关注网络的三个重要维度:深度、宽度和基数(参数量)。
总体介绍
到目前为止,从LeNet到RestNet式的网络,网络变得更加深入,具有丰富的表征表达。VGGNet表明,堆叠相同形状的块体可以得到较好的结果。遵循同样的精神,ResNet堆栈相同的残差块跳跃连接,以构建一个更的网络结构。GoogLeNet表明,宽度是提高模型性能的另一个重要因素。Zagoruyko和Komodakis提出了基于ResNet架构增加网络宽度的方案。他们已经证明,在CIFAR基准上,增加宽度的28层ResNet可以比具有1001层的极深ResNet表现更好。Xception和ResNeXt是用来增加网络基数的。他们的实验结果表明,基数不仅节省了参数的总数,而且比其他两个因素(深度和宽度)产生更强的表达能力。除了网络的深度、宽度和基数外,本文讨论的注意力机制也是对网络模型性能提升的重要手段。注意力机制不仅告诉我们Feature Map要关注什么,也提高了特征感兴趣特征的表现。目标是通过注意机制来增加重要的特征,抑制不必要的特征。本文提出了一种新的网络模块,即“卷积块注意机制模块”。为此,本文依次应用通道注意力模块和空间注意力模块(如下图),使每个分支分别知道在特征的通道和空间上要关注哪里。因此,该模块通过学习加强或抑制相关的特征信息,有效地帮助信息在网络传递。
该模块有通道和空间两个顺序子模块。在深度网络的每个卷积块上,通过模块(CBAM)自适应地细化中间特征图。
CBAM(Convolutional Block Attention Module )模块
CBAM总体流程就是下面这俩式子: