完美代替传统卷积!Facebook等提出全新卷积操作OctConv,速度接近理论极限 2019-04-18



   新智元原创   

来源:arxiv

编辑:肖琴

【新智元导读】Facebook AI、新加坡国立大学、360 人工智能研究院的研究人员提出一种新的卷积操作OctConv,可以直接替代传统卷积,持续提高图像和视频识别任务的精度,同时降低内存和计算成本。


传统卷积运算,有了一种全新的替代方法。


近日,Facebook AI、新加坡国立大学、360 人工智能研究院的研究人员提出一种新的卷积操作 ——Octave Convolution (OctConv)


论文地址:

https://export.arxiv.org/pdf/1904.05049


其中,论文一作陈云鹏现于新加坡国立大学读博士,师从颜水成冯佳时,两人也是这篇论文的作者。其他作者来自Facebook AI。


作者表示,OctConv 是一种即插即用的卷积单元,可以直接替代传统的卷积,而无需对网络架构进行任何调整


在自然的图像中,信息以不同的频率传递,其中较高的频率通常以精细的细节编码,较低的频率通常以全局结构编码。


类似地,卷积层的输出特征图也可以看做是不同频率的信息的混合。


在这项工作中,作者提出将混合特征映射根据其频率进行分解,并设计了一种全新的卷积运算:Octave Convolution (OctConv),用以存储和处理在较低空间分辨率下空间变化 “较慢” 的特征图,从而降低了内存和计算成本。


Octave 一词表示 “八音阶” 或 “八度”,音乐里降 8 个音阶表示频率减半。通过降低低频特征的分辨率,从而节省内存和计算。


实验表明,通过简单地用 OctConv 替代卷积,我们可以持续提高图像和视频识别任务的精度,同时降低内存和计算成本


采用 OctConv 的 ResNet-152 仅用 22.2 GFLOPs 就能在 ImageNet 上实现 82.9% 的top-1 分类精度。


完美替代传统卷积,即插即用无需调参


卷积神经网络 (CNNs) 在许多计算机视觉任务中都取得了显著的成功,并且随着最近的研究在降低密集模型参数和特征图通道维数的固有冗余,它们的效率不断提高。然而,CNN 生成的特征图在空间维度上也存在大量冗余,其中每个位置独立存储自己的特征描述符,忽略了可以一起存储和处理的相邻位置之间的公共信息。


图 1:(a) 动机。视觉的空间频率模型的相关研究表明,自然图像可以分解为低空间频率和高空间频率两个部分。(b) 卷积层的输出图也可以根据其空间频率进行分解和分组。(c) 所提出的多频特征表示将平滑变化的低频映射存储在低分辨率张量中,以减少空间冗余。(d) 所提出的 Octave Convolution 直接作用于这个表示。它会更新每个组的信息,并进一步支持组之间的信息交换。


如图 1(a) 所示,自然图像可以分解为描述平稳变化结构的低空间频率分量和描述快速变化的精细细节的高空间频率分量

类似地,我们认为卷积层的输出特征映射也可以分解为不同空间频率的特征,并提出了一种新的多频特征表示方法,将高频和低频特征映射存储到不同的组中,如图 1(b) 所示。因此,通过相邻位置间的信息共享,可以安全地降低低频组的空间分辨率,减少空间冗余,如图 1(c) 所示。

为了适应新的特征表示,我们提出 Octave Convolution (OctConv),它接收包含两个频率的特征映射,并直接从低频映射中提取信息,而无需解码回到高频,如图 1(d) 所示。


作为传统卷积的替代,OctConv 消耗的内存和计算资源都大大减少。此外,OctConv利用相应的 (低频) 卷积处理低频信息,有效地扩大了原始像素空间的感受野,从而提高识别性能。


我们以一种通用的方式设计 OctConv,使它成为卷积的替代,而且即插即用。由于OctConv 主要侧重于处理多空间频率的特征映射并减少其空间冗余,它与现有的方法是相交且互补的,现有的方法侧重于构建更好的 CNN 拓扑结构,减少卷积特征映射中的信道冗余和密集模型参数中的冗余。


此外,与利用多尺度信息的方法不同,OctConv 可以很容易地部署为即插即用单元,以替代卷积,而不需要改变网络结构或需要超参数调优。


我们的实验证明,通过简单地用 OctConv 代替传统卷积,可以持续提高流行的 2D CNN 模型的 ImageNet 图像识别性能,包括 ResNet ResNeXt, DenseNet, MobileNet,以及 SE-Net。


采用 OctConv 的 Oct-ResNet-152 超过了手工设计的 state-of-the-art 网络,并且所需的内存和计算成本更低。


我们的贡献可以总结如下:


  • 我们提出将卷积特征映射分解成不同空间频率的两个组,并分别以相应的频率处理不同的卷积,相隔一个八度 (octave)。由于可以降低低频图的分辨率,因此能够节省存储和计算。这也有助于每一层获得更大的感受野,以捕获更多的上下文信息。


  • 我们设计了一种即插即用的运算,名为 OctConv,用来代替传统的卷积运算。OctConv直接对新的特征表示进行运算,减少了空间冗余。更重要的是,OctConv 在实践中速度很快,达到了接近理论极限的加速。


  • 我们广泛研究了所提出的 OctConv 在用于图像和视频任务的各种骨干 CNN 上的特性,并获得了显著的性能提高,甚至可以与最好的 AutoML 网络相媲美。

Octave Convolution:方法详解


octave feature representation 减少了空间冗余,比原始表示更加紧凑。然而,由于输入特征的空间分辨率不同,传统卷积不能直接对这种表示进行操作。


避免这个问题的一种简单方法是将低频部分上采样到原始的空间分辨率,将它与连接起来,然后进行卷积,这将导致额外的计算和内存开销。


为了充分利用紧凑的多频特征表示,我们提出 Octave Convolution,它可以直接在分解张量上运行,而不需要任何额外的计算或内存开销。

传统卷积 (Vanilla Convolution)


表示一个 k×k 卷积核,表示输入张量和输出张量。中的每个 feature map 可以下面的公式计算:


式中 (p, q) 为位置坐标,

定义了一个局部邻域。

Octave Convolution.


我们的设计目标是有效地处理相应频率张量中的低频和高频分量,同时使我们的 Octave特征表示的高频分量和低频分量之间能够有效地通信。


X, Y 为分解输入和输出张量。那么输出的高频和低频特征映射将由 给出。


Octave Convolution 的设计细节。绿色箭头表示信息更新,红色箭头表示两个频率之间的信息交换。

Octave Convolution kernel。k×k Octave 卷积核与普通卷积核等价,即二者具有完全相同的参数量。


实验和评估


在实验和评估部分,我们验证了 Octave Convolution 在 2D 和 3D 网络中的有效性和效率。


我们分别进行了 ImageNet 上图像分类的研究,然后将其与目前最先进的方法进行了比较。


然后,我们用 Kinetics-400 和 dynamics 600 数据集,证明所提出的 OctConv 也适用于 3D CNN。


图 4:ImageNet 上的结果


如图 4 所示,采用 OctConv 的模型比基线模型更有效、更准确。图中每条线的黑色标记表示不采用 OctConv 的相应基线模型的精度。


表 2:ResNet-50 的结果


表 4:ImageNet 分类精度


表 5:小型模型的 ImageNet 分类精度


表 6:中型模型的 ImageNet 分类精度


表 7:大型模型的 ImageNet 分类精度

表 8:视频动作识别的结果

更多阅读


新智元春季招聘开启,一起弄潮 AI 之巅!

岗位详情请戳:


【加入社群】


新智元 AI 技术 + 产业社群招募中,欢迎对 AI 技术 + 产业落地感兴趣的同学,加小助手微信号:aiera2015_2   入群;通过审核后我们将邀请进群,加入社群后务必修改群备注(姓名 – 公司 – 职位;专业群审核较严,敬请谅解)。

    已同步到看一看

    发送中