Selective Kernel Networks
Xiang Li 1,2, Wenhai Wang 3,2, Xiaolin Hu 4 and Jian Yang 1
1PCALab, Nanjing University of Science and Technology 2Momenta 3Nanjing University 4Tsinghua University
概述
标准CNN中每层神经元的感受野是相同的。但是在神经科学界众所周知的是:视觉皮层神经元的感受野(RFs)大小受到刺激的调节,这在构建CNN时很少被考虑。作者提出一个动态选择机制,让每个神经元能够自适应地调整感受野大小。作者称提出的模块为Selective Kernel (SK) 单元,使用由多个分支中信息引导的softmax注意力(attention)来融合这些具有不同尺寸卷积核的多个分支。不同分支上不同的注意力,使得融合层中神经元的有效感受野的尺寸不同。在深度网络上堆叠多个SK单元后,称该网络为SKNets。
注:本文使用的注意力机制是Soft Attention,Soft Attention是参数化的(Parameterization),因此可导,可以被嵌入到模型中去,直接训练。梯度可以经过Attention Mechanism模块,反向传播到模型其他部分。
背景介绍
神经元对于同一区域的感受野大小不同,这使得神经元得以在同一处理阶段收集多尺度空间信息。利用这一机制,InceptionNets被提出(GoogLeNet采用该模块),它使用简易的concat操作融合多尺度信息。
然而,在设计CNN时,神经元的一些其他RF特性尚未得到强调。其中就有RF尺寸的自适应变化特性。大量实验表明视觉表层的RF尺寸不是固定的,而是根据不同刺激做出相应调整的。实验发现,在传统感受野(CRFs)之外的刺激,神经元也会给出反馈,这被称为非传统感受野(nCRFs)。另外,还发现对比度越小,有效nCRF尺寸越大,而且在刺激nCRFS一段时间后停止,会发现神经元的CRF也会变大。可是,这一特性在构建深度学习模型时没有得到过多关注。虽然InceptionNets融合了多尺度信息,但是这种线性聚合方法不足以提供神经元强大的自适应的能力。
本文中,作者提供一种非线性的方法,用以聚合多个卷积核提供的信息,最终实现神经元自适应感受野的大小。作者引入Selective Kernel(SK)卷积,它包含三种操作:split,fuse和select。
SK卷积是轻量级的,只引入了些许参数和计算开销。
为了证明提出的模型有能力调整神经元感受野尺度,作者通过在自然图像中放大目标对象并缩小背景以保持图像大小不变来模拟刺激。最终实验结果表明随着目标物越来越大,大多数神经元从更大的卷积核的路径上收集越来越多的信息。这也就证明了SKNet中的神经元能自适应感受野大小,这是该模型在目标识别方面卓越表现的基础。
相关工作
- Multi-branch convolutional networks:Highway networks、ResNet、shake-shake networks、multi-residual networks、Deep neural decision forests、FractalNetsMultilevel ResNets、InceptionNets。SKNet继承了InceptionNet的思想,但是有两个重要的不同点:
- SKNets的算法策略更加简洁,没有重量级的定制设计
- SKNets对于多分支使用自适应选择机制,实现了神经元自适应感受野大小
- Grouped/depthwise/dilated convolutions
- Attention mechanisms:它偏向最具信息性的特征表示,同时抑制不太有用的特征表示(trunk-and-mask attention、hourglass module、SENet、spatial attention。
- Dynamic convolutions:Spatial Transform Networks、Dynamic Filter、Active Convolution 、Deformable Convolutional Networks
本文方法
1. Selective Kernel Convolution
SK卷积层使得神经元能自适应感受野尺寸,它含有三种操作:split、fuse和select。如下图:
- Split:使用不同尺寸卷积核获得不同感受野的特征图
- Fuse:首先进行Eltwise求和操作,然后使用全局平均池化,最后通过全连接层将平均池化结果降维,生成紧凑特征
- Select:通过Fuse操作的输出特征引导,将soft attention机制应用在channel上,使得网络自主地选择不同的空间尺度:
其中,
2. 网络架构
总的来说,SKNet的网络架构将ResNeXt中较大的卷积核换为SK单元,对比于ResNeXt网络,在提升性能的同时导致了10%的参数增长以及5%的额外计算开销。
在SK单元中有三个重要的超参数:
1.路径数(path)M,确定要聚合的不同内核的数目
2.分组数(group)G,注:group conv
最早出现在AlexNet
中,因为显卡显存不够,只好把网络分在两块卡里,于是产生了这种结构;Alex认为group conv
的方式能够增加 filter之间的对角相关性,而且能够减少训练参数,不容易过拟合,这类似于正则的效果
3.下降比(reduction ratio)r,用来控制fuse操作中参数数量
作者采用的参数设定为
总结
受到视觉皮层自适应感受野的启发,基于注意力机制,作者提出SKNet。
关键词
注意力机制、自适应感受野
补充
空洞(扩张)卷积/dilation conv:
Group Conv