CBAM(Convolutional Block Attention Module)注意力机制是一种结合了通道注意力和空间注意力的注意力机制,旨在提高卷积神经网络(CNN)模型的表征能力和泛化能力。以下是对CBAM注意力机制的详细解释:
一、CBAM概述
CBAM由Sanghyun Woo等人在2018年的论文中提出,作为一种轻量级的注意力机制模块,CBAM不仅参数量和计算量小,而且能够即插即用,无缝衔接到CNN中,实现端到端的训练。CBAM通过自适应地学习通道和空间注意力权重,来提高卷积神经网络的特征表达能力。
二、CBAM的核心组成
CBAM由两个关键部分组成:通道注意力模块(Channel Attention Module, CAM)和空间注意力模块(Spatial Attention Module, SAM)。
-
通道注意力模块(CAM):
- 目标:增强每个通道的特征表达。
- 实现方式:
- 全局平均池化和全局最大池化:对于输入特征图,首先对每个通道执行全局平均池化和全局最大池化操作,计算每个通道上的最大特征值