1 简介
空洞卷积(Dilation convolution)是标准卷积神经网络的关键变体,可以控制有效的感受野并处理对象的大尺度方差,而无需引入额外的计算。但是,在文献中很少讨论将有效感受野适合于具有卷积的数据。为了充分挖掘其潜力,我们提出了一种新的空洞卷积变体,即inception (dilated)卷积,其中卷积在不同轴,通道和层之间具有独立的空洞。为了探索一种将复杂的初始卷积拟合到数据的实用方法,开发了一种基于统计优化的简单而高效的空洞搜索算法(EDO,effective dilation search)。该搜索方法以零成本方式运行,该方法极其快速地应用于大规模数据集。
实证结果表明,本文方法在广泛的Baseline测试中获得了一致的性能提升。例如,通过简单地将ResNet-50主干中的3x3标准卷积替换为Inception Conv,将Faster-RCNN在MS-COCO上的mAP从36.4%提高到39.2%。此外,在ResNet-101骨干网中使用相同的替代方法,在自下而上的人体姿势估计上将AP得分从COCO val2017的AP得分从60.2%大幅提高到68.5%。
2 前人铺路
感受野是卷积神经网络的一个重要概念,也得到了广泛的研究。有学者证明了感受野的激活强度分布大致为高斯分布,只有感受野中心部分周围的少数像素有效地有助于输出神经元的响应。此外,有效感受野(ERF)已经在不同的任务中得到了测试和使用。
在不同的任务中,由于输入图像的大小差异和感兴趣对象的尺度范围不同,对ERF的要求也不同。例如,在图像分类中,输入的尺寸往往比较小(例如:而在目标检测中,输入的尺寸要大得多,目标尺度范围也很大。即使对于固定网络的同一任务,某一卷积层的最优ERF也可能与标准卷积运算不同。由于ERF的要求不断变化,需要针对不同的任务提出一种通用的、实用的ERF优化算法。
膨胀卷积核的膨胀系数是一个非常有效的超参数,可以调节不同任务之间的ERFs分布。LG等人的工作提出在一个CNN的不同阶段分配不同的膨胀值,并取得了一致的改进。NATS更进一步,将卷积分成不同的组,每个组都有独立的扩张值。但是在相对粗糙的搜索空间中使用骨架网络架构的搜索方法,忽略了扩张卷积的细粒度内部结构。因此,在本研究中重点探讨了在膨胀域的搜索问题,以有效地调整ERFs。
3 本文方法动机
3.1 Inception卷积
首先,希望有一个更灵活的搜索空间,可以使得模型能够具备将ERFs拟合到不同数据集的能力。于是本文提出一种新的膨胀卷积突变体,即Inception卷积,它包含尽可能多的膨胀模式,如图1所示。
在Inception卷积空间中,每个轴、每个通道和每个卷积层的膨胀都是独立定义的。Inception卷积提供了一个密集的ERF范围。
3.2 搜索空间优化
对于搜索空间的优化,本文主要参考了神经结构搜索(NAS)中的工作,它能够自动优化神经网络操作符组合。DARTS和single path one-shot(SPOS)是NAS方法的两大主要家族。
DART训练一个超网络,其中离散操作选择被放松为所有候选操作输出的连续加权和。训练后,在每个块中选择体系结构权重最大的操作。
SPOS在超网络的每个训练步骤中随机选择一个操作序列(子网),不同序列中的相同操作具有相同的权值。训练后,SPOS通过对多个继承sharedweights的序列进行采样和评估,选择最佳的操作序列。
然而,DART和SPOS都不适合本文方法的搜索空间。在DART中,Block中的所有操作在训练期间应用到输入,以使体系结构权值意识到每个操作的重要性,但卷积层(block)的膨胀模式的数量很大,即16个,如果两个轴各有4个选择。这意味着DART需要16次连续计算,因此具有较低的GPU效用和较大的计算成本。
SPOS在训练过程中对操作序列进行采样。然而,在本文方法的搜索空间中,即使在单个卷积层中,膨胀模式的数量也是巨大的,其中是通道数,是最大膨胀。大量的膨胀模式给为SPOS设计好的的抽样策略带来了极大的困难。
本文提出了一种简单而高效的膨胀优化算法(EDO)。在EDO中,超网络的每一层都是一个标准的卷积操作,其内核覆盖了所有可能的膨胀模式。在对超网络进行预训练后,通过求解一个统计优化问题,为每个卷积层中的每个通道选择膨胀模式。对于每一层,通过原始卷积层的输出期望与裁剪出来的与所选膨胀模式的膨胀卷积的L1误差最小,使用预先训练好的权值来解决选择问题。
EDO以一种非常简单的方式支持完全扩张域搜索空间进行高效的通道扩张优化。与基于搜索的方法相比,EDO的搜索代价几乎为零。与差分方法相比EDO将不同模式的顺序计算转换为并行方式,计算成本更低,GPU利用率更高。此外,与SPOS相比,EDO不需要设计复杂的机制来保证抽样的公平性和子网的准确排序。