Squeeze-and-Excitation Networks

读这篇论文主要是为了学习注意力机制 (Attention),论文没有做精度,想对文章做快速了解的可以观看 b 站视频:https://www.bilibili.com/video/BV1SA41147uA?from=search&seid=5000503775793461277

注意力机制

我们在观察人或物时,通常会集中注意力于某一部分,从而在短时间达到对目标的快速认识。这是我们天然所习得的合理利用有限的视觉信息处理资源的能力。对应于神经网络,注意力机制通常是指能够选择性的输入某些部分,或者给输入的不同部分分配以不同的权重。

以卷积神经网络为例,我们可以在空间维度引入 Attention 机制 (如图 Inception 网络中不同颜色表示不同的权重),也可以在通道维度增加 attention 机制。

通道维度的 attention

文中中所用的方法如图所示。这里我们可以先对其做一个简单的理解。假设原先的特征图大小为 HxWxC,我们通过某种方式使其变成了 1x1xC 的大小,在这个维度下,每个通道的值就对应着这个通道的权重。之后直接将原先特征图的每个通道乘上变换后对应通道的值,就完成了通道维度的 attention。每个通道的权重值,需要在神经网络训练的过程中去逐渐的学习。

通道权重的计算步骤

那么 HxWxC 的特征图是怎么变为 1x1xC 的通道权重的呢?我们将其分为 squeeze、excitation、scale 三个步骤

Squeeze

我们通过一个全局池化 (Global pooling) 来计算每个通道的值并对初始的特征图进行压缩,计算公式如下:

" target="_blank" rel="noopener">http://ww1.sinaimg.cn/large/005Sr5tQly1gglukdj096j30f5030jre.jpg";">

这个公式还是比较容易理解的,就是将平均池化扩大至了全局的范围,也是因为如此,计算出的实数 $z_c$ 拥有全局的感受野。
在 Squeeze 操作后的大小为 1x1xC

Excitation

这一阶段我们需要将上一步骤得到的 1x1xC 的特征图对应于于每一个通道生成权重。在文中,作者使用全连接的方式先将通道数变小然后再进行回复,最后通过 Sigmoid 函数来将输出限制在 0~1 中。

http://ww1.sinaimg.cn/large/005Sr5tQly1ggluw5ppi6j30ib0hcgm9.jpg" style=”zoom:80%”;”>

Scale

将上一步得到的归一化权重直接逐通道进行相乘,这就完成通道维度的 attention 机制。

论文相对比较简单。如果文章存在问题或者大家对博客有什么建议,欢迎在留言指出 (留下邮箱哦)~

丨fengche丨 wechat
来找我聊天吧~
-------------本文结束感谢您的阅读-------------