Advertisement

【论文简述及翻译】A ConvNet for the 2020s(CVPR 2022)

阅读量:

目录

一. 论文简述

二. 论文翻译

三. 参考


一. 论文简述

1. 第一作者: Zhuang Liu

*2. 发表年份:

3. 发表期刊: CVPR

4. 关键词: ConvNet、Transformers、CNNs、数据集

探索动机: 自2020年起,视觉Transformer架构(尤其是Swin Transformer)开始逐渐成为主流选择,取代传统的卷积神经网络(CNN)。多数观点认为,在某些情况下(如处理高分辨率图像),视觉Transformer展现出显著的性能优势——包括更高的准确性、更好的计算效率以及更强的扩展性。然而,在将现有CNN技术应用至Transformer架构的过程中所取得的进步仍然占据了主导地位。值得注意的是,在这一过程中出现了许多创新——包括更多的数据来源、更为先进的数据增强技术和更为优化的优化算法等——这些因素共同作用下推动了Vision Transformers实现超越前代模型的表现(SOTA)。那么问题来了:Vision Transformers之所以能够在各类任务中取得最佳表现效果(SOTA),难道仅仅是得益于上述技术改进吗?或者是否还有其他关键因素在其中发挥了重要作用?换句话说,在这项研究领域中究竟哪些特性才是真正使得Vision Transformer能够脱颖而出的关键所在?

工作目标:如果将这些应用于基于transformer的技术转移到CNN架构中之后,并进一步推动重构ConvNet结构,则卷积模块的极限性能究竟如何确定?这种迁移是否能够带来类似效果?

7. 核心思想: ConvNeXt是一种纯粹依赖卷积层设计的新一代深度学习框架,在模仿Swin Transformer架构的基础上对ResNet50模型进行了优化与改进。其改进主要体现在整体架构设计、各层组件优化以及细节实现三方面。

8. 实现方法:

Training Techniques: 训练周期由最初的90个epoch扩展至300个epoch,并采用AdamW优化器配合Mixup、Cutmix、RandAugment、Random Erasing等数据增强技术及随机深度设置和标签平滑处理以提升模型泛化能力;仅通过调整训练策略实现ResNet-50模型在分类任务中准确率从76.1%显著提升至78.8%。

Macro Design

  • changing stage compute ratio: Swin-Tr在网络各个阶段的模块比例为1:1:3:1,Swin-L的比例是1:1:9:1。ResNet50各个模块的比例:3:4:6:3,调整为3:3:9:3。这个小的操作让ResNet50的精度从78.8%提升到79.4%。后面的阶段都会使用这个比例。
  • changing stem to “Patchify”: 在ResNet的stem cell中,包含一个步长为2的7×7卷积层和一个最大池化,对输入图像进行4倍下采样。Transformers策略是使用patchify层。我们将ResNet的stem cell替换为更简单的4×4、步幅为4的卷积层(k=s=4),使得滑动窗口不再相交,每次只处理一个patch的信息。精度从79.4%变为79.5%。

ResNeXt-ify

ResNeXt相较于普通ResNet,在FLOPs与accuracy方面实现了更好的平衡。其主要组件是分组卷积结构。作者采用了更加激进的深度卷积技术(具体指分组数目与输入通道数相等)。该技术最初应用于像MobileNet这类轻量化架构以减少计算开销。然而,在这一研究中发现,在单个通道内进行的空间信息混合加权操作与自注意力机制高度相似。实验结果表明,在保持原有网络结构的基础上将瓶颈层的3×3卷积替换为深度卷积,并适当增大了网络宽度至96层后模型性能得到了显著提升(准确率从79.5%提升至80.5%)。

Inverted Bottleneck

Inverted Bottleneck最初在ResNet网络中被提出,并且其形式上遵循(大维度-小维度-大维度)的模式。

后来,在MobileNetV2中提出了inverted bottleneck结构,并采用了(小维度→大维度→小维度)的形式;这种设计被认为能够使信息在不同维度特征空间之间转换时避免因压缩维度而导致的信息损失。后来,在Transformers的全连接层(MLP)中也应用了类似的设计策略。下图a展示了普通ResNext网络的架构图;而下图b则呈现了一种经过优化的Inverted Bottleneck结构示意图;可以看出,在中间层增加了深度可分离卷积模块的同时;由于减少了输出规模;整体网络计算量得到了有效控制。为了进一步优化计算效率;本文将反瓶颈中的中间卷积模块提前至网络最前端;如图c所示;这种改动最终使得网络性能提升了0.1个百分点

Large Kernel Sizes

VGGNet提出了一种创新的方法,在堆叠多个小尺寸卷积层时展现出显著的优势。众所周知的是其长距离的相关性这一特性使得Transformer在序列建模任务中表现出色。论文进一步探讨了大尺寸卷积核的应用并发现其效果与直觉预期一致。作者将深度卷积的位置进行了优化设置并将其放置在反瓶颈位置之前经过大量实验验证这种设计策略能够有效提升模型性能最终实验结果表明说明在相同参数量下证明在相同参数量下7×7尺寸的卷积核同样有效将深度卷积的卷积核大小由3×3改成了7×7但准确率保持不变仍维持在80.6

Micro Design

  • 用GELU代替ReLU。 主要是为了对齐比较,并没有带来精度提升。
  • 更少的激活函数。 由于Transformers中只使用了一个激活层,在block中的两个1x1卷积之间使用一层激活层,其他地方不使用,准确率从80.6到81.3。
  • 更少的归一化层。 由于Transformers中BN层很少,本文也只保留了1x1卷积之前的一层BN,准确率从81.3到81.4。
  • 用LN代替了BN。 由于Transformers中使用了LN,且一些研究发现BN会对网络性能带来一些负面影响,本文将所有的BN替换为LN,准确率从81.4到81.5。
  • 单独的下采样层。 标准ResNet的下采样层通常是stride=2的3x3卷积,对于有残差结构的block则在直连边连接中使用stride=2的1x1卷积。而Swin-T中的下采样层是单独的,因此本文用类似的策略,我们使用步长为2的2×2卷积层进行空间下采样。又因为这样会使训练不稳定,因此在每个下采样层前面增加了LN来稳定训练,准确率从81.5到82.0。

9. 实验结果: ConvNeXt是一个借鉴Transformers网络的CNN模型,从作者的实验看出,每一点精度的提升都是经过大量的实验。虽然原生模型是一个分类模型,但是其可以作为backbone被应用到任何其它模型中。通过一系列实验比对,在相同的FLOPs下,ConvNeXt相比Swin Transformers拥有更快的推理速度以及更高的精度,在ImageNet 22K上ConvNeXt-XL达到了87.8%的准确率。

10.论文下载:

经过几个世纪的发展,在模式识别与计算机视觉领域得到了广泛应用。深度学习技术推动了这一领域的快速发展。自适应自监督学习(ASL)作为一种强大的工具,在计算机视觉领域展现出显著的优势。它能够自主发现数据中潜在的结构特征,并且无需依赖人工标注的数据来源。这种能力使得它成为解决复杂视觉任务的理想选择。

二. 论文翻译

A ConvNet for the 2020s

摘要

视觉识别领域的"20年代兴盛时期"始于Vision Transformers (ViTs)的首次提出;这一创新方法迅速取代了传统的ConvNets,在图像分类领域树立了新的标杆。相比之下,在目标检测与语义分割等常规计算机视觉任务中应用普通ViT会遇到诸多挑战;然而正是分层架构(如Swin Transformers)重新引入了几项关键的技术优势;其有效性主要得益于Transformers固有的强大能力;随后我们系统性地探索并实现了纯基于ConvNet架构的设计方案;通过这种方法我们最终得出了系列完全独立于Transformer架构的经典ConvNeXt模型;这些模型不仅在准确性与扩展性方面与Transformers不相上下;更在COCO检测任务与ADE20K分割任务中超越了现有的Swin Transformer性能;同时这些模型依然保持着标准ConvNet设计所特有的简洁性和高效性

图1. 在ImageNet-1K/22K分类任务中对ConvNets与vision Transformers进行对比分析。每个气泡代表该模型类型内不同变体所对应的计算复杂度(FLOPs)水平。采用的标准图像尺寸分别为[Formula: 0], [Formula: 0]像素对齐方案下进行实验比较。基于改进后的训练策略, 实验结果表明ResNet与Vision Transformer(ViT)实现了类似的扩展性能力。其设计架构相比分层Vision Transformer则更为简洁明了

**1.**介绍

回顾过去十年,在深度学习领域取得了显著的进步和广泛的影响。这一时期的主旋律是人工神经网络的复兴(Artificial Neural Networks),尤其是卷积神经网络 (ConvNets) 的兴起与完善。在过去的十年中,“视觉识别”领域的研究已经成功实现了从工程特征向 ConvNet 结构的转变( architectural shift)。然而,在反向传播法被应用于卷积神经网络方面取得实质性进展之前——直至2012年底——人们对其在视觉特征学习方面的潜力并未给予足够重视。AlexNet 的提出不仅推动了这一领域的发展——加速了‘ImageNet 时刻’的到来,并开创了计算机视觉领域的革命性新纪元。在此之后,“ImageNet 项目”的持续推进使得该领域迅速发展起来。随后出现的一系列重要模型——如 VGGNet、Inceptions、ResNe(X)t、DenseNet、MobileNet、EfficientNet 和 RegNet 等——分别聚焦于不同的优化目标与设计原则,并在此过程中推广了许多实用的设计理念和技术方案

自20世纪以来,默认采用这一架构已成为该领域的一项常规做法。它之所以能在计算机视觉领域占据绝对主导地位,并非偶然因素所致:特别是在处理高分辨率图像时,在这种场景下,“滑动窗口机制”成为了视觉处理的核心策略。其具有内建归纳偏好,在各种计算机视觉应用中表现尤为出色:其中最突出的一个特性是平移不变性——这一性质使其成为目标检测等任务的理想选择。由于基于滑动窗口机制的应用中计算过程具有共享性,在此架构下实现的任务效率得到了显著提升:自20世纪以来,默认采用这一架构已成为该领域的一项常规做法。它之所以能在计算机视觉领域占据绝对主导地位,并非偶然因素所致:特别是在处理高分辨率图像时,在这种场景下,“滑动窗口机制”成为了视觉处理的核心策略。其具有内建归纳偏好,在各种计算机视觉应用中表现尤为出色:其中最突出的一个特性是平移不变性——这一性质使其成为目标检测等任务的理想选择。由于基于滑动窗口机制的应用中计算过程具有共享性,在此架构下实现的任务效率得到了显著提升:自20世纪以来,默认采用这一架构已成为该领域的一项常规做法。它之所以能在计算机视觉领域占据绝对主导地位,并非偶然因素所致:特别是在处理高分辨率图像时,在这种场景下,“滑动窗口机制”成为了视觉处理的核心策略。其具有内建归纳偏好,在各种计算机视觉应用中表现尤为出色:其中最突出的一个特性是平移不变性——这一性质使其成为目标检测等任务的理想选择。由于基于滑动窗口机制的应用中计算过程具有共享性,在此架构下实现的任务效率得到了显著提升:自20世纪以来,默认采用这一架构已成为该领域的一项常规做法

在同一时间点上,在自然语言处理领域中Transformer架构取代了循环神经网络(RNN)主流架构的过程中(即作为自然语言处理的主要工作horse),探索结构自然语言处理(NLP)神经网络设计的道路走上了截然不同的轨迹。尽管语言学与视觉领域的研究目标存在显著差异性且研究兴趣点各有侧重但在2020年Vision Transformers(ViT)的引入彻底改变了这一局面使两者的研究方向实现了前所未有的融合。除了最初阶段将图像划分为多个图像块外ViT架构未引入专门针对图像的设计特性且仅对传统的Transformer架构进行了最小程度上的修改其主要关注点仍聚焦于尺度缩放性能:相较于传统ResNet架构在更大规模的数据集上实现更为卓越的效果这一成果令人鼓舞但计算机视觉的应用场景远不止于图像分类任务过去十年间滑动窗口全卷积范式主导的滑窗方案成为许多视觉任务的标准解决方案然而在缺乏ConvNet级别的归纳偏置能力下仅依靠普通ViT架构构建通用视觉主干面临诸多挑战其中最为突出的问题在于其全局注意力机制所带来的二次复杂度问题即使对于ImageNet这样的标准分类任务这种复杂度依然能够被现有计算资源所承受但在处理更高分辨率输入图像时就显得力不从心。

层次结构通过混合方法缩小了与ConvNets之间的差距。例如,在引入局部窗口内的注意力技术后,“滑动窗口机制”被重新引入到Transformers中。这项研究不仅首次证明了Transformers可用于通用视觉主干,在图像分类之外还展现了其在一系列计算机视觉任务中的卓越性能。这项研究的成果不仅是该领域发展史上的重要里程碑,在后续的发展过程中也得到了快速应用与认可。这也揭示了一个有趣的现象:卷积的本质并未因此而改变;反而是这种简单而强大的机制始终保持着极高的热度,并未衰减。

从这个角度看,在计算机视觉领域中,Transformer的各种创新主要目标是恢复传统的卷积操作。然而,在这一系列尝试中存在一定的代价:直接实现滑动窗口自注意力机制的成本可能较高;尽管通过循环移位等先进技术可以提高速度,但这种改进往往会导致系统设计上的复杂性增加。有趣的是,在许多视觉任务中ConvNet依然表现出色(分层结构),这与其高效的计算特性密切相关——虽然ConvNets以其直接而简洁的设计著称。唯一的问题在于(多头)自注意力机制——这是由于Transformers在这些任务中展现出超越传统架构的能力,并且这种性能优势主要归因于其卓越的可扩展性)。

相较于近年来逐步优化升级的经典卷积神经网络(CNN),Vision Transformer的应用标志着一项重大进步。从体系结构角度进行对比分析(例如Swin Transformer与ResNet),尽管在归纳偏好方面具有相似性[1],然而在训练机制以及宏观与微观尺度架构设计方面存在显著差异[2]。我们对CNN与Transformer之间的结构差异进行了深入探讨,并通过系统性地分析性能指标间的相互作用关系来识别潜在的影响因素[3]。本研究的目的在于弥合前后ViT时代间的性能鸿沟,并探索纯CNN技术所能达到的理想水平。

基于此

我们期待通过新的观察与讨论来质疑一些普遍接受的观点,并以期激发人们重新审视卷积神经网络在计算机视觉领域的作用

2. ConvNet****现代化:路线图

在本节里,我们阐述了从ResNet到与Transformers相近的ConvNet技术发展脉络。基于FLOPs参数探讨了两类模型规模:一种是采用ResNet-50结合Swin-T机制的设计方案(其计算量约为4.5×1e9),另一种则是采用ResNet-200搭配Swin-B机制(计算量约达15.0×1e9)。为了简明扼�地,在附录C部分展示了基于ResNet-50/Swin-T复杂度模型的研究成果;而这些更大容量模型的结果表明相同的趋势。

在高层次上, 我们的探究旨在研究并遵循不同层级的Swin Transformer设计, 同时使网络具备与标准ConvNet相似的简洁性.
我们的探究路线图如下所示.
我们从ResNet-50模型开始.
首先, 我们采用了类似于视觉Transformers训练技术的方法对其进行训练, 相较原始ResNet-50取得了显著提升的结果.
这将作为我们的基准.
随后, 我们研究了一系列设计决策, 并归纳总结为五个主要方面: 宏观设计; ResNeXt; 倒置瓶颈; 大核尺寸; 和多层次微观设计.
这些进展已在图2中得以展示.
因网络复杂性与其最终性能高度相关, 因此我们在探究过程中对FLOPs进行了粗略控制, 尽管在中间步骤中FLOPs可能高于或低于参考模型.
所有模型均在ImageNet-1K上进行训练与评估.

图2展示了基于分层视觉Transformers (Swin) 的设计思路对标准ConvNet (如ResNet) 进行优化升级过程。这一改进措施并未引入依赖注意力机制的部分以保持原有架构的核心特性。其中,在ResNet-50/Swin-T架构中设置了模型精度指标而在ResNet-200/Swin-B方案中则通过灰色条的形式展示了其性能数据。阴影线标记的是未做改动的部分。此外还提到许多Transformers相关的结构选择能够整合到常规卷积神经网络架构中从而可能带来性能提升效果显著的情况下我们的纯ConvNet模型ConvNeXt表现优于现有的Swin Transformers variant.

**2.1.**训练技巧

除了架构设计的选择外,在模型训练阶段也会对最终性能产生重要影响。视觉Transformer不仅引入了新的模块与架构选择(包括不同的模块组合策略),还带来了多样化的视觉训练方法(例如采用基于AdamW的优化策略)。这些方法的选择与其所依赖的优化策略以及相关超参数设置密不可分。因此,在本研究中我们首先采用了基于Visual Transformer开发的基准模型训练方案,在本例中采用的是ResNet50/200模型作为初始基准版本。近期研究表明一种先进而系统的训练方案能够显著提升基础ResNet-50模型的表现水平。在当前研究中我们采用了类似于DeiT及Swin Transformer的方法框架来进行模型训练工作。将ResNets的训练周期延长至300个epoch相比之前的90个epoch有着明显的优势。在具体的实现过程中我们采用了包括AdamW优化器在内的多种数据增强技术和其它辅助方法如Mixup、Cutmix、RandAugment以及Random Erasing等手段同时结合随机深度设置与标签平滑等正则化措施来进一步提升模型性能效果。为了保证实验结果的一致性我们将完整的超参数配置详细描述并在附录A.1中给出完整的说明以供参考使用在此基础上我们的研究工作表明通过系统性地调优这些关键组件能够将ResNet-50分类系统的准确率从76.1%提升至78.8%(+2.7%)这一显著的进步表明传统ConvNet架构与Visual Transformer之间相当大的性能差异可能源于于不同模型间的差异性训练技巧而非根本性的模型架构差异在此后的研究工作中我们将采用相同的超参数设置来开发整个现代化系列中的模型并始终遵循相同的实验规范以确保结果的一致性和可比性

**2.2.**宏观设计

本文主要探讨了Swin Transformers的宏观网络架构设计。该方法沿用ConvNets方法进行多阶段架构设计时,在每个阶段中均采用了不同分辨率的特征图来实现信息提取与传播。在当前研究中具有重要关注点的两个设计方案分别是阶段计算比例以及"stem cell"结构。

优化各层节点之间的连接权重分配比值 。在ResNet架构中采用的经验性设计主要针对跨层特征融合效率这一关键指标展开考量 。针对目标检测等下游应用需求,在' res4 '阶段采用了专门设计的参数配置 ,以实现更好的特征提取效果 。与ResNet架构相似的设计思路 ,Swin-T网络同样遵循了多级自适应划分策略 ,但在具体实现层面存在显著差异 ,其各阶段的比例设置有所不同 。较大尺寸模型采用更为宽广的比例设置 ,这种策略不仅有助于提升整体网络效率 ,还能有效缓解梯度消失问题 。值得注意的是 ,相关研究团队已对各层节点的计算资源分配进行了深入探讨 ,并在此基础上提出了若干优化建议 ,值得我们进一步借鉴 。

从现在开始,我们将使用这个阶段计算比例。

将stem更改为“Patchify”。 通常,在网络开始阶段,茎细胞(stem cell)的设计关注是如何处理输入图像。由于自然图像具有冗余性,在基于卷积神经网络(CNNs)和视觉变换器(Visual Transformers)的标准茎细胞中,默认的操作会对输入图像进行有意识地降采样以获得适当尺寸特征图。例如,在标准ResNet架构中,默认茎细胞包含一个步长为2、7×7卷积核,并紧跟最大池化操作以实现对输入图像的四倍降采样。而在视觉变换器领域,默认茎细胞采用了更为激进的"Patchify"策略(即较大的核尺寸如14或16像素以及非重叠卷积)。类似地,Swin Transformer架构同样采用了类似"Patchify"层,但采用了更小大小为4像素块的方式以适应多阶段设计需求. 我们将基于ResNet架构的传统茎细胞替换成采用一种新的方法,即利用k=s=4步幅与大小均为4像素的小卷积核构建的新一代"Patchify"层.这一改动带来的结果表明,传统ResNet架构中的茎细胞能够被ViT架构中的这种更为简单的"Patchify"层所替代,并且这种替代并未显著影响整体性能水平,实验结果表明精度由原来的79.4%提升至79.5%.

我们将在网络中使用“patchify stem”(4×4非重叠卷积)。

2.3. ResNeXt-ify

在这个阶段中, 我们借鉴了ResNeXt的核心思想, 其在FLOPs与accuracy方面优于普通ResNet. 其核心技术在于分组卷积机制, 在更深的层级结构中, ResNeXt的指导原则表明, 在较高层级应尽可能多地使用分组数量, 并通过增加网络宽度来补偿由此带来的计算量损失. 分组卷积显著降低了计算复杂度(FLOPs), 因此通过增加网络通道数来维持性能.

在我们研究的例子中

我们现在将采用ResNeXt设计。

**2.4.**倒置瓶颈结构

在每个Transformer块中都包含一个关键的设计元素:引入了反向通道机制。这种机制的具体实现方式是将MLP块的隐藏层设置为输入层节点数的四倍(如图4所示)。值得注意的是,在卷积神经网络领域中也采用了一种类似的策略:通过扩大通道数量来增强模型表达能力。这一创新思路得到了MobileNetV2的成功应用,并在此基础上逐步发展完善,在多个先进的卷积神经网络架构中得到了进一步的应用和发展。

图4介绍了ResNet、Swin Transformers和ConvNeXt的块设计。基于多个专用模块以及两个残差连接的存在,Swin Transformers模块因此显得更为复杂。为简便起见,我们注意到Transformers MLP块中的线性层同样对应于"1×1 convs"这一概念

在本研究中,我们深入探讨了一种称为倒置瓶颈设计的新方法。图3(a)至(b)展示了这些配置方案的具体实现过程。尽管深度卷积层的操作次数(FLOPs)有所增加,但由于采用了直连边1×1卷积层的设计优化策略,在下采样残差块中的计算开销得到了显著降低。值得注意的是,在ResNet-200/Swin-B模型框架下实施这一改进措施后,在测试集上的准确率提升了约0.1个百分点(从80.5%提升为80.6%),同时在训练过程中也降低了整体计算开销水平

我们现在将使用倒置瓶颈。

图3展示了块的修改及其对实验结果的影响。(a)为ResNeXt结构;其中(a)展示了ResNeXt块的设计方案;在图3(b)中,我们设计了一个倒置的瓶颈块;在图3(c)中,空间深度卷积层的位置向右偏移。

**2.5.**大卷积核

在这项研究中, 我们着重考察了大尺寸卷积核的表现. Vision Transformers的主要显著特点是其非局部自注意力机制, 这一技术使每一层都获得了全局感受野. 尽管过去使用的ConvNets普遍采用较大的滤镜尺寸, 但在主流基准(VGGNet)下, 人们主要采用了较小滤镜尺寸(3×3)的小滤镜卷积层, 因此能够在现代GPU上实现高效的硬件实现. 虽然Swin Transformers通过将局部窗口引入自注意力机制缓解了这一局限性, 但其窗口大小最低设为7×7, 明显高于ResNe(X)t等主流架构所采用的小滤镜尺寸(3×3). 在此基础上探讨常规卷积神经网络采用大尺寸滤镜的可能性及其潜在优势.

向更高层次移动的深度卷积层**(如图3(b)至(c)所示)是一个重要的技术步骤。这一设计策略在Transformers架构中也得到了体现:将多头自注意力(MSA)块放置在全连接层(MLP)之前进行处理。由于该模型采用了反向设置的关键瓶颈模块——复杂度较高且效率较低的功能模块位于通道数量较少的部分——这种安排既符合计算资源优化的原则又保证了网络的整体性能表现。通过这一中间环节的操作(如图3(d)所示)**成功将浮点运算量(FLOP)压缩至4.1G,在一定程度上降低了整体计算负担的同时也确保了网络性能指标维持在79.9%左右的理想水平。

通过增加卷积核尺寸进行了一系列准备工作。

我们将在每个块中使用7×7深度卷积。

至此,在完成网络结构的宏观尺度调研工作后非常令人激动。值得注意的是,在Vision Transformers中存在相当数量的设计选择与ConvNet的实例化具有可映射性

**2.6.**微观设计

在本节专门探讨从微观层面分析其他几个关键结构特征——在此过程中我们完成了系列探索其中核心关注点在于激活函数与归一化层的选择方案

以GELU取代ReLU。在NLP与视觉架构之间存在一个关键区别在于所采用的具体激活函数类型上。随着时间流逝与技术进步推动下, 人们已开发出多种类型的激活函数:其中修正线性单元(ReLU)因其简洁高效而长期主导着卷积神经网络(CNNs)的应用;而在Transformer论文中, ReLU也被用作基础激活函数之一。高斯误差线性单元(GELU),可被视为ReLU的一种更为平滑化的替代形式,并在最新的Transformer架构如谷歌BERT与OpenAI GPT-2等模型中得到广泛应用;此外,GELU也被应用于当前最前沿的视觉模型如ViT系列之中。值得注意的是, 在CNN架构中同样可以采用GELU替代ReLU, 虽然这并不会显著影响其性能表现(准确率约为80.6%)

更少的激活函数。** Transformers 和 ResNet 块的主要区别在于 Transformers 的激活函数数量较少**。考虑一个包含键/查询/值线性嵌入层、投影层以及两个线性层的 Transformers 块,在其 MLP 块中仅包含一个激活函数。相比之下,在每个卷积操作(包括 1×1 卷积)后通常会添加一个激活函数。在这里我们研究了当采用相同策略时性能的变化情况(如图 4 所示)。通过移除两个 1×1 残差块之间的所有 GELU 激活函数并复制 Transformers 块的设计风格,在不改变其他任何参数的情况下实现了性能提升 0.7%,最终达到 81.3% 的准确率水平;这一结果与Swin-T模型表现相当

我们现在将在每个块中使用单个GELU激活函数。

减少归一化模块的数量
在这一过程中通常也会减少归一化模块的数量。
在这里我们去掉了两个Batch Normalization (BN)模块,在conv 1×1模块之前仅保留了一个BN模块。
这进一步将性能指标显著地提高了80%,超过了Swin-T的表现。
需要注意的是,在每一块所包含的BN模块数量上比传统的Transformers模型要少得多,
基于经验观察到,在每一块开头添加额外的一个BN模块并不会带来性能上的提升,
反而可能会导致计算效率下降,
因此我们在设计时更加注重权衡各部分之间的关系以达到整体优化的目的

用LN取代BN

在原始ResNet架构中直接采用LayerNorm替代BatchNorm未能取得最佳效果。经过对网络结构及训练技术的全面优化,在此研究探讨LayerNorm替代BatchNorm的影响。实验表明,在采用LayerNorm进行训练的过程中并未遇到任何困难;反观其实在此情况下获得的准确率达到了81.5%。

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

新增单独的空间降维模块在ResNet架构中 , 空间降采样的实现依赖于各阶段起始处的残差块设计, 其中主干部分采用步长为2的3×3卷积操作(并在直连边上采用步长为2的一维卷积操作)。相比之下, Swin Transformers架构 则在一个独立的空间降采样模块之间插入了多个降维操作, 我们尝试采取了一种与现有架构相似的设计思路, 即通过步长为2的二维卷积核进行空间降采样处理。这种设计选择带来了出人意料的效果下降, 经过进一步分析发现, 在空间分辨率发生突变的位置引入归一化操作能够有效提升训练稳定性。值得注意的是, 这一发现与当前主流模型Swin-T的研究方向相契合, 包括茎干部分前后以及全局平均池化之后均设置了归一化层操作, 并且该研究还涉及到了多个归一化层的操作点: 每个空间降采样模块前设置一个归一化操作, 共计设置了三个归一化层节点

我们将使用单独的下采样层。这将是我们称之为ConvNeXt的最终模型。

ResNet、Swin和ConvNeXt三种块结构之间的对比分析可见于图4所示的内容中。通过表格形式展示了不同模型架构的具体细节对比结果,请参考表9中的详细信息以获得完整的比较数据

表9.ResNet-50, ConvNeXt-T和Swin-T的详细结构说明。

总结性发言:我们已经完成了我们的首次模拟练习,并提出了一种纯卷积神经网络 ConvNeXt

这些发现值得期待,但尚不完全令人信服——到目前为止为止,在研究范围上仍局限于小规模实验。然而最显著的是Vision Transformers在可扩展性方面的表现才真正使其脱颖而出。此外,在目标检测和语义分割等下游应用中与Swin Transformers展开竞争的问题才是计算机视觉领域的核心关注点。在接下来的一章中我们将从数据量和模型规模两个维度对现有的ConvNeXt架构进行进一步扩展,并对其性能表现展开系统性评估

3. Imagenet****上的实验评估

我们开发了多种类型的 ConvNeXt 变体:包括 ConvNeXt-T、S、B、L 系列以及与 Swin-T/S/B/L 相比具有相似计算复杂度的模型。其中 ConvNeXt-T 和 B 分别基于 ResNet-50 和 200 的基础功能模块进行了 '现代化' 优化后形成最终成果。此外我们还开发了一个规模更大的 ConvNeXt-XL 以进一步评估其扩展性能。这些变体在通道数量 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)

我们对外公布基于ImageNet-1K测试集的模型在top-1准确率上的实验结果。此外,在包含超过14百万图像的ImageNet-22K大规模数据集上进行预训练。该数据集包含了21,841个分类类别(其中包括ImageNet-1K中的全部1,000个类别)。从这大约14 million张图像中提取特征进行预训练。随后,在ImageNet-1K测试集上微调预训练模型以进一步优化性能。为了提高模型性能,在预训练阶段采用了统一分辨率(均为[公式]像素);而在微调过程中则分别采用了两种不同的分辨率:初始阶段使用的是统一分辨率(均为[公式]像素),而后续阶段则将分辨率提升至更高水平。

**3.1.**结果

ImageNet-1K。 表1上半部分展示了当前两种基于Transformer的变体——DeiT和Swin Transformers——以及来自结构搜索中获得的RegNets、EfficientNets系列以及EfficientNetsV2等卷积神经网络的结果对比。 在精度与计算效率及推理吞吐量方面,该研究证实了ConvNeXt架构可与两个强大的基准网络(RegNets和EfficientNets系列)相媲美;其性能不仅在复杂度相近的情况下全面超越Swin Transformers架构,在某些情况下还展现出显著的优势(例如:ConvNeXt-T比Swin Transformer高出了约0.8%)。 相较之下,在不包含额外组件如移动窗口或相对位置偏差的情况下,该架构仍能实现更高的吞吐量。

在实验结果中发现了一个显著的表现:采用384\times 384像素的ConvNeXt-B模型较之Swin-B提升了0.6\%(即准确率分别达到90.7\%90.1\%),较之前有所进步)。然而,在推断效率方面却出现了显著提升。值得注意的是,在分辨率从之前的较低水平(假设为某个值)提升至当前水平时(具体数值可能需要确认),ConvNeXt B不仅在计算复杂度上表现优异,在实际运行速度上也有明显的优势。此外,在进一步优化至ConvNeXt-L架构时,则实现了相对Swin-B模型的显著性能提升。

|

​|

|
|---|---|

表1展示了ImageNet-1K分类任务的表现。其性能表现类似于Transformers架构的特点,在模型容量增大且预训练数据规模扩大时展现出更优的可扩展性。参考文献[45]指出,在V100显卡上进行推理性能测试的基础上比较了不同架构之间的差异性表现形式;具体实验细节可参考附录E部分。ViT模型基于增强正则化方法进行了90 epoch的训练,并通过与作者的个人沟通提供了进一步的技术支持信息

ImageNet-22K 。在表1(下)中我们呈现了经过预训练并微调后的模型在ImageNet-22K上的实验结果。这些实验结果表明,在大规模预训练过程中Vision Transformers的表现确实优于传统的ConvNets架构。我们的研究进一步证实,在采用大型数据集进行微调的情况下,默认设计的ConvNets同样具有竞争力——即使考虑到规模相近的Swin Transformers架构,在性能上也未见明显劣势,并且其吞吐量表现更为突出。此外,在本研究中开发出的ConvNeXt-XL模型实现了87.8%的成功率——相较于现有的ConvNeXt-L架构,在处理384×384图像时实现了显著提升性能的目标。

在ImageNet-1K上应用了Squeeze-and-Excitation模块以及EfficientNetV2-L网络架构设计,在实验中取得了最优结果。然而,在经过ImageNet-22K预训练后,在图像识别任务中展现出比EfficientNetV2-L更好的性能表现。

在附录B中,我们讨论了ConvNeXt的鲁棒性和域外泛化结果。

**3.3.**各向同性的ConvNeXt VS.ViT

在消融实验中

表2展示了各向同性ConvNeXt与ViT在性能上的对比情况。实验中使用的训练内存数据基于V100型GPU平台,并采用固定大小为32条记录的数据批量处理策略进行测试计算

**4.**下游任务的实验评估

基于COCO数据集开展目标检测与分割任务。我们采用ConvNeXt主干模型,在COCO数据集上分别微调了Mask R-CNN与Cascade Mask R-CNN。在此基础上延伸Swin Transformer的研究,并采用多尺度训练、AdamW优化器以及3x训练策略进行模型优化。

表3列出了不同架构(包括Swin Transformer、ConvNeXt及传统ConvNet如ResNeXt)的目标检测与实例分割性能对比结果。在不同复杂度的模型中,ConvNeXt的表现与Swin Transformer不相上下甚至更优。进一步扩展至基于ImageNet-22K预训练的大规模模型版本(如B/L/XL系列),在box与mask AP指标上 ConvNeXt的优势尤为明显(例如较之可实现+1.0AP提升)。

表3基于Mask-RCNN与Cascade Mask-RCNN架构实现COCO目标检测与分割实验结果。注:该模型在ImageNet-22K数据集上进行了预训练工作。其中基于ImageNet-1K预训练的Swin模块来源于其GitHub存储库。ResNet-50及X101网络的AP指标引用文献[45]中的数据。本研究在A100 GPU平台上计算了模型的平均帧率(FPS)。计算浮点运算量(FLOPs)时采用了图像尺寸(1280, 800)作为基准

ADE20K****数据集上的语义分割任务中

实验表4展示了ADE20K基准测试的结果,并采用的是UperNet模型。其中符号‡标注表示基于IN-22K预训练的设置。Swin架构的结果可参考其GitHub存储库获取详细信息。基于Swin架构的后续研究中,在多尺度测试条件下评估了模型的平均交并率(mIoU)性能。计算复杂度指标FLOP分别对应于基于IN-1K(输入尺寸为[批处理数目]×[分辨率]×[通道数]= [具体数值])和IN-22K预训练模型的不同输入尺寸设置

关于模型效率的评论。

**5.**相关工作

混合模型

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

**6.**结论

自2020年以来

三. 参考

[【论文精读-ConvNeXt】A ConvNet for the 2020s

论文精读-ConvNeXt

论文精读-ConvNeXt

Reading Classic Papers

Reading Classic Papers

全部评论 (0)

还没有任何评论哟~