自过去的几十年里,人工神经收集取得了显著的进展,这归功于一种理念:增加收集的庞杂度可以提高本能。从 AlexNet 引爆了深度学习在计算机视觉的热潮后,研究者们为了提拔深度收集的本能,精心地计划出了各种各样的模块,包括 ResNet 中的残差,ViT 中的注意力机制等。然而,尽管深层的庞杂神经收集可以取得很好的本能,但他们在实际应用中的推理速率往往会受到这些庞杂操作的影响而变慢。
来自华为诺亚、悉尼大学的研究者们提出了一种极简的神经收集模型 VanillaNet,以极简主义的计划为理念,收集中仅仅包含最容易的卷积计算,去掉了残差和注意力模块,在计算机视觉中的各种恣意上都取得了不俗的效果。13 层的 VanillaNet 模型在 ImageNet 上就可以到达 83% 的精度,挑战了深度学习模型中庞杂计划的必要性。
论文地址:https://arxiv.org/abs/2305.12972
代码地址:https://github.com/huawei-noah/VanillaNet
极简收集的架构计划
图 1. 6 层的 VanillaNet 结构示意图
图 1 展示了 6 层的 VanillaNet 的结构,它的结构十分简洁,由 5 个卷积层,5 个池化层,一个全连接层和 5 个激活函数构成,结构的计划遵循 AlexNet 和 VGG 等传统深度收集的常用规划:分辨率逐渐缩小,而通道数逐渐增大,不包含残差,自注意力等计算。
然而,如此容易的神经收集结构真的可以到达 SOTA 的精度吗?从过往的经验来看,AlexNet 和 VGG 等收集由于难以训练,精度低等特性早已被抛弃。而如何提拔这类收集的精度,是一个需要解决的难关。
极简收集的训练规划
作家认为,VanillaNet 的瓶颈主要在于由于其层数少带来的非线性差的问题,作家基于此观点,首先提出了深度训练策略来解决这一问题。
针对 VanillaNet 中的一个卷积层,深度训练策略提出将其拆分为两个卷积层,从而增加其非线性,然而,将一层拆分成两层会显著增加收集的计算量和庞杂度,因此,作家提出只需在训练时增加收集层数,在推理时将其融合即可。具体来说,被拆分为两层的卷积会使用如下的激活函数:
是由一个传统非线性激活函数(如 ReLU 等)和恒等映照加权得到。在收集训练的初始阶段,非线性激活函数会占主导地位,使得收集在开始训练时拥有较高的非线性,在收集训练的过程中,恒等映照的权值会逐渐提拔,此时该激活函数会逐渐变为线性的恒等映照,通过以下公式容易推导:
不拥有非线性激活的两个卷积层就可以被融合为一层,从而到达了” 深层训练,浅层推理 “的效果。
此外,作家还提出了一种基于级数启发的激活函数,来进一步增加收集非线性,具体的,假设为任意现有的非线性激活函数,级数激活函数通过对激活函数进行偏置和加权,得到多个激活函数的叠加,从而使得单个激活函数拥有更强的非线性:
作家对这一形式又进行了改进,使得该激活函数可以学习到全局信息而非单个输入点的信息:
作家认为,可以通过提出这两个改进规划,增加收集的非线性,从而使得极简收集也拥有媲美甚至超越庞杂收集的精度。
极简收集的威力
为了证明 VanillaNet 的有效性,作家在计算机视觉的三大主流恣意:图象分类、检测和分割上进行了试验。
作家首先验证了提出的深度训练规划和级数激活函数的有效性:
表 1 极简收集在图象分类的本能
从上表中可以看到,所提出的两个规划可以大幅提拔 VanillaNet 的精度,在 ImageNet 上有数十个点的提拔,此外,作家还在 AlexNet 这种传统收集上也进行了试验,效果提拔依旧十分惊艳,这证明了容易的收集计划只要通过精心的计划和训练,仍然拥有强大的威力。而对于 ResNet50 这类庞杂收集来说,本文提出的计划规划收效甚微,说明这类规划对于容易的收集更为有效。
表 2 极简收集在图象分类的本能
残差模块在 VanillaNet 这种容易的收集中是否还奏效?作家同样针对这一问题进行了试验,试验表明,不管是采用 ResNet 本身的残差规划还是改进后的 PreAct-ResNet 残差规划,对于 VanillaNet 来说都没有提拔,这是否说明了残差收集不是深度学习的唯一选择?这值得后续研究者们的思考。作家的解释是由于 VanillaNet 的深度较少,其主要瓶颈在于非线性而非残差,残差反而可能会损害收集的非线性。
接下来,作家对比了 VanillaNet 和各类经过庞杂计划的收集在 ImageNet 分类恣意上的精度。
表 3 极简收集在图象分类的本能
可以看到,所提出的 VanillaNet 拥有十分惊艳的速率和精度指标,例如 VanillaNet-9 仅仅使用 9 层,就在 ImageNet 上到达了接近 80% 的精度,和同精度的 ResNet-50 相比,速率提拔一倍以上(2.91ms v.s. 7.64ms),而 13 层的 VanillaNet 已经可以到达 83% 的 Top-1 准确率,和相同精度的 Swin-S 收集相比速率快 1 倍以上。尽管 VanillaNet 的参数量和计算量都远高于庞杂收集,但由于其极简计划带来的优势,速率反而更快。
图 2 极简收集在图象分类的本能
图 2 更直观的展示了 VanillaNet 的威力,通过使用极少的层数,在 batch size 设置为 1 的情况下,VanillaNet 可以到达 SOTA 的精度和速率曲线。
表 4 极简收集在检测和分割恣意的本能
为了进一步显示 VanillaNet 在不同恣意的能力,作家同样在检测和分割模型上进行了试验,试验表明,在下游恣意上,VanillaNet 也可以在同精度下拥有更好的 FPS,证明了 VanillaNet 在计算机视觉中的潜力。
总结来说,VanillaNet 是一种十分简洁但强大的计算机视觉收集架构,使用容易的卷积架构就可以到达 SOTA 的本能。自从 Transformer 被引入视觉领域后,注意力机制被认为是十分重要且有效的结构计划,然而 ConvNeXt 通过更好的本能重振了卷积收集的信心。那么,VanillaNet 是否可以引发无残差收集、浅层收集等计划 “文艺复兴” 的浪潮?让我们拭目以待。