A ConvNet for the 2020s精度

为2020年代设计的卷积神经网络

原文地址

摘要

视觉识别的“热闹的20年代”始于Vision Transformers(ViTs)的引入,它很快就超过了ConvNets成为了最先进的图像分类模型。然而,一个基础的Vanilla ViT应用于一般的计算机视觉任务,如目标检测和语义分割,会面临困难。然而,层级Transformers(例如Swin Transformers)重新引入了几个ConvNet特征,使得Transformers在实践中成为了一种通用的视觉骨干,展现了在各种视觉任务上卓越的性能。然而,这种混合方法的有效性仍然主要归功于Transformers内在的优越性,而不是卷积的内在归纳偏差。
在这项工作中,我们重新审视设计空间,并测试纯ConvNet可以实现什么样的极限。我们逐步将标准的ResNet “现代化” 到一种视觉Transformer的设计,并在其中的过程中发现了一些关键组件,这些组件对性能差异有所贡献。这个探索的结果是一个名为ConvNeXt的纯ConvNet模型家族。这些模型完全由标准的ConvNet模块构成,在准确性和可扩展性方面与Transformers相竞争。在ImageNet top-1精度方面达到了87.8%,并在COCO检测和ADE20K分割方面优于Swin Transformers,同时保持了标准ConvNets的简单性和效率。
换句话说,这篇论文探索了纯卷积模型的设计空间,发现了一些关键组件,构建出了名为ConvNeXt的模型家族。这些纯卷积模型不仅在准确性和可扩展性方面与Transformers相竞争,而且在一些任务上表现得比Transformers更好。同时,这些模型保留了标准ConvNets的简单性和效率。

1.引言

回顾2010年代,这个十年以深度学习的巨大进展和影响为特征。其中的主要推动力是神经网络的复兴,尤其是卷积神经网络(ConvNets)。在整个十年中,视觉识别领域成功地从工程特征转向了设计(ConvNet)架构。虽然反向传播训练的ConvNets的发明可以追溯到1980年代[42],但直到2012年晚期,我们才看到它在视觉特征学习方面的真正潜力。AlexNet的引入引发了"ImageNet时刻"[59],开启了计算机视觉的新时代。该领域随后迅速发展。代表性的ConvNets,如VGGNet[64],Inceptions[68],ResNe(X)t [28, 87],DenseNet[36],MobileNet [34],EfficientNet[71]和RegNet [54],关注着准确性、效率和可扩展性等不同方面,推广了许多有用的设计原则。
在这里插入图片描述
图1展示了ConvNets和视觉Transformer在ImageNet-1K数据集上的分类结果。每个气泡的大小与模型家族中某个变体的浮点运算数(FLOPs)成比例。此处的ImageNet-1K/22K模型分别使用了224平方和384平方的图像。ResNet和ViT的结果是在原文的基础上使用改进的训练程序获得的。我们证明,一个标准的ConvNet模型在设计更加简单的情况下可以实现与分层视觉Transformer相同的可扩展性。

ConvNets在计算机视觉中的全面主导地位并非巧合:在许多应用场景中,"滑动窗口"策略在视觉处理中是内在的,尤其在处理高分辨率图像时更为明显。ConvNets具有多种内置的归纳偏好,使它们非常适用于各种计算机视觉应用。其中最重要的偏好是平移等变性,这对目标检测等任务非常重要。此外,ConvNets具有高效性,因为当以滑动窗口方式使用时,计算是共享的[62]。在过去几十年中,这已经成为ConvNets的默认用法,通常用于有限的对象类别,如数字[43]、人脸[58, 76]和行人[19, 63]。进入2010年代,基于区域的检测器[23, 24, 27, 57]进一步将ConvNets提升为视觉识别系统中的基本构建模块的地位。

在大约同一时间,用于自然语言处理(NLP)的神经网络设计的奥德赛走上了一条截然不同的道路,转换器(Transformers)取代了循环神经网络,成为主导的骨干架构。尽管语言和视觉领域的任务存在差异,但这两个领域在2020年出人意料地融合在一起,因为视觉Transformer(ViT)的引入彻底改变了网络结构设计的格局。除了最初的“patchify”层将图像分割成一系列的块之外,ViT没有引入任何与图像特定的归纳偏好,并且对原始的NLP Transformers进行了最小的修改。ViT的一个主要关注点是扩展行为:通过更大的模型和数据集大小的帮助,Transformer可以比标准的ResNet取得显著更好的性能。这些在图像分类任务上的结果令人鼓舞,但计算机视觉不仅局限于图像分类。正如之前讨论的那样,过去十年中解决许多计算机视觉任务的方法在很大程度上依赖于滑动窗口、完全卷积的范式。没有ConvNet的归纳偏好,普通的ViT模型在成为通用的视觉骨干上面临着许多挑战。最大的挑战是ViT的全局注意力设计,其复杂度与输入大小成二次关系。这对于ImageNet分类问题可能是可以接受的,但对于更高分辨率的输入很快就变得难以处理。

分层Transformer采用了混合方法来填补这一差距。例如,"滑动窗口"策略(如在局部窗口内的注意力)被重新引入到Transformer中,使它们的行为更类似于卷积神经网络(ConvNets)。Swin Transformer是在这个方向上的一个里程碑式的工作,首次证明了Transformer可以作为通用的视觉骨干,并在图像分类之外的一系列计算机视觉任务上实现最先进的性能。Swin Transformer的成功和迅速采用还揭示了一件事:卷积的本质并没有变得无关紧要;相反,它仍然非常受欢迎,并且从未消失。
从这个角度出发,Transformer的许多计算机视觉方面的进展旨在重新引入卷积操作。然而,这些尝试是有代价的:一个朴素的滑动窗口自注意力的实现可能很昂贵[55];通过高级方法例如循环移位[45],可以优化速度,但系统变得更加复杂。另一方面,十分讽刺的是,卷积神经网络已经以一种简单直接的方式满足了许多这些期望属性。唯一的原因是,在许多视觉任务中(分层)Transformer超越了ConvNets,并且性能差异通常归因于Transformer的卓越扩展行为,而多头自注意机制是其中的关键组成部分。
与过去10年逐步改进的ConvNets不同,视觉Transformer的采用是一个重大变革。在最近的文献中,当比较这两个时通常采用系统级比较(例如,Swin Transformer与ResNet之间的比较)。卷积网络和分层视觉Transformer同时具有相似的归纳偏差,但它们在训练过程和宏观/微观层面的架构设计方面有很大不同。在这项工作中,我们研究了卷积网络和Transformer之间的架构差异,并尝试识别比较网络性能时的混淆变量。我们的研究旨在弥合ConvNets的ViT前后差距,以及测试纯卷积网络可以实现什么样的极限。

为了做到这一点,我们从一个标准的ResNet(例如ResNet-50)开始,使用改进的方法进行训练。我们逐渐将这个架构“现代化”到一个分层视觉Transformer(例如Swin-T)的构建。我们的研究由一个关键问题驱动:Transformer的设计决策如何影响ConvNets的性能?在这个过程中,我们发现了几个关键组件,它们对性能差异有贡献。因此,我们提出了一个名为ConvNeXt的纯卷积网络系列。我们评估ConvNeXts在各种视觉任务上的性能,如ImageNet分类[17]、COCO上的目标检测/分割[44]和ADE20K上的语义分割[92]。令人惊讶的是,完全由标准ConvNet模块构建的ConvNeXts在所有主要基准测试中的准确性、可扩展性和鲁棒性方面都与Transformer有竞争力。ConvNeXt保持了标准ConvNets的效率,并且在训练和测试中都具有完全卷积的性质,使其非常简单易用。
我们希望这些新的观察和讨论可以挑战一些普遍的信念,并鼓励人们重新思考卷积在计算机视觉中的重要性。

2.卷积网络现代化:一条路线图

在本节中,我们提供了一条从ResNet到类似于Transformers的ConvNet的轨迹。我们考虑了两种模型规模的FLOPs,一种是ResNet-50 / Swin-T制度,其FLOPs约为4.5×109,另一种是ResNet-200 / Swin-B制度,其FLOPs约为15.0×109。为了简单起见,我们将以ResNet-50 / Swin-T复杂模型为例呈现结果。对于更高容量的模型,结论是一致的,并且可以在附录C中找到结果。
在高层次上,我们的探索旨在调查和跟踪来自Swin Transformer的不同设计层次,同时保持网络作为标准ConvNet的简洁性。我们的探索路线如下所述。我们的起点是一个ResNet-50模型。我们首先使用类似于用于训练视觉Transformers的训练技术对其进行训练,并且相比原始的ResNet-50获得了大幅改进的结果。这将成为我们的基准线。然后,我们研究了一系列设计决策,我们将其总结为1)宏观设计,2) ResNeXt,3)倒置瓶颈,4)大内核尺寸,5)各种逐层微观设计。在图2中,我们展示了“网络现代化”的每个步骤中我们能够实现的过程和结果。由于网络复杂度与最终性能密切相关,因此在探索过程中,FLOPs大致上是受控的,尽管在中间步骤中,FLOPs可能高于或低于参考模型。所有模型都在ImageNet-1K上进行了训练和评估。
在这里插入图片描述

2.1.训练技术

除了网络架构设计之外,训练过程也会影响最终的性能。Vision Transformer 不仅带来了一组新的模块和架构设计决策,还引入了不同的训练技术(例如 AdamW 优化器)到视觉领域。这主要涉及到优化策略和相关的超参数设置。因此,我们探索的第一步是使用 Vision Transformer 的训练过程训练一个基准模型,即 ResNet-50/200。最近的研究表明,一套现代训练技术可以显著提高简单的 ResNet-50 模型的性能。在我们的研究中,我们使用一个接近 DeiT [73] 和 Swin Transformer [45] 的训练方法。训练周期从 ResNets 的原始 90 个周期延长到 300 个周期。我们使用 AdamW 优化器 [46],数据增强技术,如 Mixup [90],Cutmix [89],RandAugment [14],Random Erasing [91],以及包括随机深度 [36] 和标签平滑 [69] 在内的正则化方案。我们使用的完整的超参数集合可以在附录 A.1 中找到。仅仅通过这种增强的训练方法,ResNet-50 模型的性能从 76.1% [1] 提高到了 78.8% (+2.7%),这意味着传统的 ConvNets 和 Vision Transformers 之间的性能差异的一个显著部分可能来自于训练技术。在整个“现代化”过程中,我们将使用相同的超参数固定训练方法。对于 ResNet-50 的每个报告的准确率,都是从使用三个不同的随机种子进行训练中得到的平均值。

2.2.软件系统设计

我们现在分析 Swin Transformer 的宏网络设计。Swin Transformer 采用了 ConvNets 的多阶段设计,每个阶段具有不同的特征图分辨率。有两个有趣的设计考虑因素:阶段计算比率和“干细胞”结构。
改变阶段计算比率。在ResNet中,原始的阶段计算分配设计主要是经验性的。重型的“res4”阶段旨在与对象检测等下游任务兼容,其中检测器头部操作在14×14的特征平面上。Swin-T则遵循相同的原则,但阶段计算比率略有不同,为1:1:3:1。对于更大的Swin Transformer,这个比率是1:1:9:1。根据设计,我们将每个阶段中的块数从ResNet-50的(3, 4, 6, 3)调整为(3, 3, 9, 3),这也与Swin-T的FLOPs相吻合。这将将模型的准确性从78.8%提高到79.4%。值得注意的是,研究人员已经深入研究了计算的分配方式 [53,54],可能存在更优化的设计。
从现在开始,我们将使用这个阶段计算比率。
尝试将“stem”翻译成“干细胞”,但实际上这里的“stem”并非生物学上的干细胞,而是网络结构(ResNet等)中指代输入层处理方式的组件。因此,应该将“stem”翻译为“输入层”或“网络开始部分”更为准确。
“将干细胞改为‘Patchify’”的意思是,通常而言,在网络开始时,输入的图像会被如何处理是一个比较关键的设计。由于自然图像本身的冗余性,标准的ConvNets和视觉 Transformer 都会使用常见的“干细胞”(stem cell)将输入的图像大幅下采样,使其达到一个适当的特征图尺寸。在标准的 ResNet 中,干细胞包含一个步长为 2 的 7×7 卷积层,后面是一个最大池化层,导致输入图像被下采样为原来的四分之一。在视觉 Transformer 中,采用了更激进的“Patchify”策略作为干细胞,对应着一个较大的卷积核尺寸(例如,核尺寸为 14 或 16)和非重叠卷积。Swin Transformer 中也使用了类似的“Patchify”层,但使用较小的 4×4 补丁尺寸以适应架构的多阶段设计。本文中作者使用一个 4×4、步长为 4 的卷积层实现了 patchify 层,代替了 ResNet 风格的干细胞。准确性从 79.4% 提升至 79.5%。这表明,一个 ResNet 中的干细胞可以被一个更简单的“Patchify”层所代替,就像在 ViT 中一样,这将得到相似的性能。
我们将在网络中使用“patchify stem”(4×4的非重叠卷积)。

2.3.ResNeXt-ify

在这部分中,我们尝试采用 ResNeXt(87)的思想,它在 FLOPs/准确性权衡方面比纯粹的 ResNet 更好。核心组件是分组卷积,其中卷积滤波器被分成不同的组。从更高的层面上来看,ResNeXt 的指导原则是“使用更多的组,扩展宽度”。更准确地说,ResNeXt 在瓶颈块中的 3×3 卷积层中采用了分组卷积。由于这显著减少了 FLOPs,网络的宽度被扩展以弥补容量损失。
在我们的案例中,我们使用了深度卷积(depthwise convolution),它是分组卷积的一个特殊情况,其中分组数等于通道数。深度卷积被MobileNet(34)和Xception(11)广泛使用。我们注意到,深度卷积类似于自注意力中的加权和操作,它在每个通道上进行操作,即仅在空间维度上混合信息。深度卷积和1×1卷积的组合导致了空间和通道混合的分离,这是视觉Transformer共享的特性,其中每个操作要么在空间维度上混合信息,要么在通道维度上混合信息,但不会同时进行。深度卷积的使用有效地减少了网络的FLOPs,同时也降低了准确性,这是预期的结果。按照ResNeXt提出的策略,我们将网络宽度增加到与Swin-T的通道数相同(从64增加到96)。这使网络性能提高到80.5%,同时增加了FLOPs(5.3G)。
我们现在将采用 ResNeXt 设计。

2.4. Inverted Bottleneck

每个 Transformer 块中一个重要的设计是创建一个倒置瓶颈,即 MLP 块的隐藏维度比输入维度宽四倍(参见图4)。有趣的是,这个 Transformer 设计与 ConvNets 中使用的扩张比为4的倒置瓶颈设计有联系。这个想法由MobileNetV2 [61]引起了广泛关注,并在一些先进的ConvNet架构中得到了推广[70, 71]。
在这里,我们探索倒置瓶颈设计。图3(a)到(b)显示了配置。尽管对于深度卷积层的FLOPs有所增加,但由于下采样残差块的快捷1×1卷积层FLOPs的显著降低,这种改变将整个网络的FLOPs降低到4.6G。有趣的是,这导致了略微的性能提高(从80.5%到80.6%)。在ResNet-200/Swin-B模式下,此步骤带来更多的收益(从81.9% 提高到82.6%),同时也减少了FLOPs。
我们现在将使用倒置瓶颈设计。
在这里插入图片描述
图3展示了块的修改和相应的规格。 (a)是一个ResNeXt块;在(b)中,我们创建了一个倒置瓶颈块;在(c)中,空间深度卷积层的位置向上移动了。

2.5. Large Kernel Sizes

在这个部分的探索中,我们聚焦于大卷积核的行为。视觉Transformer最显着的特点之一是它们的非局部自注意力,这使得每个层具有全局接受域。虽然之前在ConvNets中使用过大的卷积核 [40, 68],但金标准(由VGGNet [65]广泛推广)是堆叠小型卷积核(3×3),这些卷积层在现代GPU上具有高效的硬件实现[41]。尽管Swin Transformer重新引入了自我注意块的局部窗口,但窗口尺寸至少为7×7,大大大于ResNe(X)t核大小3×3 。在这里,我们重新审视了在ConvNets中使用大型卷积核的应用。

将深度卷积层的位置向上移动。要探索大型卷积核,一个前提是将深度卷积层的位置向上移动(从图3(b)到图3(c))。这也是在Transformer中明显的设计决策:在MLP层之前放置MSA块。由于我们有一个倒置瓶颈块,这是一个自然的设计选择——复杂/低效的模块(MSA、大卷积核)将具有较少的通道,而高效的密集1×1层将承担较重的工作负荷。这个中间步骤将FLOPs减少到了4.1G,结果是临时性能下降到了79.9%。
增加卷积核大小。通过所有这些准备,采用更大卷积核的好处是显著的。我们尝试了几种卷积核大小,包括3、5、7、9和11。网络的性能从79.9%(3×3)提高到了80.6%(7×7),网络的FLOPs大致保持不变。此外,我们观察到更大的卷积核大小的好处在7×7达到饱和点。我们还在大容量模型中验证了这种行为:当我们将卷积核大小增加到7×7之上时,ResNet-200模型不会表现出进一步的增益。
我们将在每个块中使用7×7深度卷积。
在这个点上,我们已经完成了对网络架构的宏观层面的研究。有趣的是,视觉Transformer中采取的很大一部分设计选择可以映射到ConvNet实例化中。

2.6. Micro Design

在这一部分,我们将在微观层面上研究几个其他的架构差异——大部分探索都是在层级上进行的,重点关注激活函数和归一化层的具体选择。
将ReLU替换为GELU NLP和视觉架构之间的一个区别是哪些激活函数应该使用的具体细节。随着时间的推移,已经开发出了许多激活函数,但由于其简单性和高效性,修正线性单元(ReLU)[49]仍然广泛用于ConvNets中。ReLU也作为激活函数在原始Transformer论文[77]中使用。高斯误差线性单元,或GELU [32],可以看作是ReLU的平滑变体,在 Google的BERT [18]、OpenAI的GPT-2 [52]以及最近的ViTs等最先进的Transformer中使用。我们发现,在我们的ConvNet中可以用GELU代替ReLU,尽管准确性不变(80.6%)。
减少激活函数。 Transformer块和ResNet块之间的一个小区别是Transformer具有较少的激活函数。考虑具有键/查询/值线性嵌入层、投影层和MLP块中的两个线性层的Transformer块。在MLP块中,只有一个激活函数存在。相比之下,将激活函数附加到每个卷积层(包括1×1 convs)是一种常见做法。在这里,我们将研究在坚持相同策略时性能如何改变。如图4所示,我们从残差块中消除了除两个1×1层之间的一层GELU层以外的所有GELU层,复制了Transformer块的样式。这个过程将结果提高了0.7%到81.3%,几乎与Swin-T的性能相匹配。
我们现在将在每个块中使用单个GELU激活函数。
更少的归一化层。Transformer块通常也具有较少的归一化层。在这里,我们移除了两个批标准化(BN)层,只保留了1×1层之前的一个BN层。这进一步提高了性能至81.4%,已经超过了Swin-T的结果。我们甚至比Transformers每个块都要少归一化层,因为实验上发现在块的开头添加一个额外的BN层并不能提高性能。
在这里插入图片描述
用LN替代BN。BatchNorm [38]是ConvNets中的一个重要组成部分,它改善了收敛性并减少了过拟合。然而,BN也有很多细节问题,可能对模型的性能产生不利影响[84]。曾经有很多尝试开发替代归一化技术[60, 75, 83],但在大多数视觉任务中,BN仍然是首选选项。另一方面,较简单的层归一化[5](LN)在Transformers中得到了使用,从而在不同的应用场景中取得了良好的性能。
直接将LN替换掉原始ResNet中的BN将导致性能不佳[83]。在网络架构和训练技巧方面进行了所有修改之后,我们重新考虑在BN的位置使用LN所产生的影响。我们观察到,我们的ConvNet模型在使用LN训练时没有任何困难;事实上,性能略微更好,获得了81.5%的准确率。

从现在开始,我们将在每个残差块中使用一层归一化作为我们的归一化选择。

在ResNet中,每个阶段的开始都通过残差块实现空间下采样,使用带步长2的3×3卷积(以及在快捷连接处带步长2的1×1卷积)。在Swin Transformers中,一个独立的下采样层被添加在每个阶段之间。我们探索了一种类似的策略,即使用带步长2的2×2卷积层进行空间下采样。这种修改令训练结果出现了分歧。进一步的研究表明,在空间分辨率改变的任何地方添加规范化层可以帮助稳定训练。这些层包括Swin Transformers中也使用的几个LN层:一个在每个下采样层之前,一个在stem之后,以及一个在最终的全局平均池化之后。我们可以将准确度提高到82.0%,明显超过Swin-T的81.3%。

我们将使用单独的下采样层。这带领我们来到了我们的最终模型,我们将其称为ConvNeXt。

您可以在图4中找到ResNet、Swin和ConvNeXt块结构的比较。您可以在表9中找到ResNet-50、Swin-T和ConvNeXt-T的详细架构规格进行比较。

总结一下。我们已经完成了我们的第一次“游戏过程”,并发现了ConvNeXt,这是一个纯粹的ConvNet,在这种计算模式下可以超越Swin Transformer在ImageNet-1K分类任务上的表现。值得注意的是,到目前为止,我们所讨论的所有设计选择都是从视觉Transformers中进行了调整。此外,这些设计即使在ConvNet文献中也不是新颖的——在过去的十年中,它们都分别进行了研究,但没有集体研究。我们的ConvNeXt模型具有与Swin Transformer基本相同的FLOPs、#params.、吞吐量和内存使用量,但不需要像偏移窗口注意力或相对位置偏置这样的专门模块。

这些发现非常令人鼓舞,但尚未完全令人信服——我们迄今为止的探索仅限于小规模,而视觉Transformers的扩展行为才是真正使它们与众不同的地方。此外,一个重要问题是ConvNet是否能够在目标检测和语义分割等下游任务上与Swin Transformers竞争。在接下来的部分中,我们将从数据和模型大小两个方面扩展我们的ConvNeXt模型,并在多样化的视觉识别任务集上对其进行评估。

3. Empirical Evaluations on ImageNet

我们构建了不同的ConvNeXt变体,ConvNeXt-T/S/B/L,以与Swin-T/S/B/L [45]具有类似的复杂度。ConvNeXt-T/B分别是对ResNet-50/200模型进行“现代化”处理的结果。此外,我们构建了一个更大的ConvNeXt-XL模型来进一步测试ConvNeXt的可扩展性。这些变体只在通道数C和每个阶段的块数B方面有所不同。按照ResNets和Swin Transformers的做法,每个新阶段的通道数翻倍。我们以下面的配置进行总结:
• ConvNeXt-T: C = (96, 192, 384, 768), B = (3, 3, 9, 3)
• ConvNeXt-S: C = (96, 192, 384, 768), B = (3, 3, 27, 3)
• ConvNeXt-B: C = (128, 256, 512, 1024), B = (3, 3, 27, 3)
• ConvNeXt-L: C = (192, 384, 768, 1536), B = (3, 3, 27, 3)
• ConvNeXt-XL: C = (256, 512, 1024, 2048), B = (3, 3, 27, 3)

3.1. Settings

ImageNet-1K数据集包含1000个对象类别,其中包括120万张训练图像。我们报告在验证集上的ImageNet-1K top-1准确率。我们还在ImageNet-22K上进行预训练,这是一个更大的数据集,包含21841个类别(包含了1000个ImageNet-1K类别的超集),使用约1400万张图像进行预训练,然后在ImageNet-1K上对预训练模型进行微调以进行评估。我们以下面的训练设置进行总结。更多详细信息可以在附录A中找到。
在ImageNet-1K上进行训练。我们使用AdamW [46]以学习率4e-3训练ConvNeXt模型300个epoch。前20个epoch进行线性预热,然后采用余弦衰减的学习率调度。我们使用批量大小为4096和权重衰减0.05。对于数据增强,我们采用常见的方案,包括Mixup [90]、Cutmix [89]、RandAugment [14]和Random Erasing [91]。我们使用Stochastic Depth [37]和Label Smoothing [69]对网络进行正则化。初始值为1e-6的Layer Scale [74]被应用。我们使用指数移动平均(Exponential Moving Average,EMA)[51],因为我们发现它可以减轻较大模型的过拟合问题。
在ImageNet-22K上进行预训练。我们使用ImageNet-22K对ConvNeXt模型进行预训练,预训练时长为90个epoch,其中前5个epoch进行预热。我们不使用EMA。其他设置与ImageNet-1K相同。
在ImageNet-1K上进行微调。我们将ImageNet-22K预训练的模型在ImageNet-1K上进行微调,微调时长为30个epoch。我们使用AdamW优化器,学习率为5e-5,采用余弦学习率调度、逐层降低学习率[6,12],没有预热阶段,批量大小为512,权重衰减为1e-8。默认的预训练、微调和测试分辨率为224×224。此外,我们也在较大的分辨率384×384下对ImageNet-22K和ImageNet-1K预训练的模型进行微调。
与ViTs/Swin Transformers相比,ConvNeXts更容易在不同分辨率下进行微调,因为网络是完全卷积的,不需要调整输入补丁大小或插值绝对/相对位置偏差。

3.2. Results

在ImageNet-1K中,表1(上部分)显示了ConvNeXt与最近的两个Transformer变体(DeiT和Swin Transformers),以及两个来自架构搜索的ConvNet(RegNets和EfficientNets以及EfficientNetsV2)的结果比较。ConvNeXt在准确性和计算效率的权衡方面与两个强大的ConvNet基准(RegNet和EfficientNet)竞争优势明显,并且在推理吞吐量方面也表现出色。ConvNeXt在各项指标上也超越了复杂度类似的Swin Transformer,有时差距相当大(例如ConvNeXt-T的0.8%)。与Swin Transformers相比,ConvNeXts没有使用类似于移位窗口或相对位置偏差的专用模块,因此还具有更好的吞吐量。
在这里插入图片描述

表1. ImageNet-1K上的分类准确率。与Transformers相似,ConvNeXt在更高容量的模型和更大(预训练)数据集上展现出有希望的扩展性能。推理吞吐量是在V100 GPU上进行测量,遵循[45]的方法。在A100 GPU上,ConvNeXt的吞吐量比Swin Transformer要高得多。有关(T)ViT使用90个epoch的AugReg[67]进行训练的结果,请参见附录E,通过与作者的个人沟通而提供的数据。 请注意,这是一个参考翻译,具体数值数据和详细内容请参见原文和附录E。
结果中的一个亮点是384x384的ConvNeXt-B:它优于Swin-B 0.6%(85.1% vs. 84.5%),但其推理吞吐量高出12.5%(95.7 vs. 85.1 image/s)。我们注意到,当将分辨率从224x224增加到384x384时,ConvNeXt-B相对于Swin-B的FLOPs /吞吐量优势变得更大。此外,当进一步扩展到ConvNeXt-L时,我们观察到了85.5%的改进结果。
ImageNet-22K。在表1(下部分)中,我们展示了来自ImageNet-22K预训练模型微调的结果。这些实验非常重要,因为一个普遍的观点是,视觉Transformer的归纳偏差较少,因此在大规模预训练时可以优于ConvNet。我们的结果表明,如果使用大型数据集进行预训练,合理设计的ConvNet并不逊于视觉Transformer - ConvNeXt仍然表现得与同等大小的Swin Transformer相当甚至更好,推理吞吐量略高。此外,我们的ConvNeXt-XL模型的准确率达到了87.8%,比3842的ConvNeXt-L有所改善,证明ConvNeXt是可扩展的体系结构。
在ImageNet-1K上,具有先进模块(如Squeeze-and-Excitation [35])和渐进训练过程的EfficientNetV2-L是一种搜索得到的架构,它取得了顶尖的性能。然而,通过ImageNet-22K预训练,ConvNeXt能够胜过EfficientNetV2,进一步证明了大规模训练的重要性。
在附录B中,我们讨论了ConvNeXt的鲁棒性和域外泛化结果。

3.3. Isotropic ConvNeXt vs. ViT

在这个剔除实验中,我们检查了我们的ConvNeXt模块设计是否适用于没有下采样层并在所有深度保持相同特征分辨率(例如14×14)的ViT风格[20]的各向同性架构。我们使用与ViT-S/B/L(384/768/1024)相同的特征维度构建各向同性的ConvNeXt-S/B/L。深度设置为18/18/36,以匹配参数量和FLOPs的数量。模块结构保持不变(图4)。我们使用DeiT [73]的ViT-S/B的监督训练结果以及MAE [26]的ViT-L结果,因为它们采用了改进的训练过程,优于原始的ViTs [20]。ConvNeXt模型使用与之前相同的设置进行训练,但是增加了更长的预热轮数。ImageNet-1K在2242分辨率下的结果如表2所示。我们观察到ConvNeXt可以与ViT表现相当,表明我们的ConvNeXt模块设计在非层级模型中使用时具有竞争力。
在这里插入图片描述

表格2.比较各向同性的ConvNeXt和ViT。训练内存是在具有32个每GPU批次大小的V100 GPU上测量的。
在这里插入图片描述
表格3.使用Mask-RCNN和级联Mask-RCNN进行的COCO目标检测和分割结果。 ‡表示该模型在ImageNet-22K上进行了预训练。ImageNet-1K预训练的Swin结果来自他们的GitHub存储库[3]。ResNet-50和X101模型的AP数值来自[45]。我们在A100 GPU上测量FPS。FLOPs是根据图像大小(1280,800)计算的。

4. Empirical Evaluation on Downstream Tasks

我们在COCO数据集上使用ConvNeXt骨干网络对Mask R-CNN [27]和级联Mask R-CNN [9]进行微调,进行目标检测和实例分割。与Swin Transformer [45]一样,我们使用多尺度训练、AdamW优化器和3x进度表。更多详细信息和超参数设置可参见附录A.3。

表格3显示了比较Swin Transformer、ConvNeXt和传统ConvNet(如ResNeXt)的目标检测和实例分割结果。在不同模型复杂度下,ConvNeXt实现了与Swin Transformer相当或更好的性能。当扩展到在ImageNet-22K上预训练的更大模型(ConvNeXt-B/L/XL)时,在许多情况下,ConvNeXt在框和掩模AP方面比Swin Transformer显着提高(例如+1.0 AP)。

我们还使用UperNet [85]评估ConvNeXt骨干网络在ADE20K语义分割任务上的性能。所有模型变体都以批次大小为16进行了160K次迭代训练。其他实验设置遵循[6](有关更多详细信息,请参见附录A.3)。

在表格4中,我们使用多尺度测试报告了验证集的平均IoU(mIoU)。ConvNeXt模型可以在不同的模型容量下实现竞争性的性能,进一步验证了我们的架构设计的有效性。

关于模型效率的说明。在相似的FLOPs下,使用深度卷积的模型比只使用密集卷积的ConvNet速度更慢、内存消耗更大。因此自然会问ConvNeXt的设计是否使其在实践中效率低下。正如本文所示,ConvNeXt的推理吞吐量与甚至超过Swin Transformers,这在分类和需要更高分辨率输入的其他任务(参见表格1、3中的吞吐量/FPS比较)中都是如此。此外,我们注意到训练ConvNeXt所需的内存比训练Swin Transformers要少。例如,使用ConvNeXt-B骨干网络训练级联Mask-RCNN,每个GPU批次大小为2,峰值内存消耗为17.4GB,而Swin-B的参考数字为18.5GB。与普通ViT相比,由于局部计算,ConvNeXt和Swin Transformer都体现出更有利的精度和FLOPs的权衡。值得注意的是,这种改进的效率是ConvNet归纳偏差的结果,与Vision Transformer中的自注意机制无直接关系。
在这里插入图片描述
表格4. 使用UperNet [85]评估ADE20K验证结果。 ‡ 表示使用IN-22K预训练。Swin的结果来自其GitHub存储库[2]。按照Swin的方式,我们使用多尺度测试报告mIoU结果。FLOPs基于IN-1K和IN-22K预训练模型的输入大小分别为(2048, 512)和(2560, 640)。

5. Related Work

混合模型。在ViT之前和之后,结合卷积和自注意力的混合模型一直受到广泛研究。在ViT之前,重点是通过自注意力/非局部模块 [8,55,66,79] 增强ConvNet来捕获长距离依赖关系。最初的ViT [20] 首先研究了一种混合配置,随后的大量工作侧重于在ViT中重新引入卷积先验,无论是在显式 [15,16,21,82,86,88] 还是隐式 [45] 方式。

最近基于卷积的方法。Han等人[25]表明,局部Transformer注意力等效于非均匀动态深度卷积。在Swin中,MSA块被动态或常规的深度卷积替换,达到了与Swin相当的性能。同时进行的ConvMixer[4]的工作表明,在小规模设置中,深度卷积可以作为一种有前途的混合策略。ConvMixer使用较小的补丁尺寸来实现最佳结果,使吞吐量比其他基准线低得多。GFNet[56]采用快速傅里叶变换(FFT)进行令牌混合。FFT也是一种卷积形式,但具有全局核大小和循环填充。与许多最近的Transformer或ConvNet设计不同,我们研究的一个主要目标是深入研究现代化标准ResNet的过程,并实现最先进的性能。

6. Conclusions

在2020年代,特别是像Swin Transformer这样的分层视觉Transformer开始取代ConvNets成为通用视觉骨干的首选。普遍认为,视觉Transformer比ConvNets更精确、高效和可扩展。我们提出了ConvNeXts,这是一个纯ConvNet模型,可以在多个计算机视觉基准测试中与最先进的分层视觉Transformer竞争,同时保留标准ConvNets的简单性和效率。在某些方面,我们的观察结果令人惊讶,而我们的ConvNeXt模型本身并不是完全新的——在过去十年中,许多设计选择都已经被单独研究过,但还没有被集体研究过。我们希望,本研究中报道的新结果将挑战一些普遍持有的观点,并促使人们重新思考卷积在计算机视觉中的重要性。
致谢。我们感谢Kaiming He、Eric Mintun、Xingyi Zhou、Ross Girshick和Yann LeCun的宝贵讨论和反馈。

Appendix

在本附录中,我们提供更多的实验细节(§A),健壮性评估结果(§B),更多的现代化实验结果(§C),以及详细的网络规范(§D)。我们还在A100 GPU上对模型吞吐量进行了基准测试(§E)。最后,我们讨论了我们工作的局限性(§F)和社会影响(§G)。

A. Experimental Settings

A.1. ImageNet (Pre-)training

我们在表5中提供了ConvNeXts在ImageNet-1K训练和ImageNet-22K预训练中的设置。这些设置用于我们在表1(第3.2节)中的主要结果。所有的ConvNeXt变种使用相同的设置,只有随机深度率被定制为模型变种。
在“现代化ConvNet”(第2节)的实验中,我们同样使用了表5中ImageNet-1K的设置,但禁用了EMA(指指数移动平均),因为我们发现在具有BatchNorm层的模型中使用EMA会严重损害性能。
对于各向同性ConvNeXts(第3.3节),我们同样采用了表A中ImageNet-1K的设置,但是将热身期延长到50个epoch,并且对于各向同性的ConvNeXt-S/B禁用了层比例。各向同性ConvNeXt-S/B/L的随机深度率分别为0.1/0.2/0.5。
在这里插入图片描述
表5. ImageNet-1K/22K (预)训练设置。多个随机深度率(例如0.1/0.4/0.5/0.5)分别用于每个模型(例如ConvNeXt-T/S/B/L)。

A.2. ImageNet Fine-tuning

在表6中,我们列出了在ImageNet-1K上进行微调的设置。微调是从预训练中获得的最终模型权重开始的,不使用EMA权重,即使在预训练中使用了EMA并报告了EMA准确性。这是因为我们观察到如果使用EMA权重进行微调,性能不会有所改善(与[73]中的观察结果一致)。唯一的例外是在ImageNet-1K上预训练的ConvNeXt-L模型,由于过拟合,其模型准确性明显低于EMA准确性,因此我们选择其在预训练过程中的最佳EMA模型作为微调的起点。
在微调过程中,我们使用分层学习率衰减[6, 12],每3个连续的block形成一组。当在384x384分辨率上对模型进行微调时,在测试过程中我们采用了一个裁剪比例为1.0(即不进行裁剪),而不是在224x224分辨率上采用的0.875的裁剪比例,这符合[2, 74, 80]的做法。
在这里插入图片描述
表6. ImageNet-1K微调设置。多个值(例如0.8/0.95)分别用于每个模型(例如ConvNeXt-B/L)。

A.3. Downstream Tasks

对于ADE20K和COCO实验,我们遵循BEiT [6]和Swin [45]中使用的训练设置。我们还使用MMDetection [10]和MMSegmentation [13]工具箱。我们使用ImageNet预训练的最终模型权重(而不是EMA权重)作为网络初始化。
我们在COCO实验中进行了轻量级的扫描,包括学习率{1e-4, 2e-4},分层学习率衰减[6] {0.7, 0.8, 0.9, 0.95},以及随机深度率{0.3, 0.4, 0.5, 0.6, 0.7, 0.8}。我们使用相同的扫描方法,在COCO上微调ImageNet-22K预训练的Swin-B/L。我们使用官方的代码和预训练模型权重[3]。
我们对ADE20K实验进行扫描的超参数包括学习率{8e-5,1e-4},逐层学习率衰减{0.8,0.9}以及随机深度率{0.3,0.4,0.5}。我们使用多尺度测试报告验证集mIoU结果。额外的单尺度测试结果在表7中。
在这里插入图片描述
表7. 使用单尺度测试的ADE20K验证结果

B. Robustness Evaluation

附加的关于ConvNeXt模型的鲁棒性评估结果在表8中进行了展示。我们直接在几个鲁棒性基准数据集上对我们在ImageNet-1K上训练/微调的分类模型进行测试,如ImageNet-A [33],ImageNet-R [30],ImageNet-Sketch [78]和ImageNet-C/C¯ [31, 48]数据集。我们报告了ImageNet-C的平均损坏误差(mCE),ImageNet-C¯的损坏误差,以及其他所有数据集的top-1准确率。
ConvNeXt(特别是大规模模型变体)表现出有前途的鲁棒性行为,在几个基准测试中表现优于最先进的鲁棒Transformer模型[47]。通过额外的ImageNet-22K数据,ConvNeXt-XL展示了强大的领域泛化能力(例如,在ImageNet-A/R/Sketch基准测试中分别实现了69.3%/ 68.2%/ 55.0%的准确性)。我们注意到这些鲁棒性评估结果是在不使用任何专业模块或额外微调程序的情况下获得的。
在这里插入图片描述
表8. ConvNeXt的鲁棒性评估。我们没有使用任何专门的模块或额外的微调程序。

C. Modernizing ResNets: detailed results

在这里,我们为现代化实验提供了详细的表格结果,包括ResNet-50 / Swin-T和ResNet-200 / Swin-B两种情况。表格10和11展示了每个步骤的ImageNet-1K top-1准确率和FLOPs。ResNet-50实验采用了3个随机种子运行。
对于ResNet-200,每个阶段的初始块数为(3, 24, 36, 3)。在改变阶段比例的步骤中,我们将其更改为Swin-B的(3, 3, 27, 3)。这极大地减少了FLOPs,因此同时,我们还将宽度从64增加到84,以保持FLOPs在相似水平上。在采用了深度可分离卷积的步骤之后,我们进一步将宽度增加到128(与Swin-B相同),作为一个独立的步骤。
在ResNet-200方案上的观察结果与主论文中描述的ResNet-50方案大部分一致。一个有趣的区别是,在ResNet-200方案上,尺寸反转带来的改进比在ResNet-50方案上更大(+0.79%与+0.14%)。增加卷积核大小所获得的性能提升似乎也在核大小为5时达到饱和,而不是7。相比ResNet-50方案,使用较少的归一化层也获得了更大的性能提升(+0.46%与+0.14%)。
在这里插入图片描述
表格9. ResNet-50、ConvNeXt-T和Swin-T的详细架构规格如下
在这里插入图片描述

表格10. 现代化ResNet-50的详细结果如下。平均值和标准差通过使用三个不同的随机种子训练网络获得
在这里插入图片描述
Table 11. 为现代化ResNet-200的详细结果

D. Detailed Architectures

我们在表格9中对ResNet-50、ConvNeXt-T和Swin-T进行了详细的架构比较。对于不同大小的ConvNeXts,仅每个阶段的块数和通道数与ConvNeXt-T不同。(详情请参阅第3节)。ConvNeXts享有标准ConvNets的简洁性,并在视觉识别方面与Swin Transformers有良好的竞争力。

E. Benchmarking on A100 GPUs

在Swin Transformer [45]之后,表1中的ImageNet模型的推断吞吐量是使用V100 GPU进行基准测试的,其中ConvNeXt在推断速度上略快于具有类似参数数量的Swin Transformer。现在我们将它们在更先进的A100 GPU上进行基准测试,A100 GPU支持TensorFloat32(TF32)张量核心。我们使用PyTorch [50]版本1.10,并使用最新的“Channel Last”内存布局[22]来进一步提高速度。
我们在表12中呈现了结果。Swin Transformers和ConvNeXts的推断吞吐量都比V100 GPU更快,但现在ConvNeXts的优势更大,有时快了多达49%。这项初步研究显示了ConvNeXt的潜力,它采用了标准ConvNet模块,设计简单,在现代硬件上可能是更高效的模型。
在这里插入图片描述
表格12:在A100 GPU上进行的推断吞吐量比较。使用TF32数据格式和“channel last”内存布局,与具有相似FLOPs的Swin Transformer相比,ConvNeXt的吞吐量高出约49%。

F. Limitations

我们展示了ConvNeXt,一个纯粹的ConvNet模型,在图像分类、目标检测、实例和语义分割等任务中能够与分层视觉Transformer一样出色地表现。虽然我们的目标是提供广泛的评估任务,但我们也认识到计算机视觉应用的多样性更加广泛。ConvNeXt可能更适合于某些任务,而Transformer在其他任务中可能更加灵活。一个例子就是多模态学习,其中跨多个模态建模特征交互可能更适合使用交叉注意力模块。此外,当用于需要离散、稀疏或结构化输出的任务时,Transformer可能更加灵活。我们相信架构选择应该满足当前任务的需求,同时追求简单性。

G. Societal Impact

在2020年代,对视觉表示学习的研究开始对计算资源提出巨大需求。虽然更大的模型和数据集能够在各个方面改善性能,但也带来了一系列挑战。ViT、Swin和ConvNeXt在它们的大型模型变体下表现最佳。对这些模型设计的研究不可避免地导致碳排放的增加。一个重要的方向,也是我们论文的动机之一,是追求简单性-随着更复杂的模块,网络的设计空间极大扩展,这会导致关键组件对性能差异的贡献变得不清晰。此外,大型模型和数据集在模型的稳健性和公平性方面存在问题。进一步探究ConvNeXt相对于Transformer的稳健性行为将是一个有趣的研究方向。就数据而言,我们的研究结果表明ConvNeXt模型在大规模数据集上进行预训练有益处。虽然我们的方法利用了公开可用的ImageNet-22K数据集,个人可能希望获取自己的数据进行预训练。为了避免潜在的数据偏见问题,需要更谨慎和负责任的数据选择方法。

References

[1] PyTorch Vision Models. https://pytorch.org/
vision/stable/models.html. Accessed: 2021-10-
01.
[2] GitHub repository: Swin transformer. https://github.
com/microsoft/Swin-Transformer, 2021.
[3] GitHub repository: Swin transformer for object detection.
https://github.com/SwinTransformer/SwinTransformer-Object-Detection, 2021.
[4] Anonymous. Patches are all you need? Openreview, 2021.
[5] Jimmy Lei Ba, Jamie Ryan Kiros, and Geoffrey E Hinton.
Layer normalization. arXiv:1607.06450, 2016.
[6] Hangbo Bao, Li Dong, and Furu Wei. BEiT: BERT pretraining of image transformers. arXiv:2106.08254, 2021.
[7] Irwan Bello, William Fedus, Xianzhi Du, Ekin Dogus Cubuk,
Aravind Srinivas, Tsung-Yi Lin, Jonathon Shlens, and Barret
Zoph. Revisiting resnets: Improved training and scaling
strategies. NeurIPS, 2021.
[8] Irwan Bello, Barret Zoph, Ashish Vaswani, Jonathon Shlens,
and Quoc V Le. Attention augmented convolutional networks.
In ICCV, 2019.
[9] Zhaowei Cai and Nuno Vasconcelos. Cascade R-CNN: Delving into high quality object detection. In CVPR, 201
[10] Kai Chen, Jiaqi Wang, Jiangmiao Pang, Yuhang Cao, Yu
Xiong, Xiaoxiao Li, Shuyang Sun, Wansen Feng, Ziwei Liu,
Jiarui Xu, Zheng Zhang, Dazhi Cheng, Chenchen Zhu, Tianheng Cheng, Qijie Zhao, Buyu Li, Xin Lu, Rui Zhu, Yue
Wu, Jifeng Dai, Jingdong Wang, Jianping Shi, Wanli Ouyang,
Chen Change Loy, and Dahua Lin. MMDetection: Open
mmlab detection toolbox and benchmark. arXiv:1906.07155,
2019.
[11] François Chollet. Xception: Deep learning with depthwise
separable convolutions. In CVPR, 2017.
[12] Kevin Clark, Minh-Thang Luong, Quoc V Le, and Christopher D Manning. ELECTRA: Pre-training text encoders as
discriminators rather than generators. In ICLR, 2020.
[13] MMSegmentation contributors. MMSegmentation: Openmmlab semantic segmentation toolbox and benchmark. https:
/ / github . com / open - mmlab / mmsegmentation,
2020.
[14] Ekin D Cubuk, Barret Zoph, Jonathon Shlens, and Quoc V
Le. Randaugment: Practical automated data augmentation
with a reduced search space. In CVPR Workshops, 2020.
[15] Zihang Dai, Hanxiao Liu, Quoc V Le, and Mingxing Tan.
Coatnet: Marrying convolution and attention for all data sizes.
NeurIPS, 2021.
[16] Stéphane d’Ascoli, Hugo Touvron, Matthew Leavitt, Ari Morcos, Giulio Biroli, and Levent Sagun. ConViT: Improving
vision transformers with soft convolutional inductive biases.
ICML, 2021.
[17] Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li
Fei-Fei. ImageNet: A large-scale hierarchical image database.
In CVPR, 2009.
[18] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina
Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.
[19] Piotr Dollár, Serge Belongie, and Pietro Perona. The fastest
pedestrian detector in the west. In BMVC, 2010.
[20] Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov,
Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner,
Mostafa Dehghani, Matthias Minderer, Georg Heigold, Sylvain Gelly, Jakob Uszkoreit, and Neil Houlsby. An image is
worth 16x16 words: Transformers for image recognition at
scale. In ICLR, 2021.
[21] Haoqi Fan, Bo Xiong, Karttikeya Mangalam, Yanghao Li,
Zhicheng Yan, Jitendra Malik, and Christoph Feichtenhofer.
Multiscale vision transformers. ICCV, 2021.
[22] Vitaly Fedyunin. Tutorial: Channel last memory format
in PyTorch. https://pytorch.org/tutorials/
intermediate/memory_format_tutorial.html,
2021. Accessed: 2021-10-01.
[23] Ross Girshick. Fast R-CNN. In ICCV, 2015.
[24] Ross Girshick, Jeff Donahue, Trevor Darrell, and Jitendra
Malik. Rich feature hierarchies for accurate object detection
and semantic segmentation. In CVPR, 2014.
[25] Qi Han, Zejia Fan, Qi Dai, Lei Sun, Ming-Ming Cheng, Jiaying Liu, and Jingdong Wang. Demystifying local vision
transformer: Sparse connectivity, weight sharing, and dynamic weight. arXiv:2106.04263, 2021.
[26] Kaiming He, Xinlei Chen, Saining Xie, Yanghao Li, Piotr
Dollár, and Ross Girshick. Masked autoencoders are scalable
vision learners. arXiv:2111.06377, 2021.
[27] Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick. Mask R-CNN. In ICCV, 2017.
[28] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun.
Deep residual learning for image recognition. In CVPR, 2016.
[29] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun.
Identity mappings in deep residual networks. In ECCV, 2016.
[30] Dan Hendrycks, Steven Basart, Norman Mu, Saurav Kadavath, Frank Wang, Evan Dorundo, Rahul Desai, Tyler Zhu,
Samyak Parajuli, Mike Guo, et al. The many faces of robustness: A critical analysis of out-of-distribution generalization.
In ICCV, 2021.
[31] Dan Hendrycks and Thomas Dietterich. Benchmarking neural
network robustness to common corruptions and perturbations.
In ICLR, 2018.
[32] Dan Hendrycks and Kevin Gimpel. Gaussian error linear
units (gelus). arXiv:1606.08415, 2016.
[33] Dan Hendrycks, Kevin Zhao, Steven Basart, Jacob Steinhardt,
and Dawn Song. Natural adversarial examples. In CVPR,
2021.
[34] Andrew G Howard, Menglong Zhu, Bo Chen, Dmitry
Kalenichenko, Weijun Wang, Tobias Weyand, Marco Andreetto, and Hartwig Adam. MobileNets: Efficient convolutional neural networks for mobile vision applications.
arXiv:1704.04861, 2017.
[35] Jie Hu, Li Shen, and Gang Sun. Squeeze-and-excitation
networks. In CVPR, 2018.
[36] Gao Huang, Zhuang Liu, Laurens van der Maaten, and Kilian Q Weinberger. Densely connected convolutional networks.
In CVPR, 2017.
[37] Gao Huang, Yu Sun, Zhuang Liu, Daniel Sedra, and Kilian Q
Weinberger. Deep networks with stochastic depth. In ECCV,
2016.
[38] Sergey Ioffe. Batch renormalization: Towards reducing minibatch dependence in batch-normalized models. In NeurIPS,
2017.
[39] Alexander Kolesnikov, Lucas Beyer, Xiaohua Zhai, Joan
Puigcerver, Jessica Yung, Sylvain Gelly, and Neil Houlsby.
Big Transfer (BiT): General visual representation learning. In
ECCV, 2020.
[40] Alex Krizhevsky, Ilya Sutskever, and Geoff Hinton. Imagenet
classification with deep convolutional neural networks. In
NeurIPS, 2012.
[41] Andrew Lavin and Scott Gray. Fast algorithms for convolutional neural networks. In CVPR, 2016.
[42] Yann LeCun, Bernhard Boser, John S Denker, Donnie Henderson, Richard E Howard, Wayne Hubbard, and Lawrence D
Jackel. Backpropagation applied to handwritten zip code
recognition. Neural computation, 1989.
[43] Yann LeCun, Léon Bottou, Yoshua Bengio, Patrick Haffner,
et al. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998.
[44] Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays,
Pietro Perona, Deva Ramanan, Piotr Dollár, and C Lawrence
Zitnick. Microsoft COCO: Common objects in context. In
ECCV. 2014.
[45] Ze Liu, Yutong Lin, Yue Cao, Han Hu, Yixuan Wei, Zheng
Zhang, Stephen Lin, and Baining Guo. Swin transformer:
Hierarchical vision transformer using shifted windows. 2021.
[46] Ilya Loshchilov and Frank Hutter. Decoupled weight decay
regularization. In ICLR, 2019.
[47] Xiaofeng Mao, Gege Qi, Yuefeng Chen, Xiaodan Li, Ranjie
Duan, Shaokai Ye, Yuan He, and Hui Xue. Towards robust
vision transformer. arXiv preprint arXiv:2105.07926, 2021.
[48] Eric Mintun, Alexander Kirillov, and Saining Xie. On interaction between augmentations and corruptions in natural
corruption robustness. NeurIPS, 2021.
[49] Vinod Nair and Geoffrey E Hinton. Rectified linear units
improve restricted boltzmann machines. In ICML, 2010.
[50] Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer,
James Bradbury, Gregory Chanan, Trevor Killeen, Zeming
Lin, Natalia Gimelshein, Luca Antiga, et al. PyTorch: An
imperative style, high-performance deep learning library. In
NeurIPS, 2019.
[51] Boris T Polyak and Anatoli B Juditsky. Acceleration of
stochastic approximation by averaging. SIAM Journal on
Control and Optimization, 1992.
[52] Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario
Amodei, and Ilya Sutskever. Language models are unsupervised multitask learners. 2019.
[53] Ilija Radosavovic, Justin Johnson, Saining Xie, Wan-Yen
Lo, and Piotr Dollár. On network design spaces for visual
recognition. In ICCV, 2019.
[54] Ilija Radosavovic, Raj Prateek Kosaraju, Ross Girshick, Kaiming He, and Piotr Dollár. Designing network design spaces.
In CVPR, 2020.
[55] Prajit Ramachandran, Niki Parmar, Ashish Vaswani, Irwan
Bello, Anselm Levskaya, and Jonathon Shlens. Stand-alone
self-attention in vision models. NeurIPS, 2019.
[56] Yongming Rao, Wenliang Zhao, Zheng Zhu, Jiwen Lu, and
Jie Zhou. Global filter networks for image classification.
NeurIPS, 2021.
[57] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun.
Faster R-CNN: Towards real-time object detection with region
proposal networks. In NeurIPS, 2015.
[58] Henry A Rowley, Shumeet Baluja, and Takeo Kanade. Neural
network-based face detection. TPAMI, 1998.
[59] Olga Russakovsky, Jia Deng, Hao Su, Jonathan Krause, Sanjeev Satheesh, Sean Ma, Zhiheng Huang, Andrej Karpathy,
Aditya Khosla, Michael Bernstein, Alexander C. Berg, and Li
Fei-Fei. ImageNet Large Scale Visual Recognition Challenge.
IJCV, 2015.
[60] Tim Salimans and Diederik P Kingma. Weight normalization:
A simple reparameterization to accelerate training of deep
neural networks. In NeurIPS, 2016.
[61] Mark Sandler, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, and Liang-Chieh Chen. Mobilenetv2: Inverted
residuals and linear bottlenecks. In CVPR, 2018.
[62] Pierre Sermanet, David Eigen, Xiang Zhang, Michael Mathieu, Rob Fergus, and Yann LeCun. Overfeat: Integrated
recognition, localization and detection using convolutional
networks. In ICLR, 2014.
[63] Pierre Sermanet, Koray Kavukcuoglu, Soumith Chintala, and
Yann LeCun. Pedestrian detection with unsupervised multistage feature learning. In CVPR, 2013.
[64] Karen Simonyan and Andrew Zisserman. Two-stream convolutional networks for action recognition in videos. In NeurIPS,
2014.
[65] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. In ICLR,
2015.
[66] Aravind Srinivas, Tsung-Yi Lin, Niki Parmar, Jonathon
Shlens, Pieter Abbeel, and Ashish Vaswani. Bottleneck transformers for visual recognition. In CVPR, 2021.
[67] Andreas Steiner, Alexander Kolesnikov, Xiaohua Zhai, Ross
Wightman, Jakob Uszkoreit, and Lucas Beyer. How to train
your vit? data, augmentation, and regularization in vision
transformers. arXiv preprint arXiv:2106.10270, 2021.
[68] Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet,
Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent
Vanhoucke, and Andrew Rabinovich. Going deeper with
convolutions. In CVPR, 2015.
[69] Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe,
Jonathon Shlens, and Zbigniew Wojna. Rethinking the inception architecture for computer vision. In CVPR, 2016.
[70] Mingxing Tan, Bo Chen, Ruoming Pang, Vijay Vasudevan,
Mark Sandler, Andrew Howard, and Quoc V Le. Mnasnet:
Platform-aware neural architecture search for mobile. In
CVPR, 2019.
[71] Mingxing Tan and Quoc Le. Efficientnet: Rethinking model
scaling for convolutional neural networks. In ICML, 2019.
[72] Mingxing Tan and Quoc Le. Efficientnetv2: Smaller models
and faster training. In ICML, 2021.
[73] Hugo Touvron, Matthieu Cord, Matthijs Douze, Francisco
Massa, Alexandre Sablayrolles, and Hervé Jégou. Training
data-efficient image transformers & distillation through attention. arXiv:2012.12877, 2020.
[74] Hugo Touvron, Matthieu Cord, Alexandre Sablayrolles,
Gabriel Synnaeve, and Hervé Jégou. Going deeper with
image transformers. ICCV, 2021.
[75] Dmitry Ulyanov, Andrea Vedaldi, and Victor Lempitsky. Instance normalization: The missing ingredient for fast stylization. arXiv:1607.08022, 2016.
[76] Régis Vaillant, Christophe Monrocq, and Yann Le Cun. Original approach for the localisation of objects in images. Vision,
Image and Signal Processing, 1994.
[77] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, and Illia
Polosukhin. Attention is all you need. In NeurIPS, 2017.
[78] Haohan Wang, Songwei Ge, Eric P Xing, and Zachary C
Lipton. Learning robust global representations by penalizing
local predictive power. NeurIPS, 2019.
[79] Xiaolong Wang, Ross Girshick, Abhinav Gupta, and Kaiming
He. Non-local neural networks. In CVPR, 2018.
[80] Ross Wightman. GitHub repository: Pytorch image models. https://github.com/rwightman/pytorchimage-models, 2019.
[81] Ross Wightman, Hugo Touvron, and Hervé Jégou. Resnet
strikes back: An improved training procedure in timm.
arXiv:2110.00476, 2021.
[82] Haiping Wu, Bin Xiao, Noel Codella, Mengchen Liu, Xiyang
Dai, Lu Yuan, and Lei Zhang. Cvt: Introducing convolutions
to vision transformers. ICCV, 2021.
[83] Yuxin Wu and Kaiming He. Group normalization. In ECCV,
2018.
[84] Yuxin Wu and Justin Johnson. Rethinking “batch” in batchnorm. arXiv:2105.07576, 2021.
[85] Tete Xiao, Yingcheng Liu, Bolei Zhou, Yuning Jiang, and
Jian Sun. Unified perceptual parsing for scene understanding.
In ECCV, 2018.
[86] Tete Xiao, Mannat Singh, Eric Mintun, Trevor Darrell, Piotr
Dollár, and Ross Girshick. Early convolutions help transformers see better. In NeurIPS, 2021.
[87] Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, and
Kaiming He. Aggregated residual transformations for deep
neural networks. In CVPR, 2017.
[88] Weijian Xu, Yifan Xu, Tyler Chang, and Zhuowen Tu. Coscale conv-attentional image transformers. ICCV, 2021.
[89] Sangdoo Yun, Dongyoon Han, Seong Joon Oh, Sanghyuk
Chun, Junsuk Choe, and Youngjoon Yoo. Cutmix: Regularization strategy to train strong classifiers with localizable
features. In ICCV, 2019.
[90] Hongyi Zhang, Moustapha Cisse, Yann N Dauphin, and David
Lopez-Paz. mixup: Beyond empirical risk minimization. In
ICLR, 2018.
[91] Zhun Zhong, Liang Zheng, Guoliang Kang, Shaozi Li, and
Yi Yang. Random erasing data augmentation. In AAAI, 2020.
[92] Bolei Zhou, Hang Zhao, Xavier Puig, Tete Xiao, Sanja Fidler,
Adela Barriuso, and Antonio Torralba. Semantic understanding of scenes through the ADE20K dataset. IJC

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值