论文简要:
SKNet 通过 SK 卷积(Selective Kernel Convolution),实现了动态重组特征,自适应地选择和融合不同尺度的特征信息,从而提高模型的性能和泛化能力,从而在图像分类任务上取得了优秀的性能。
本文方法:
SKNet 主要分为分割(Split)、融合(Fuse)和选择(Select)三个部分。通过上述步骤实现了动态重组特征,自适应地选择和融合不同尺度的特征信息,从而提高模型的性能和泛化能力。设输入特征图为 ,其中 、、 分别表示高度、宽度和通道数。
1、Split(分割):SKNet 首先对输入的特征图 进行两次 transformations,其中一次卷积核为 ,另一次卷积核为 ,从而分别得到两个对应的输出特征图 和 ,如下所示:
需要注意的是, 和 都是由高效的分组/深度卷积(grouped/depthwise convolutions)、批量归一化(Batch Normalization)和 ReLU 激活函数按顺序组成。为了进一步提高效率,传统的 卷积核被卷积核大小为 、dilation=2 的空洞卷积(dilated convolution)所取代。
2、Fuse(融合):为了实现自适应调整感受野大小,一个直接的想法是用门控来控制多分支的信息流,所以在调整之前,应该先将多分支信息整合,即:
然后,我们通过使用全局平均池化来嵌入全局信息(低维嵌入),生成通道维度上的统计信息 :
紧接着,为了实现精确和自适应的选择,创建了一个紧凑的特征 ,通过一个简单的全连接层实现维度的降低以提高效率:
其中, 表示 ReLU 函数, 表示批归一化,。为了研究d对模型效率的影响,使用 r 来控制其值:
其中,L表示 d 的最小值(在本文的实验中,L=32是一个典型的设置)。
3、Select(选择):使用跨通道的软注意力来自适应地选择不同的空间尺度信息,该注意力由对于所得到的紧凑的特征 引导。对通道上的权重进行 softmax 计算:
其中 ,, 分别表示 和 的软注意力向量, 代表第 C 行, 是 a 的第 C 个元素。最后,将 softmax 计算得到的软注意力向量/权重与 Split(分割)所得两个对应的输出特征图 和 进行加权,并相加得到最终输出特征图 :
其中 ,。