极简笔记 Squeeze-and-Excitation Networks
论文地址:https://arxiv.org/abs/1709.01507
ILSVRC2017分类冠军论文,思路简单,提出SE block,可以附加在现有网络结构上。SE block的目的是在channel层面突出有贡献的响应信息让后续卷积层利用,同时抑制无关响应。
SE block结构如上图,即对原feature map多加一个分支,先global average pooling,然后利用两层fc bottleneck结构回归到权重(fc+relu+fc+sigmoid, 中间的隐藏节点个数是原通道/rate,rate是一个超参),之后对应乘在原feature map上。SE block可以直接附加在现有resnet和inception网络的结构上,具体方式见下图。
SE-Inception Model | SE_ResNet Module |
---|---|
SE block计算量也没有增加太多,从ResNet50到SE-ResNet50,计算量从3.86增加到3.87 GFLOPs,前向传播从190ms增加到209ms(八块Titan X),SE-ResNet50增加的参数量主要在最后SE_5_2和SE_5_3,后来发现这两层不用SE block性能并没有下降多少,可以考虑去掉。下图是网络结构细节和性能的对比。
文章对不同层的SE block的权重响应进行了分析,发现在浅层不同类别的权重响应都差不多,深层就会变得类别相关。以及在最后SE_5_2和SE_5_3会突然违背这样的趋势,作者分析这样的饱和状态说明这两层的SE block的重要性不如前面的一些层,这和前面删掉SE_5_2和SE_5_3却不掉性能的实验够对应上。