作者 | BBuf
编辑 | 唐里
ICCV2019: 通过非对称卷积块增强CNN的核骨架
下面要介绍的论文发于ICCV2019,题为「ACNet:Strengthening the Kernel Skeletons for Powerful CNN via Asymmetric ConvolutionBlocks」,axriv地址为:https://arxiv.org/abs/1908.03930v1。
由于在给定的应用环境中设计合适的卷积神经网络(CNN)结构需要大量的人工工作或大量的GPU资源消耗,研究界正在寻找网络结构无关的CNN结构,这种结构可以很容易地插入到多个成熟的体系结构中,以提高我们实际应用程序的性能。我们提出了非对称卷积块(ACB)作为CNN的构造块,它使用一维非对称卷积核来增强方形卷积核,我们用ACBs代替标准的方形卷积核来构造一个非堆成卷积网络ACNet,该网络可以训练到更高的精度。训练后,我们等价地将ACNet转换为相同的原始架构,因此将不需要额外的计算。实验证明,ACNet可以CIFAR和ImageNet上显著提高各种经典模型的性能。
1. 研究背景
卷积神经网络在视觉理解方面取得了巨大的成功,这使得其可以应用在安全系统,移动电话,汽车等各种应用中。由于前端设备通常受限于计算资源,就要求网络在保证精度的条件下要尽可能轻量。另一方面,随着CNN架构设计的相关研究增多,模型的性能得到了显著改善,但当现有的模型不能满足我们的特定需求时,要定制一种新的架构需要花费极高的成本。最近,研究者们正在寻求与架构无关的新型CNN结构,例如SE块和准六边形内核,它们可以直接和各种网络结构结合使用,以提高它们的性能。最近对CNN结构的研究主要集中在1)层之间是如何相互连接的,例如简单的堆叠在一起,恒等映射,密集连接等;2)如何组合不同层的输出以提高学习表示的质量;本文提出了非对称卷积块(ACB),它是用三个并行的核来代替原始的核,如图Figure1所示:
给定一个网络,我们通过将每个方形卷积核替换为ACB模块并训练网络到收敛。之后我们将每个ACB中非对称核的权值加到方形核的对应位置,将ACNet转换为和原始网络等效的结构。ACNet可以提高基准模型的性能,在CIFAR和ImageNet上优势明显。更好的是,ACNet引入了0参数,因此无需仔细调参就能将其与不同的CNN结构结合起来,并且易于在主流CNN框架上实现以及不需要额外的推理时间开销。
代码开源在:https://github.com/ShawnDing1994/ACN。
2. 相关工作
2.1 非对称卷积
非对称卷积通常用于逼近现有的正方形卷积以进行模型压缩和加速,先前的一些工作表明,可以将标准的卷积分解为和卷积,以减少参数量。其背后的理论相当简单:如果二维卷积核的秩为1,则运算可等价地转换为一系列一维卷积。然而,由于深度网络中下学习到的核具有分布