Squeeze-and-Excitation Networks(SENet)是由自动驾驶公司Momenta在2017年公布的一种全新的图像识别结构,它通过对特征通道间的相关性进行建模,把重要的特征进行强化来提升准确率。这个结构是2017 ILSVR竞赛的冠军,top5的错误率达到了2.251%,比2016年的第一名还要低25%。
中心思想:对于每个输出channel,预测一个常数权重,对每个channel加权一下。
Squeeze-and-Excitation Networks • 对于每一输出通道,先global average pool,每个通道得到1个标量,C个通道得到C个数,然后经过FC-ReLU-FC-Sigmoid得到C个0到1之间的标量,作为通道的权重,然后原来的输出通道每个通道用对应的权重进行加权(对应通道的每个元素与权重分别相乘),得到新的加权后的特征,作者称之为feature recalibration。• 第一步每个通道HxW个数全局平均池化得到一个标量,称之为Squeeze,然后两个FC得到01之间的一个权重值,对原始的每个HxW的每个元素乘以对应通道的权重,得到新的feature map,称之为Excitation。任意的原始网络结构,都可以通过这个Squeeze-Excitation的方式进行feature recalibration,采用了改方式的网络,即SENet版本。
• 上面的模块很通用,也可以很容易地和现有网络集成,得到对应地SENet版本,提升现有网络性能,SENet泛指所有的采用了上述结构地网络。另外,SENet也可以特指作者 ILSVRC 2017夺冠中采用的SE-ResNeXt-152 (64 × 4d)。
下面是SENet和Inception的结合:
Inception下面是SENet和ResNet的结合:
ResNet可以看出,具体实现上就是一个Global Average Pooling-FC-ReLU-FC-Sigmoid,第一层的FC会把通道降下来,然后第二层FC再把通道升上去,得到和通道数相同的C个权重,每个权重用于给对应的一个通道进行加权。上图中的r就是缩减系数,实验确定选取16,可以得到较好的性能并且计算量相对较小。
全连接与全局均值池化:
假如,最后的一层的数据是10个66的特征图,global average pooling是将每一张特征图计算所有像素点的均值,输出一个数据值,
这样10 个特征图就会输出10个数据点,将这些数据点组成一个110的向量的话,就成为一个特征向量,就可以送入到softmax的分类中计算了
两者的感受野、参数量、特征信息提取对比:
1.而且全局平均池化操作,从而使其具有全局的感受野,使得网络低层也能利用全局信息。
2.全连接的目的,因为传统的网络我们的输出都是几个类别的概率,那么全连接层就是高度提纯的特征了,方便交给最后的分类器或者回归。但是全连接的参数实在是太多了;GAP减少了参数的数量,可以减轻过拟合的发生.
3.FC会导致feature map损失空间位置信息,而GAP则不会.
(如果在图像的某一位置有高响应,则经过FC之后,根据整个feature并不能分辨出刺激源于左上角还是右下角还是什么其他的地方,而通过GAP就可以,因为其保留了空间位置信息)
SENet一个很大的优点就是可以很方便地集成到现有网络中,提升网络性能,并且代价很小。
网友评论