SimAm
论文名称:SimAM: A Simple, Parameter-Free Attention Module for Convolutional Neural Networks
介绍
本文提出了一种简单有效的 3D 注意力模块,基于著名的神经科学理论,提出了一种能量函数,并且推导出其快速解析解,能够为每一个神经元分配权重。主要贡献如下:
- 受人脑注意机制的启发,我们提出了一个具有 3D 权重的注意模块,并设计了一个能量函数来计算权重;
- 推导了能量函数的封闭形式的解,加速了权重计算,并保持整个模块的轻量;
- 将该模块嵌入到现有 ConvNet 中在不同任务上进行了灵活性与有效性的验证。
相关工作
就目前而言,网络表达能力的提升主要体现在两个方面:网络结构和注意力模块
网络结构:从 AlexNet 到 VGG 再到 ResNet 越来越深的网络堆叠结构,或是 GoogLeNet 等更宽的结构赋予了网络更强的表达能力,也有相当多的工作使用 AutoML 来避免人工设计。
然而,作者的目标是设计一个轻量级的即插即用的模块以应用于各种任务,而无需对网络结构做出较大的改变
注意力模块:
以 SENet 为代表的通道注意力模块或是一些空间注意力模块,虽然取得了不错的效果,但是其计算权重的算法多是人工设计,需要大量的计算量,当然也有一些模块受到神经科学的启发。
局限性:对于通道注意力/空间注意力来说,他们往往只是对不同通道/位置区别对待,而对所有的位置/通道同等对待;并且其往往需要额外的子网络来生成权重。
方法
作者认为注意机制的实现应该遵循神经计算中的一些统一原则。因此,基于一些成熟的神经科学理论提出了一种新的方法。
在视觉神经学中,那些信息量(most informative)最大的神经元通常与周围神经元拥有不同的放电模式。
同时,一个活跃的神经元也可能一直周围的神经元活动,这种现象被称为”空间抑制“。
换言之,在视觉中,表现出明显空间一直效应的神经元应该被赋予更高的重要性,而找到这些神经元的最简单方式就是测量一个目标神经元与其他神经元之间的线性可分性。
能量函数
基于以上科学发现,提出了以下的能 量函数(公式来源 参考):
和 是输入 中单通道上的目标神经元和其他神经元
和 是 和 的线性变换, 和 分别代表线性变换的权重和偏置
是空间维度上的索引, 代表该个通道上神经元的个数
式中的所有量都是标量,当 和所有 时取得最小值,其中, 和 是两个不同的值
求解 式的最小值等价于求解目标神经元和其他所有神经元之间的线性可分性
简便起见,使用二值标签,即 ,并且添加了正则项,则最终的能量函数如下: