论文:CBAM: Convolutional Block Attention Module
收录于:ECCV 2018
摘要
论文提出了Convolutional Block Attention Module(CBAM),这是一种为卷积神将网络设计的,简单有效的注意力模块(Attention Module)。对于卷积神经网络生成的feature map,CBAM从通道和空间两个维度计算feature map的attention map,然后将attention map与输入的feature map相乘来进行特征的自适应学习。CBAM是一个轻量的通用模块,可以将其融入到各种卷积神经网络中进行端到端的训练。
主要思想
对于一个中间层的feature map: F ∈ R C ∗ H ∗ W F \in\mathbb R^{C*H*W} F∈RC∗H∗W,CBAM将会顺序推理出1维的channel attention map M c ∈ R C ∗ 1 ∗ 1 M_c \in\mathbb R^{C*1*1} Mc∈RC∗1∗1以及2维的spatial attention map M s ∈ R 1 ∗ H ∗ W M_s \in\mathbb R^{1*H*W} Ms∈R1∗H∗W,整个过程如下所示:
F ′ = M c ( F ) ⊗ F F^{'} = M_c(F) \otimes F F′=Mc(F)⊗F
F ′ ′ = M s ( F ′ ) ⊗ F ′ F^{''}=M_s(F^{'}) \otimes F^{'} F′′=Ms(F′)⊗F′
其中 ⊗ \otimes ⊗为element-wise multiplication,首先将channel attention map与输入的feature map相乘得到 F ′ F^{'} F′,之后计算 F ′ F^{'}