深度学习视频理解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.1.12 SENet

SENet(Squeeze-and-Excitation Networks,挤压和激励网络)(Hu et al.,2020)以 ResNeXt-152 为骨架网络获得了2017年ImageNet 竞赛分类任务的冠军。如图2-17所示,在得到卷积层特征之后,SENet通过额外的分支,即图2-17中的SE模块,来得到每个通道img的重要性权重,用于自适应地校正卷积层特征各个通道的响应数值大小,以提升有用的通道响应,并抑制对当前任务用处不大的通道响应。SENet 可以看作是通道维度的注意力(Attention)机制。形式化地,假设卷积层的输出特征为img,SE模块的输出为img,SENet的输出为img,其中

img

(2.7)

SE模块输出img的第imgimg是对卷积特征imgimg个通道的重要性权重。

img

图2-17 SENet模块结构图

这个额外的SE模块可以适用于多种网络结构。以ResNet为例,如图2-18所示,SENet在原来的残差分支基础上,在残差分支后额外增加一个分支。该新增的分支先进行全局平均汇合,称为挤压操作,全局平均汇合之后的特征具有全局感受野,之后通过两层全连接层,称为激励操作,最后通过 Sigmoid 激活函数得到每个通道img的重要性权重。在得到各通道的重要性权重之后,将这个权重值乘以原残差分支的输出,再和短路分支相加,构成整个模块的输出。在激励操作中,img是一个超参数,实际设为16,使用两个全连接层相比于使用一个全连接层的好处是降低了参数量和计算量,以及获得更多的非线性。

SE模块结构十分简单,很容易部署到已有的图像分类网络中。以ResNet-50 为例,加入 SE 模块后,SE-ResNet-50 参数量比ResNet-50 增加了10%,主要是源于ResNet-50 最后一个阶段(Stage)的特征通道数为2048,导致 SE 模块的全连接层参数量比较大。(Hu et al.,2020)发现,如果去除 SE-ResNet-50的最后一个阶段的SE模块,参数量只比ResNet-50 多 2%,而模型的准确率几乎没有变化。预测时间方面,SE-ResNet-50 需要额外 10% 的GPU 预测时间,或额外 2% 的CPU 预测时间,而理论上 SE-ResNet-50 比ResNet-50 多的计算量是1%。

img

图2-18 标准残差模块和带 SE分支的残差模块