Advertisement

A ConvNet for the 2020s(论文翻译)

阅读量:

A ConvNet for the 2020s

  • Address Section

  • The Summary Section

  • The Introduction Chapter
    The Overview of Modernizing a ConvNet
    A Core Component: Training Techniques
    A Macro-Level Approach to Macro Design
    A Notable Technique: ResNeXt-ify
    A Strategy Employing Inverted Bottleneck
    A Methodology Utilizing Large Kernel Sizes
    A Subtle Aspect: Micro Design

  • 3. Empirical Assessments on ImageNet

    • 3.1. Experimental Configuration
      • 3.1.1. Training Parameters
      • 3.1.2. Dataset Splitting Strategy
    • 3.2. Experimental Outcomes
      • 3.2.1. Quantitative Performance Metrics
      • 3.2.2. Training and Validation Loss Curves
    • 3.3. Isotropic ConvNeXt versus Vision Transformer (ViT)
  • 4. Empirical Analysis of Downstream Applications

  • 5. Recent Research Trends

  • 6. Synthesis of Findings

  • 7. Appendix

    • A. Experimental Configuration Details
        • A.1. ImageNet Pre-training

B section discusses robustness evaluation, while C section focuses on the detailed results of modernizing ResNets and their implementation aspects

D section elaborates on the detailed architectures explored in this study, emphasizing their design and optimization strategies

E section presents a comprehensive analysis of the benchmarking experiments conducted on A100 GPUs, highlighting key performance metrics and comparison results

F section identifies and addresses the limitations encountered in the proposed methodology, offering insights into potential areas for improvement

G section explores the societal impact of the research findings, discussing their implications for various sectors and applications

Address

https://github.com/facebookresearch/ConvNeXt
https://arxiv.org/pdf/2201.03545.pdf

Abstract

ViT伴随着视觉领域的蓬勃发展而来,在图像分类领域迅速取代了传统的ConvNets并成为最先进的模型之一。然而,在目标检测和语义分割等通用计算机视觉任务中却表现欠佳。通过引入几个与传统卷积网络相关的先验知识(例如Swin Transformers),Transformer架构在通用视觉领域展现出可行性,并在多个视觉任务中取得了卓越的效果。值得注意的是,这种混合方法的有效性主要得益于Transformer架构的独特优势而非单纯依赖于卷积固有的归纳偏置特性。在此研究工作中我们重新审视了设计空间并探索纯基于卷积神经网络模型所能达到的最佳性能极限。通过逐步将标准ResNet架构转换为适合Visual Transformer设计的基础模块我们识别出影响性能的关键组件。这一系列模型统称为ConvNeXts它们完全由传统卷积模块构建具备与Transformer竞争的实力并在ImageNet基准测试中实现了87.8%的Top-1准确率同时在COCO检测和ADE20K分割任务中超越了现有的Swin Transformers模型并且保持了传统ConvNet模型的简洁高效特性

1. Introduction

回溯至2010年代,在此期间发生的便是深度学习技术的一次重要变革。其核心驱动力源于神经网络研究的重大复兴,并在此基础上形成了以卷积神经网络(ConvNets)为代表的高效模型。过去十年间,在计算机视觉领域中,我们见证了从依赖工程特征到采用基于(ConvNet)架构的设计模式的重大转变。值得注意的是,在这一技术发展过程中,在反向传播训练用于卷积网络的技术虽起源于20世纪80年代初[39],但真正展现其潜力的时间则是在2012年底之前。这段研究工作正是在Facebook AI Research期间完成的。

在这里插入图片描述

图 1展示了ConvNets和视觉Transformer在ImageNet-1K上的分类性能。各气泡面积与其所属模型家族变体的计算复杂度成正相关。该集合包含了来自不同尺寸(如224×224和384×384)的图像数据,并根据实验设置分为ImageNet-1K和ImageNet-20K两个子集。通过系统评估表明,在保持扩展性的同时,传统的ConvNet架构显著简化了网络设计过程。

特征学习技术的发展经历了重要转折点。 AlexNet [37] 的引入深刻影响了"ImageNet 时刻"[56], 打定了现代计算机视觉的基础。此后推动该领域迅速发展起来。 如VGGNet[61], Inceptions[64], ResNe(X)t[26,82], Dense Net[33], Mobile Net[32], Efficient Net[67], 和 RegN et[51]等代表性的 ConvN et架构在提升模型准确率的同时, 提高效率并增强可扩展性表现突出, 并总结了许多实用的设计理念.

ConvNets在计算机视觉领域展现绝对优势并非偶然:在多数应用场景中,“sliding window approach”这一策略被视为视觉处理的核心要素,在处理高分辨率图像时尤为显著。由于其内置的归纳偏差,在多数计算机视觉任务中表现出色。对于异议检测这类任务而言,则具有显著的优势。值得注意的是,在滑动窗口处理模式下,“计算资源得以共享利用”的特性使得CNN具备高效运算能力[59]。经过几十年的发展与完善,“滑动窗口”已成为该领域默认的技术路线,并主要应用于数字、面部特征以及行人检测等多个类别[40,55,71,17,60]。随后,在21世纪初,“region-based detector”方法体系的确立进一步巩固了CNN作为视觉识别系统的基石地位。

在同一时间段内

2. Modernizing a ConvNet: a Roadmap

在本节中, 我们阐述了一个从ResNet到ConvNet的路径, 并将其与Transformers进行了比较。我们探讨了两种FLOPs规模的模型: ResNet-50/Swin-T体系和ResNet-200/Swin-B体系。为了便于理解, 我们将重点介绍ResNet-50/Swin-T复杂度模型的结果。由于更高容量模型得出的结果一致, 具体细节可在附录C中查阅。在宏观层面上, 我们的探索方向是: 在保持网络作为标准ConvNet简洁性的同时, 对Swin Transformer的不同层次设计进行深入研究和跟踪。为此, 我们设计了以下研究路线图: 从一个经过优化的ResNet-50架构出发, 分析其与Swin Transformer各组件之间的相互作用机制, 最终归纳总结出适合大规模数据处理的关键特征集。

在这里插入图片描述

图2展示了我们对标准ConvNet(ResNet)进行升级的过程,在不引入任何注意力机制的情况下构建了一个层次化的vision Transformer(Swin)。前面的条形图对比了ResNet-50/Swin-T和Swin-B在FLOPs体系中的模型精度表现;带帽子的条形图则表示未采用该升级方案的情况。两种方案的具体结果可在附录中找到详细说明。许多现有的Transformer架构都可以嵌入到ConvNet中,并且随着设计优化能够逐步提升性能水平。我们的纯ConvNet模型命名为ConvNeXt,并通过与训练ViT相似的技术实现了超越Swin Transformer的表现(改进幅度达1.6%)。这一改进结果将成为我们的基准模型(Base Line)。随后我们系统性地总结了一系列关键的设计决策:1)宏观架构规划;2)ResNeXt模块的设计;3)倒置瓶颈结构的应用;4)核尺寸的选择策略;5)多层次微结构优化等。图2详细展示了"网络现代化"过程中的每一步及其相应实现效果。值得注意的是,在探索过程中尽管我们尽力控制了FLOPs的数量(尽管中间阶段可能会略微超过或低于参考模型),但所有模型均基于ImageNet-1K进行了训练和评估以确保一致性

2.1. Training Techniques

除了在架构设计方面所做工作的基础上,在性能上取得显著提升之外,在视觉感知领域还引入了一系列创新组件与技术路径

2.2. Macro Design

我们对Swin Transformers的宏观网络架构进行了详细分析。该模型借鉴自ConvNets [26, 62]的研究框架,并采用多阶段的设计策略。在本研究中提出了两个值得注意的设计思路:调整各阶段的计算比例以及改进stem cell架构的具体实现方式。其中第一个思路涉及通过修改各阶段之间的计算权重比值来优化整体性能表现;第二个思路则集中在茎单元(stem cell)的设计上,在此基础之上提出了一种更加高效的特征提取方法。

2.3. ResNeXt-ify

在本节中,我们尝试采用 ResNeXt [82] 的思想,其相较于普通 ResNet 在 FLOPs/accuracy 方面展现出更好的权衡效果.该方法的核心组件是分组卷积,即通过增加滤波器组的数量来扩大滤波器宽度.从较高层次来看,ResNeXt 的指导原则是通过增加group的数量来扩大filter的空间维度.具体而言,针对3×3 卷积层应用了分组卷积技术.值得注意的是,深度卷积是一种特殊的分组卷积形式,它将通道数量设为group的数量.深度卷积类似于加权求和运算中的自注意力机制,仅在空间维度上对各通道的信息进行混合融合.这种设计使得深度卷 convolution 在降低计算复杂度的同时提升了模型性能.根据 ResNeXt 的优化策略,我们将网络宽度扩展至与 Swin-T 相同的通道数目(从 64 扩展至 96),从而实现了 FLOPs 达到 5.3G 的目标同时保持了 80.5% 的准确率.随后我们将继续遵循 ResNeXt 所提出的优化策略进行设计工作

2.4. Inverted Bottleneck

在每个 Transformer 块中,一个关键的设计是创建了一个 inverted bottlenecks结构,其中 MLP 块所需的隐藏层维度为其输入维度的四倍(见图4)。值得注意的是,这一 Transformer 设计与其在 ConvNets 中采用扩展比例为4的设计存在关联。该思路被MobileNetV2 [58] 扩展,并在图3展示了模块修改方案及其规范。(a)展示了一个ResNeXt块;(b)则采用了倒置瓶颈块设计;(c)则将空间深度卷积层的位置向上移动了一格。几种先进的ConvNet架构[66,67]均采用了类似设计策略。值得注意的是,尽管深度卷积层所消耗的FLOPs有所增加,但通过使用快捷1×1卷积层作为下采样残差模块可显著减少其FLOPs消耗,从而实现了整体网络 FLOPs 的有效降低(从4.6G进一步降至更低值)。这微小的变化却带来了性能提升(从80.5%提升至80.6%)。在ResNet-200/Swin-B方案中这一改进更为明显(分别从80.5%提升至81.9%和82.6%),同时也降低了整体计算复杂度(FLOP)。我们现在将采用倒置瓶颈设计。

在这里插入图片描述

2.5. Large Kernel Sizes

在这部分探索中,我们关注大型卷积核的行为。vision Transformers最显着的方面之一是它们的非局部self-attention,这使每一层都具有全局感受野。虽然过去 ConvNets [37, 64] 使用了大内核大小,但黄金标准(由 VGGNet [62] 推广)是堆叠具有高效硬件的小内核大小(3×3)的卷积层现代 GPU [38] 上的实现。尽管 Swin Transformers 将本地窗口重新引入了self-attention块,但窗口大小至少为 7×7,明显大于 3×3 的 ResNe(X)t 内核大小。
在这里,我们重新审视了在 ConvNets 中使用大内核大小的卷积。向上移动深度卷积层。
Moving up depthwise conv layer,为探索大内核,一个先决条件是向上移动深度卷积层的位置(图 3 (b) 到 ©)。这在Transformers中也很明显:MSA 块放置在 MLP 层之前。由于我们有一个倒置的瓶颈块(inverted bottlenecks),这是一个自然的设计选择——复杂/低效的模块(MSA、大内核卷积)将具有更少的通道,而高效、密集的 1×1 层将完成繁重的工作。这个中间步骤将 FLOPs 减少到 4.1G,导致性能暂时下降到 79.9%。增加内核大小。
Increasing the kernel size.通过所有这些准备工作,采用更大内核大小的卷积的好处是显着的。我们尝试了几种内核大小,包括 3、5、7、9 和 11。网络的性能从 79.9% (3×3) 提高到 80.6% (7×7),而网络的 FLOPs 大致保持不变.此外,我们观察到较大内核大小的好处在 7×7 处达到饱和点。我们也在大容量模型中验证了这种行为:当我们将内核大小增加到 7×7 以上时,ResNet-200 机制模型没有表现出进一步的增益。我们将在每个块中使用 7×7 深度卷积。至此,我们已经完成了对宏观尺度网络架构的检查。有趣的是,vision Transformers中的很大一部分设计选择可能会映射到 ConvNet 实例。

2.6. Micro Design

在本节中,我们在微观尺度上研究其他几个架构差异——这里的大部分探索都是在层级完成的,重点是激活函数和归一化层的具体选择。
Substituting ReLU with GELU. 在自然语言处理与视觉领域之间的一个显著差异体现在激活函数的实际应用中。
GELU [30] 被视为 ReLU 的一种更为平滑且高效的替代方案。
值得注意的是,在我们的卷积神经网络中使用 GELU 替代 ReLU 并不会影响准确率(80.6%)。
通过这一替换策略,在保持相同基础架构的情况下实现了性能上的提升。
具体而言,在 Transformer 块设计中减少激活函数的数量能够显著提升模型效率。
通过移除了两个批归一化层(BN),我们进一步提升了模型性能至 81.3%,这一结果与最新的 Swin-T 模型相当。
此外,在每一块内仅保留一个 GELU 激活层就足以维持较高的性能水平。
进一步的研究表明,在保持相同策略的前提下移除了两个批归一化层(BN),最终将模型性能提升了 0.1% 至 81.4%,这一结果不仅超越了现有的 Swin-T 模型还展现了其更具竞争力的优势。

在这里插入图片描述

图 4. ResNet、Swin Transformer 和 ConvNeXt 的模块设计。由于存在多个专用模块和两个剩余连接,Swin Transformer 的模块更加复杂。为简单起见,我们将 Transformer MLP 块中的线性层也称为“1×1 convs”,因为它们是等价的。
Substituting BN with LN用 LN 代替 BN。 BatchNorm [35] 是 ConvNets 中的一个重要组成部分,因为它提高了收敛性并减少了过度拟合。然而,BN 也有许多复杂性,可能对模型的性能产生不利影响 [79]。在开发替代规范化 [57, 70, 78] 技术方面已经进行了许多尝试,但 BN 仍然是大多数视觉任务中的首选方案。另一方面,Transformers 中使用了更简单的层归一化 [5] (LN),从而在不同的应用场景中实现了良好的性能。在原始 ResNet 中直接用 LN 代替 BN 将导致性能欠佳 [78]。随着网络架构和训练技术的所有修改,我们在这里重新审视使用 LN 代替 BN 的影响。我们观察到我们的 ConvNet 模型在使用 LN 训练时没有任何困难;实际上,性能稍好一些,获得了 81.5% 的准确率。从现在开始,我们将使用一个 LayerNorm 作为我们在每个残差块中的归一化选择。
Separate Downsamling Layers分离下采样层。在 ResNet 中,空间下采样是通过每个阶段开始时的残差块来实现的,使用步长为 2 的 3×3 卷积(在快捷连接处使用步长为 2 的 1×1 卷积)。在 Swin Transformers 中,在各个阶段之间添加了一个单独的下采样层。我们探索了一种类似的策略,在该策略中,我们使用步长为 2 的 2×2 卷积层进行空间下采样。这种修改出人意料地导致了不同的训练。进一步的调查表明,在空间分辨率发生变化的地方添加归一化层有助于稳定训练。其中包括 Swin Transformers 中也使用的几个 LN 层:在每个下采样层之前,在茎干之后,在最终的全局平均池之后。我们可以将准确率提高到 82.0%,大大超过 Swin-T 的 81.3%。我们将使用单独的下采样层。这将我们带到了我们称之为 ConvNeXt 的最终模型。 ResNet、Swin 和 ConvNeXt 块结构的比较可以在图 4 中找到。ResNet-50、Swin-T 和 ConvNeXt-T 的详细架构规范的比较可以在表 9 中找到。结束语。我们已经完成了我们的第一次“演练”,并发现了 ConvNeXt,一个纯 ConvNet,在这种计算机制下,它可以胜过 Swin Transformer 用于 ImageNet-1K 分类。还值得注意的是,到目前为止讨论的设计选项都不是新颖的——在过去十年中,它们都是单独研究的,但不是集体研究的。ConvNeXt具有与SwinTransformer相当的参数量、吞吐量、内存占用,更高的性能,且不需要依赖特定的模块(比如移位窗口注意力、相对位置偏置。这些发现令人鼓舞,但尚未完全令人信服——迄今为止,我们的探索仅限于小规模,但vision Transformers的缩放行为才是真正让它们与众不同的地方。此外,ConvNet 能否在目标检测和语义分割等下游任务上与 Swin Transformers 竞争的问题是计算机视觉从业者关注的核心问题。在下一节中,我们将在数据和模型大小方面扩展我们的 ConvNeXt 模型,并在一组不同的视觉识别任务上评估它们。

3. Empirical Evaluations on ImageNet

我们开发出了不同类型的ConvNeXt变体(包括ConvNeXt-T/S/B/L),这些变体在复杂性方面与Swin-T/S/B/L [42]表现出高度相似性。其中,ConvNeXt-T和ConvNeXt/B分别基于ResNet-50和ResNet-200机制实现了"现代化"版本的核心功能。此外,在完成上述研究后,我们还开发出一个更为大型的ConvNeXt-XL版本以进一步探索其扩展性能。这些变体在设计上主要依据两个关键参数进行区分:即每组处理单元中通道数量C以及各阶段块的数量Bin值(B)。值得注意的是,在现有研究的基础上(即ResNets和Swin Transformers),每个新阶段都会将通道数量翻倍以实现模型性能提升。具体而言,我们总结了以下配置方案:

3.1. Settings

我们在验证阶段采用 ImageNet-*top* 分类精度作为核心指标,并在此基础上展开了针对 ImageNet-*22K* 预训练任务的研究工作

3.2. Results

ImageNet-1K。表 1(上)显示了与最近的两个 Transformer 变体 DeiT [68] 和 Swin Transformers [42] 以及来自架构搜索的两个 ConvNet - RegNets [51] 和 EfficientNets [67] 的结果比较。 ConvNeXt 在准确度计算权衡以及推理吞吐量方面与两个强大的 ConvNet 基线(RegNet [51] 和 EfficientNet [67])具有竞争力。 ConvNeXt 的性能也全面优于具有类似复杂性的 Swin Transformer,有时具有可观的利润率(例如,ConvNeXt-T 的利润率为 0.8%)。与 Swin Transformers 相比,ConvNeXts 在没有诸如移位窗口或相对位置偏差等专门模块的情况下也享有更高的吞吐量。结果中的一个亮点是 ConvNeXt-B 为 3842:它比 Swin-B 高 0.6%(85.1% 对 84.5%),

在这里插入图片描述

表 1 列出了 ImageNet-1K 分类任务的性能指标。与 Transformer 模型类似的是 ConvNeXt 模型,在更大规模的预训练数据集上展现出更强的扩展性与更高的计算能力。实验结果基于 V100 等离子体显微镜测定,在相同条件下 ConvNeXt 的吞吐量显著高于其他架构。A100 等离子体显微镜测试表明,在相同分辨率下 ConvNeXt 的吞吐量显著高于其他架构(具体数值为 95.7 图像/秒相比 85.1 图像/秒)。实验中发现,在不同分辨率下 ConvNeXt 的吞吐量提升幅度达到了 12.5%(具体数值为 95.7 图像/秒相比 85.1 图像/秒)。随着分辨率从 224×224 增加至 384×384,则 ConvNeXt 相对于 Swin Transformer 在 FLOPs/吞吐量的优势进一步扩大。此外,在进一步扩展到 ConvNeXt-L 模型时也观察到了显著的性能提升效果(具体数值较基准模型提升了约86%)。表 1 下方展示了从 ImageNet-22K 分类任务中微调而来模型的表现结果。这些实验结果的重要性在于反驳了视觉 Transformer 具有较少归纳偏差的传统观点——即使在大规模预训练过程中也未必优于卷积神经网络 (CNN)

在这里插入图片描述

表 2 比较各向同性 ConvNeXt 和 ViT

3.3. Isotropic ConvNeXt vs. ViT

在这种消融实验中,我们考察了我们的ConvNeXt模块设计能否扩展至不包含下采样层且均维持一致的空间分辨率(例如14×14)的ViT风格[18]中的各向同性架构。为此,我们采用与ViT-S/B/L(384/768/1024)相同的特征尺寸构建相应的各向同性ConvNeXt-S/B/L模型。具体而言,其深度设置为18/18/36层以确保参数数量及浮点运算量(FLOP)与原模型相当,同时保留原有架构设计(如图4所示)。为了保证监督学习效果,我们将DeiT[68]的结果应用于ViT-S/B版本,而MAE[24]则应用于ViT-L版本,因为它们采用了较ViT[18]更优化的训练方案。值得注意的是,ConvNeXt模型在经过相同配置下的微调优化过程中,预热阶段的时间长度有所延长。表2展示了在224×224分辨率下的ImageNet-1K分类实验结果。实验表明,ConvNeXt模块设计在非分层架构中的性能表现与其基础ViT方案相当程度上具有可比性

4. Empirical Evaluation on Downstream Tasks

本研究基于预训练的 ConvNeXt 主干模型在标准数据集 COCO 上进行微调,并分别应用于两种不同的目标检测模型:Mask R-CNN [25] 和 Cascade Mask R-CNN [7]。随后,在 Swin Transformer 基础上,我们采用多尺度学习策略,并结合 AdamW 参数优化算法以及周期性学习率调整策略(每3个epoch更新一次)。这些详细的超参数设置及其配置细节均可参考附录 A.3 中的具体描述。通过对比实验结果表明,在相同复杂度条件下 ConvNeXt 的性能指标与之相当或略优于前者。值得注意的是,在 ImageNet-22K 预训练的大规模 ConvNeXt 模型中,在 box 和 mask 的平均精度(AP)指标上取得了显著优势(例如较之于 Swin Transformer 型号至少提升了约1.0%)。

在这里插入图片描述

表 3展示了基于Mask-RCNN及其增强版本Cascade Mask-RCNN在COCO数据集上的目标检测与分割性能。 ‡注脚符号表明这些模型在ImageNet-22K数据集上进行了预训练任务。 ImageNet-1K预训练的Swin模型结果均来源于其官方GitHub存储库[3]。 ResNet-50与X101网络的平均精度(AP)数值均取自文献[42]。 在A100 GPU架构上进行测试以获得每秒帧率(FPS)指标。 所有浮点运算量(FLOP)数值均基于输入图像尺寸为(1280, 800)进行计算所得

为了系统性评估ConvNeXt在实际应用中的效果,研究团队采用了基于Mask R-CNN及其 cascade版本在COCO检测任务上的性能表现.实验结果显示,通过对比分析发现: ConvNeXt不仅达到了与SwinTransformer相当的性能水平,并且在某些关键指标上实现了超越.进一步优化后发现,引入更大规模的网络架构和 ImageNet 22K预训练策略能够显著提升其优势.

ADE20K语义分割任务的研究中,在采用UperNet[80]进行验证时也对ConvNeXt主干架构进行了评估工作。为了保证模型的一致性与可比性,在所有模型变体的设计上都采用了统一的16万次迭代训练策略,并将批量大小设定为16进行处理。其他实验条件则参考[6](有关更多详细信息,请参见附录A.3)。表4展示了不同模型架构在多尺度测试场景下的验证mIoU指标表现。值得注意的是,在不同的模型容量设置下ConvNeXt依然能够维持较高水平的性能表现这一事实进一步证明了我们所提出的架构设计的有效性。此外,在模型效率方面也需要特别关注其计算资源消耗问题。尽管基于深度卷积的操作通常会比单纯依赖密集卷积的ConvNet架构带来更高的计算开销(FLOPs),但从实验结果来看ConvNeXt的设计并未导致实际效率低下这一现象反而得到了印证(有关具体数值比较,请参见表1及表3)。具体而言我们发现当使用ConvNeXt-B主干去训练Cascade Mask-RCNN时其峰值内存占用达到了17.4GB每张显卡而对应的Swin-B基准配置则需要约18.5GB内存资源对比之下基于普通Vision Transformer(ViT)架构的两种主流方法由于采用了本地计算机制在准确率表现上更为突出(FLOPs权衡视角下)。值得注意的是这种效率提升主要归因于传统ConvNet架构中的归纳偏差特性而非视觉Transformer中的自注意力机制

在这里插入图片描述

表 4展示了该方法在ADE₂₀𝑲基准集上的验证结果;注:IN⁃22𝑲预训练标记表示对IN⁃22𝑲预训练数据集的支持;Swin的结果源自其GitHub存储库[参考文献: ₂];随后,在Swin架构的基础上进行多尺度测试以报告mIoU指标;计算路径的浮点运算次数(FLOP)分别基于IN⁃1𝑲与IN⁃22𝑲预训练模型的不同输入尺寸配置:分别为(2048,512)与(2560,640)

在ADE20K数据集上进行性能对比分析表明,在不同模型规模下(即针对不同模型容量大小),基于ConvNeXt架构的设计均展现出显著的性能优势。这些结果进一步证明了该架构的高效性。

混合模型的研究一直是计算机视觉领域的重要方向之一。特别是在ViT架构之前与之后的发展历程中,在结合卷积与self-attention机制(如非本地模块)[52,63,74]的基础上展开深入探讨。值得注意的是,在ViT架构之前的研究主要聚焦于通过自注意力机制增强传统的ConvNet结构以捕捉远距离依赖关系[18]。随后的发展表明,在显式路径[13,14,19,77,81,83]与隐式路径[42]之间探索新的结合方式成为主流研究方向。
最近研究表明基于局部Transformer注意力的设计等效于非均匀动态深度卷积操作[23]。在此基础上将Swin中的多尺度自适应块(MSA)替换为动态或常规深度卷积层的方式能够实现性能上的相当效果[60]。此外还需要关注并验证其他潜在的混合策略以期达到更高的性能目标。

6. Conclusions

在2020年代末期, Vision Transformers逐渐取代了传统的ConvNets,尤其是像Swin Transformers这样层级化的架构,成为通用视觉骨干网络的主流选择。专家普遍认可,视觉Transformer相较于ConvNets不仅具有显著的准确性优势,而且在计算效率和扩展性方面也表现出色。我们提出了一种纯粹基于卷积神经网络架构的模型——ConvNeXts,它能在多个计算机视觉基准测试中与现有的层级化视觉Transformer平分秋色,同时保持了传统ConvNets所拥有的简单性和高效性。值得注意的是,尽管我们在某些方面取得突破性的成果,但这一模型并非全新——在过去十年中,许多核心设计元素已经被单独研究并取得进展,但鲜有学者能够将这些发现整合到一个统一的框架下进行系统分析。我们希望本研究工作的创新成果能够挑战一些根深蒂固的观点,并促使研究者重新审视卷积在网络中的基础作用及其重要性。在此基础上,我们对参与讨论的所有学者表示由衷感谢:Kaiming He,Eric Mintun,Xingyi Zhou,Ross Girshick和Yann LeCun提供了非常宝贵的意见和反馈意见。

Appendix

在本附录中,我们对实验框架进行了详细说明(§A),并提供了稳定性验证结果(§B)、现代技术相关的实验数据(§C)以及完整的网络配置细节(§D)。接着,在A100 GPU平台上进行了基准测试(§E)。最后部分探讨了工作局限性以及社会影响(§F)。

A. Experimental Settings

A.1. ImageNet (Pre-)training

我们在表 5 中提供了 ConvNeXts 的 ImageNet-1K 训练和 ImageNet-22K 预训练设置。这些设置用于表 1(第 3.2 节)中的主要结果。所有 ConvNeXt 变体都使用相同的设置,除了随机深度率是为模型变体定制的。对于“使 ConvNet 现代化”(第 2 节)的实验,我们还使用表 5 的 ImageNet-1K 设置,除了禁用 EMA,因为我们发现使用 EMA 会严重损害具有 BatchNorm 层的模型。对于各向同性 ConvNeXts(第 3.3 节),也采用表 A 中 ImageNet-1K 的设置,但预热扩展到 50 个 epoch,并且各向同性 ConvNeXt-S/B 禁用层尺度。各向同性 ConvNeXt-S/B/L 的随机深度率为 0.1/0.2/0.5。
A.2. ImageNet Fine-tuning
我们在表 6 中列出了 ImageNet-1K 上微调的设置。微调从预训练中获得的最终模型权重开始,不使用 EMA 权重,

在这里插入图片描述

表 5:ImageNet-1K/22K预训练参数设置。其中多个随机深度率如0.1、0.4、0.5、0.5分别适用每个模型如ConvNeXt-T/S/B/L。

在这里插入图片描述

表 6. ImageNet-1K 微调设置。不同设置中分别采用了多个数值组合(如0.8/0.95),这些数值分别应用于不同的模型架构。尽管在预训练过程中采用了EMA方法并报告了相关准确率数据。然而,在某些情况下(如ImageNet-1K上的ConvNeXt-L模型),采用EMA方法可能并不理想。具体而言,在预训练阶段由于过度拟合问题导致其精度显著低于EMA版本的性能水平。因此,在这种情况下,在后续的微调过程中我们选择了该模型的最佳EMA版本作为初始参考点。

在微调中,我们使用逐层学习率衰减 [6, 10],每 3 个连续块形成一个组。当模型以 3842 分辨率进行微调时,我们在 [2, 69, 75] 之后的测试期间使用 1.0(即不裁剪)的裁剪比率,而不是 2242 时的 0.875。
A.3. Downstream Tasks
对于 ADE20K 和 COCO 实验,我们遵循 BEiT [6] 和 Swin [42] 中使用的训练设置。我们还使用 MMDetection [8] 和 MMSegmentation [11] 工具箱。我们使用来自 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 中提供了其他单尺度测试结果。

在这里插入图片描述

B. Robustness Evaluation

该研究基于 ImageNet-A [31] 和 ImageNet-R [28] 等基准数据集展开了对 ConvNeXt 模型鲁棒性能的系统性分析,并进一步扩展至 ImageNet-Sketch [73] 和 ImageNet-C/̄C [29, 45] 数据类别。本研究重点汇报了 ImageNet-C 数据集下的平均破坏误差(mCE)、ImageNet-̄C 下的表现以及所有其他测试集上的 top-1 准确率指标。实验结果表明,在多数基准测试中,ConvNeXt 模型(尤其是其大规模变体)展现出令人鼓舞的鲁棒性特征,并显著优于当前最先进 Robust Transformer 模型 [44] 的表现。通过引入 ImageNet-22K 数据集的额外训练信息,ConvNeXt-XL 模型进一步验证了其强大的跨域泛化能力(例如,在基准测试中达到 69.3% 的分类准确率)。值得注意的是,在这些鲁棒性评估过程中,默认采用了无参数辅助和无需额外微调的传统训练策略。

在这里插入图片描述

表8:ConvNeXt的鲁棒性评估。我们避免使用任何特定功能模块,并非强制配置非必要组件。

C. Modernizing ResNets: detailed results

D. Detailed Architectures

本研究中,在表9中我们进行了ResNet-50、ConvNeXt-T和Swin-T三种模型架构的系统性对比分析。不同尺寸的ConvNeXTs网络结构其唯一差异在于各阶段所包含的块数量和通道规模(具体细节可见第3节)。值得注意的是,在遵循传统ConvNets简洁性原则的同时,Swin Transformers展现出在视觉识别任务中具有相当程度的竞争优势。

在这里插入图片描述

表 9. ResNet-50、ConvNeXt-T 和 Swin-T 的详细架构规范。

在这里插入图片描述

表10展示了ResNet-50的现代化成果。基于三个不同的随机种子对网络进行训练以获取均值与标准差的结果。

E. Benchmarking on A100 GPUs

在Swin Transformer [42]之后,在表1中列出的ImageNet模型基于V100 GPU进行了基准测试结果表明,在参数数量相近的情况下ConvNeXt的表现略胜一筹目前我们基于更为先进的A100 GPU平台进行了相关性能评估

在这里插入图片描述

表 11. ResNet-200 现代化的详细结果。

采用 TF32 张量核心技术的计算架构研究中,我们基于 PyTorch 1.10 平台实现了‘Channel Last’内存布局以提升性能。详细实验结果可见表 12。研究表明,Swin Transformer 和 ConvNeXt 的推理能力均显著超越了 V100 系列 GPU。其中 ConvNeXt 在性能提升方面表现尤为突出,速度提升高达 49%。

在这里插入图片描述

表 12展示了在A100 GPU上的推理吞吐量对比情况。相较于具有相近FLOP值的Swin Transformer,在A100 GPU上运行时ConvNeXt实现了49%的吞吐量提升。基于传统ConvNet模块的设计方案加上简洁明了的架构安排,在当前主流硬件平台上能够展现出超越其他同类模型的优势。

对比实验结果表明,在吞吐量方面ConvNeXt显著优于Swin Transformer。

F. Limitations

我们介绍了一种纯 ConvNet 模型 ConvNeXt,在多个领域如图像分类、对象检测、实例分割和语义分割等方面展现出与分层视觉 Transformer 相媲美的性能。尽管我们的目标是进行广泛的任务评估研究,但随着计算机视觉应用的日益多样化。根据具体情况选择模型更为灵活。例如,在多模态学习场景中交叉注意力机制能够更好地建模不同模态之间的交互关系。此外,在需要离散、稀疏或结构化输出的任务时交叉注意力机制可能会更加灵活地发挥作用。我们相信模型的选择应基于具体任务需求的同时追求简洁性

G. Societal Impact

2020 年代末期,视觉表示学习领域的研究逐渐加大了对计算资源的需求,出现了显著的增长趋势.尽管大型模型与丰富数据集在性能上表现出了显著提升,但同时也带来了诸多挑战. ViT、Swin 以及 ConvNeXt 等架构凭借其庞大的模型变体获得了最佳效果.深入研究这些模型的设计方案不可避免地会导致环境负荷的进一步提高.本研究的一个重要方向与动机在于追求简洁性——通过引入更为复杂的组件,我们发现网络的设计空间得以大幅扩展,从而掩盖了导致性能差异的关键因素.此外,大型模型与数据集在保证鲁棒性和公平性方面仍存在局限性.进一步探究 ConvNeXt 在不同架构下的鲁棒性行为将为相关研究提供新的视角.在数据预训练方面,我们的实验结果表明 ConvNeXt 模型得益于大规模通用数据集的训练.虽然我们采用了公开可用的 ImageNet-22K 数据集进行训练,但个人建议采用更具代表性的自定义数据以获得更好的效果;然而,为了防止潜在的数据偏差问题,我们需要采取更加谨慎和负责任的数据选择策略.

全部评论 (0)

还没有任何评论哟~