计算机视觉中的注意力机制
一般来说,注意力机制通常被分为以下基本四大类:
通道注意力 Channel Attention,告诉网络 what to pay attention to
空间注意力机制 Spatial Attention,告诉网络 where to pay attention to
时间注意力机制 Temporal Attention,告诉网络 when to pay attention to
分支注意力机制 Branch Attention,告诉网络 which to pay attention to
以及两种混合注意力机制:
通道空间混合注意力机制
和
空间时间混合注意力机制
CBAM总体流程
CBAM是通道空间注意力的一种。给定一张特征图,CBAM模块能序列化地在通道和空间两个维度上产生注意力特征图信息,然后两种特征图信息再与原输入特征图相乘进行自适应特征修正,产生最后的特征图。
对于网络主干生成的特征图
CBAM分别产生1D通道注意力特征图
Channel Attention Module
为了更高效地计算通道注意力特征,需要压缩特征图的空间维度。CBAM同时采用了平均池化和最大池化这两种方法,在后面实验中也证实了同时使用两种方法的效果会更好。
最后再将特征送入一个共享的多层感知机(MLP)网络中产生最终的通道注意力特征图
为了降低计算参数,在MLP中还采用了一个降维系数r,
综上通道注意力计算公式为:
spatial Attention Module
通过对特征图空间内部的关系来产生空间注意力特征图。不同于通道注意力,空间注意力聚焦于特征图上的有效信息在"哪里"(where)。为了计算空间注意力,首先在通道维度平均池化和最大池化,然后将他们产生的特征图进行拼接起来(concat)。然后在拼接后的特征图上,使用卷积操作来产生最终的空间注意力特征图:
来源:https://zhuanlan.zhihu.com/p/510223283