目录
1、摘要:
在不增加原始网络参数的情况下,为特征图推断三维注意力权重
1、提出优化能量函数以发掘每个神经元的重要性
2、针对能量函数推导出一种快速解析解,不超过10行代码即可实现。
2、注意力机制比较:
不同注意模块的结构设计和参数比较。运算符有:空间(GAP)或通道平均池化(CAP)、空间(GMP)或通道最大池化(CMP)、沿空间维度计算的标准偏差(GSP)、标准卷积(C2D)或基于通道的卷积(C1D)、标准(FC)或通道方式(CFC)全连接层、层归一化(LN)、批处理归一化(BN)、Softmax和ReLU。k和r分别是卷积滤波器的数目和衰减率。c是目前的特征通道。
现有的注意力模块通常被继承到每个块中,以改进来自先前层的输出。这种细化步骤通常沿着通道维度(a)或空间维度(b)操作,这些方法生成一维或二维权重,并平等对待每个通道或空间位置中的神经元,
通道注意力:1D注意力,它对不同通道区别对待,对所有位置同等对待;
空域注意力:2D注意力,它对不同位置区别对待,对所有通道同等对待。
这可能会限制他们学习更多辨别线索的能力。因此三维权重©优于传统的一维和二维权重注意力
3、SimAM:
在人类中,空间注意力和通道注意力是共存的,共同促进视觉处理过程中的信息选择。因此提出一个注意力模块,使得每个神经元被分配一个唯一的权重。
为更好的实现注意力,我们需要评估每个神经元的重要性。在神经科学中,信息丰富的神经元通常表现出与周围神经元不同的放电模式。而且,激活神经元通常会抑制周围神经元,即空域抑制。换句话说,具有空域抑制效应的神经元应当赋予更高的重要性找到这些神经元最简单的实现是测量一个目标神经元和其他神经元之间的线性可分性。基于这些神经科学发现,作者为每个神经元定义了以下能量函数:
最小化上述公式等价于训练同一通道内神经元t与其他神经元之间的线性可分性。为简单起见,我们采用二值标签,并添加正则项,最终的能量函数定义如下:
理论上,每个通道有个能量函数。幸运的是,上述公式具有如下解析解:
其中
因此,最小能量可以通过如下公式得到:
上述公式意味着:能量越低,神经元t与周围神经元的区别越大,重要性越高。 因此,神经元的重要性可以通过
1
/
e
∗
1/e^*
1/e∗得到。
到目前为止,推导了能量函数并挖掘了神经元的重要性。按照注意力机制的定义,需要对特征进行增强处理:
下图给出了SimAM的pytorch风格实现code。
4、实验结果
相比其他注意力机制,所提SimAM取得了最佳性能;
在小网络方面,PreResNet56在CIFAR10数据集上取得了最佳性能(92.47/69.13),显著优于其他注意力;
在大网络方面,所提SimAM同样优于SE与CBAM等注意力机制;
值得一提的是,所提SimAM并不会引入额外的参数;
上述实验结果均表明:所提无参注意力SimAM是一种通用注意力机制,并不局限于特定网络。