《ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks》论文笔记

论文作者:Qilong Wang, Banggu Wu, Pengfei Zhu, et al.

论文发表年份:2020

模型简称:ECA-Net

发表会议:CVPR

论文链接:http://openaccess.thecvf.com/content_CVPR_2020/papers/Wang_ECA-Net_Efficient_Channel_Attention_for_Deep_Convolutional_Neural_Networks_CVPR_2020_paper.pdf

 论文代码:https://github.com/BangguWu/ECANet

 

Abstract

  近年来,通道注意机制被证明在提高深度卷积神经网络(cnn)性能方面具有巨大潜力。然而,现有方法大多致力于开发更复杂的注意力模块以获得更好的性能,这不可避免地增加了模型的复杂性。为了克服性能与复杂性权衡的悖论,本文提出了一种高效通道注意力(ECA)模块,该模块只涉及少量参数,但能带来明显的性能收益。通过分析SENet中的通道注意力模块,我们实证地表明避免降维对于学习通道注意力很重要,适当的跨通道交互可以在显著降低模型复杂性的同时保持性能。因此,我们提出了一种不降维的局部跨通道交互策略,该策略可以通过一维卷积有效地实现。此外,我们提出了一种自适应选择一维卷积核大小的方法,以确定局部跨通道交互的覆盖范围。所提出的ECA模块是高效且有效的,例如,我们的模块对ResNet50骨干的参数和计算分别为80对24.37M和4.7e-4 GFLOPs对3.86 GFLOPs,并且就Top-1精度而言,性能提升超过2%。我们广泛评估了我们的ECA模块的图像分类,对象检测和实例分割与ResNets和MobileNetV2的骨干。实验结果表明,该模块的效率更高,性能优于同类模块。

 

Contribution

  本文的贡献总结如下。

  (1)我们分析了SE模块,并实验证明避免降维和适当的跨通道交互对分别学习有效和高效的通道道注意是重要的。

  (2)在上述分析的基础上,我们尝试开发一种用于深度cnn的极轻量级通道注意模块,提出了一种高效通道注意(Efficient channel attention, ECA)模型,该模型的复杂性几乎没有增加,但有明显的改进。

  (3)在ImageNet-1K和MS COCO上的实验结果表明,该方法具有较低的模型复杂度,同时具有较好的性能。

 

Method

  上图说是ECA模块的概述。在使用没有降维的GAP聚合卷积特征之后,ECA模块首先自适应地确定内核大小k,然后执行1D卷积,然后执行Sigmoid函数以学习信道注意力。为了将我们的ECA应用于深度神经网络,我们按照SENet中的相同配置将SE模块替换为ECA模块。由此产生的网络由ECA-Net命名。下图给出了ECA的PyTorch代码。

 

1.Avoiding Dimensionality Reduction

  等式中的降维使得信道与其权重之间的对应是间接的。为了验证其效果,我们将原始SE块与其三个变体(即SE-Var1、SE-Var2和SEV-ar3)进行了比较,这三个变体都不执行降维。如表所示,没有参数的SE-Var1仍然优于原始网络,表明通道注意力有能力提高深度CNN的性能。同时,SE-Var2独立地学习每个通道的权重,这在涉及较少参数的情况下略优于SE块。这可能表明,通道及其权重需要直接对应,而避免降维比考虑非线性通道相关性更重要。此外,采用一个FC层的SEVar3在SE块中的降维性能优于两个FC层。所有这些结果清楚地表明,避免降维有助于学习有效的渠道注意力。因此,我们开发了无通道降维的ECA模块。

 

2.Local Cross-Channel Interaction

  特别地,我们使用频带矩阵Wk来学习通道注意力,并且Wk具有

  Wk涉及k×C参数,通过仅考虑yi与其k个邻居之间的相互作用来计算yi的权重。有效的方法是使所有信道共享相同的学习参数:

  注意这样的策略可以容易地通过核大小为k的快速1D卷积来实现,其中C1D表示1D卷积。这里,等式中的方法由有效通道注意力(ECA)模块调用,该模块仅涉及k个参数。如表所示,我们的ECA模块(k=3)实现了与SE-var3相似的结果,同时具有更低的模型复杂性,这通过适当地捕获本地跨通道交互来保证效率和有效性。

 

3.Coverage of Local Cross-Channel Interaction

  给定信道维度C,内核大小k可以通过以下方式自适应地确定:

   其中|t|odd表示t的最近奇数。在本文中,我们在所有实验中将γ和b分别设置为2和1。显然,通过映射ψ,通过使用非线性映射,高维通道具有更长距离的相互作用,而低维通道具有更短距离的相互影响。

  下图为该文的baseline:SE-Block:

 

 

Experiment

  上表为在网络参数(#.Param.)、每秒浮点运算(FLOP)、训练或推理速度(每秒帧数,FPS)和Top-1/Top-5精度(%)方面比较ImageNet上的不同注意力方法。†:由于A2-Nets和AA-Net的源代码和模型不是公开可用的,因此我们不比较它们的运行时间。♦: AA-Net通过初始数据增强和不同的学习率设置进行训练。

  以ResNet-101为主干模型:从上表中我们可以看出,ECA-Net在几乎相同的模型复杂度下比原始ResNet-101性能高1.8%。在ResNet-50上也有相同的趋势,ECA-Net优于SENet和CBAM,同时与AA-Net相比具有更低的模型复杂性。请注意,AA-Net使用初始数据增强和不同的学习率设置进行训练。

  使用ResNet-152作为主干模型:从上图中我们可以看出,ECA-Net以几乎相同的模型复杂度将原始ResNet-152的Top-1精度提高了约1.3%。与SENet相比,ECA-Net在Top-1方面获得了0.5%的增益,模型复杂度更低。关于ResNet-50、ResNet101和ResNet-152的结果证明了我们的ECA模块在广泛使用的ResNet架构上的有效性。

  采用MobileNetV2作为主干模型:上表中的结果显示,我们的ECA-Net将原始MobileNetV2和SENet的Top-1精度分别提高了约0.9%和0.14%。此外,我们的ECA-Net比SENet具有更小的模型大小和更快的训练/推理速度。以上结果再次验证了ECA模块的效率和有效性。

 

Conclusion

  在本文中,我们专注于学习具有低模型复杂度的深度神经网络的有效通道注意力。为此,我们提出了一种有效的信道关注(ECA)模块,该模块通过快速1D卷积生成信道关注,其核大小可以通过信道维度的非线性映射自适应地确定。实验结果表明,我们的ECA是一个非常轻量级的即插即用模块,可以提高各种深度CNN架构的性能,包括广泛使用的ResNets和轻量级MobileNetV2。此外,我们的ECA Net在对象检测和实例分割任务中表现出良好的泛化能力。未来,我们将把ECA模块应用于更多的CNN架构(例如,ResNeXt和Inception[31]),并进一步研究ECA与空间注意力模块的结合。

 

posted @ 2023-03-06 15:35  AllFever  阅读(1118)  评论(0编辑  收藏  举报