游乐游手机版
首页/AI热点日报/热点详情

ConvNeXt V2完全卷积掩码自编码器框架

类型:热点整理2026-07-08
ConvNeXtV2通过全卷积掩码自编码器(FCMAE)和全局响应归一化(GRN)层,实现纯卷积网络的自监督预训练。FCMAE适配分层结构,GRN缓解特征崩溃。模型在ImageNet分类、COCO检测和ADE20K分割任务上取得优异性能,参数3 7M时准确率76 7%,650M时达88 9%。

Title: ConvNeXt V2: Co-designing and Scaling ConvNets with Masked Autoencoders

单位: KAIST, FAIR(陈鑫磊, 刘壮等人), 纽约大学(谢赛宁)

Paper: https://arxiv.org/abs/2301.00808

Github: https://github.com/facebookresearch/ConvNeXt-V2

总起:什么是 ConvNeXt V2?

ConvNeXt V2 是一个全新的纯卷积神经网络模型系列,它的核心思路是:将 MAE(掩码自编码器)的自监督学习思想与 ConvNeXt 架构进行协同设计,并引入一个名为 全局响应归一化(Global Response Normalization, GRN) 的新层,从而大幅提升纯卷积网络在图像分类、目标检测和语义分割等任务上的表现。

简单来说,ConvNeXt V2 做到了以下两点:

  • 用全卷积掩码自编码器(FCMAE)预训练,让卷积网络也能像 ViT 一样通过“看图猜缺块”来学习强大的视觉特征。
  • 通过 GRN 层解决预训练过程中间出现的“特征崩溃”问题,让不同通道的特征变得多样且具区分力。

最终,最小的模型(仅 3.7M 参数)在 ImageNet 上达到了 76.7% 的 top-1 准确率,最大的模型(约 650M 参数)更是达到了 88.9%

背景知识回顾

ConvNeXt——卷积网络的现代化改造

在了解 ConvNeXt V2 之前,我们先回顾一下经典卷积神经网络的发展历程:

随后 ViT 的出现引爆了 Transformer 在视觉领域的应用:

紧接着 Swin Transformer 获得了 ICCV 2021 最佳论文奖(Marr Prize),在视觉领域引起轰动:

可以看出,Swin Transformer 将传统 CNN 的三个重要先验信息融入了 Vision Transformer:

  • 带局部窗口的注意力设计
  • 共享权重
  • 分层特征

从各大 CV 顶会接收论文的情况也能看出趋势:

显然,基于各种 Former 的模型遍地开花,而传统卷积神经网络几乎没有增长。Transformer 模型的惊艳效果也证明了这一点。

那么,Transformer 与 CNN 的本质区别在哪里?

首先,Transformer 缺乏固有的归纳偏置,这意味着在小数据量下很难“硬 train 一发”。因此大部分 Vision Transformer 训练时都会加入大量数据增强和训练技巧。如果把这些技巧应用到原始 ResNet 上,同样能获得不错的性能提升:

ConvNeXt 的设计思路如下:

整体设计遵循 由粗粒度到细粒度 的原则。通过一步步实验论证,ConvNeXt 的精度逐步提升,最终达到了媲美 Vision Transformer 的表现:

不同模块之间的结构对比图如下:

总结来说,ConvNeXt 是一个基于纯 ConvNets 的网络结构,它通过借鉴 Vision Transformer 的优化技巧,在 ResNet 的基础上一步步扎实地进行实验论证,最终实现了优于 Swin Transformer 的性能,同时保持了标准 ConvNets 的简单性和效率。

MAE——掩码自编码器

MAE 想必大家都不陌生,CV 界有句名言:“凯明出品,必属精品”。自编码器最早应用于 NLP(如 BERT 模型),通过屏蔽句子中的单词来预测缺失部分。何恺明团队将这个思路成功嫁接到计算机视觉领域:

MAE 的核心特点:

  • 非常高的遮挡率(例如 75%),带来两个好处:
    • 训练速度提升 3 倍(因为模型只处理未遮挡的图像块)
    • 强迫模型学习泛化能力,提高特征提取能力
  • 非对称的编解码器:编码器输出输入图像块的潜在向量表示,解码器则轻量且用于重建。每个掩码标记都是一个共享的学习向量,表示缺失的补丁。
  • 解码器接收潜在表示和掩码标记,输出每个补丁的像素值。最终,通过比较重建图像与原始图像的差异来计算损失并反向传播。

训练完成后,解码器被丢弃,只保留编码器供下游任务使用。

ConvNeXt V2 的核心方法

动机:为什么要协同设计?

ConvNeXt 是对传统 ConvNet 的现代化改造,证明了纯卷积模型也可以像 ViT 一样扩展。但是,探索神经网络架构设计空间最常用的方法仍然是通过在 ImageNet 上进行监督学习基准测试。

近年来,自监督学习非常热门。MAE 成功将掩码语言建模带入视觉领域,并迅速成为视觉表示学习的流行方法。然而,自监督学习中常见的做法是使用为监督学习设计的预定架构,假设模型架构是固定的。例如,MAE 基于 ViT 开发,其特定的编解码器设计针对 Transformer 的序列处理能力进行了优化。

那么,简单将 MAE 的思想套在 ConvNeXt 上会有什么问题?

  • MAE 的编解码器设计可能与使用密集滑动窗口的标准 ConvNet 不兼容。
  • 如果不考虑架构与训练目标之间的关系,很可能获取不到最佳性能。
  • 相关研究表明,使用基于掩码的自监督学习训练 ConvNets 比较困难,且 Transformer 与 ConvNets 提取的特征本身兼容性不好。

因此,本文的重点是探讨如何在同一框架下共同设计网络架构与掩码自编码器,目标是让基于掩码的自监督学习对 ConvNeXt 模型有效,并获得与使用 Transformer 相当的性能。

FCMAE:全卷积掩码自编码器

上图展示了 FCMAE 框架。它由一个基于稀疏卷积的 ConvNeXt 编码器和一个轻量级 ConvNeXt 块解码器组成。整体是一个非对称的编解码器:

  • 编码器仅处理可见像素
  • 解码器使用编码像素和掩码标记重建图像
  • 损失仅在 mask 区域 上计算(与 MAE 一致)

下面拆解整个网络结构的具体改进和优化:

Masking(掩码策略)

本文使用 mask ratio 为 0.6 的随机掩码策略(相对之下 MAE 使用 0.75)。由于卷积模型具有分层设计,特征会在不同阶段被下采样,因此掩码在最后阶段生成并递归上采样到最精细的分辨率。具体实现中:

  • 从原始输入图像中随机删除 60% 的 32×32 patch
  • 使用最少的数据增强,仅包括随机调整大小的裁剪

Encoder design(编码器设计)

ConvNeXt V2 使用 ConvNeXt 模型作为编码器。使掩码图像建模有效的一个挑战是防止模型学习“复制粘贴”的快捷方式。在 Transformer 中,可以只将可见补丁作为编码器输入,但在 ConvNet 中必须保留 2D 图像结构。

一种简单解法是在输入端引入可学习的掩码标记(如 BEiT 和 SimMIM),但这会降低预训练效率并导致训练/测试不一致(特别是高遮挡率时)。

本文借鉴 3D 任务中学习稀疏点云的经验,将掩码图表示为一个 二维稀疏像素阵列,并引入 稀疏卷积

  • 代码实现中,可将标准卷积层转换为稀疏卷积,使模型仅对可见数据点操作
  • 在 fine-tune 阶段可转换回标准卷积,无需额外处理
  • 替代方案:在密集卷积前后应用 binary masking operation,数值上等价但计算量更大,适合 TPU 等翻跟斗

Decoder design(解码器设计)

同 MAE 一致,采用轻量级解码器。作者也考虑了更复杂的解码器(如 FPN、U-Net、ViT 等),但实验表明 单个 ConvNeXt 块解码器 效果就很不错,且显著减少预训练时间。解码器维度设置为 512。

Reconstruction target(重建目标)

采用 MSE 损失,目标是原始输入的 patch-wise 归一化图像,损失仅应用于掩码后的 patch。在 ImageNet-1K 数据集上预训练 800 个 epochs,并额外微调 100 个 epochs。

Global Response Normalization(全局响应归一化)

Feature collapse(特征崩溃问题)

直接在掩码输入上训练 ConvNeXt 时,会出现“特征崩溃”现象:许多饱和的特征图,通道间的激活变得冗余。下图展示了 ConvNeXt 块中 MLP 层的可视化:

定量分析如下:作者随机选择 1000 张不同类别的 ImageNet-1K 验证集图片,从不同模型的每一层提取高维特征,计算余弦距离并求平均。结果发现 FCMAE 预训练的 ConvNeXt 模型表现出明显的特征崩溃趋势:

GRN 的设计

为了增加通道的对比度和选择性,作者引入了 全局响应归一化(GRN)。给定输入特征,GRN 包括三个步骤:

  • 全局特征聚合
  • 特征归一化
  • 特征校准

伪代码如下:

将 GRN 层整合到原始 ConvNeXt 块中,得到如下结构:

作者发现,应用 GRN 时,LayerScale 不再需要,因此在新版本中将其删除。基于此模块,可以创建不同效率和容量的模型。

GRN 的效果

从下图可以看出,ConvNeXt V2 有效缓解了特征崩溃问题,余弦距离值一直很高,表明跨层机制保持了特征多样性,行为类似于 MAE 预训练的 ViT 模型。

此外,配备 GRN 的 FCMAE 预训练模型在 300 个 epoch 下显著优于监督模型。这种改进 不增加额外参数开销或 FLOPs

与其他归一化方法的对比

方法说明
LRN(局部响应归一化)缺乏全局上下文,只对比附近领域的通道
BN(批量归一化)沿批处理轴空间归一化,不适用于 mask 输入
LN(层归一化)通过全局均值和方差标准化隐含地鼓励特征竞争,效果不如 GRN
GRN(全局响应归一化)显著优于 baseline,且简单高效

与特征门控方法的对比

其他动态特征门控方法(如 SE、CBAM)也可以增强神经元间竞争,但 GRN 更简单高效,不需要额外的参数层(如 FC 层)。

GRN 在预训练和微调中的角色

实验表明,无论从微调中删除 GRN,还是仅在微调时添加新初始化的 GRN,模型性能都会显著下降。因此,预训练和微调阶段都需要 GRN 层

实验设置

预训练参数(Pre-training setting)

Atto (A), Femto (F), Pico (P), Nano (N) 模型的 IN-1K fine-tuning 设置

Tiny 模型的 IN-1K fine-tuning 设置

Base (B), Large (L), Huge (H) 模型的 IN-1K fine-tuning 设置

IN-22K 中间 fine-tuning 设置

IN-1K fine-tuning 设置(IN-22K 中间 fine-tuning 之后)

协同设计实验

下图展示了协同设计的效果:不修改架构仅用 FCMAE 框架对表示学习质量影响有限;新 GRN 层在监督设置下影响也很小。但两者结合使用,微调性能显著提高。

与 SOTA 方法对比

常见问题与解答

  • 问:ConvNeXt V2 与 ConvNeXt 的主要区别是什么?
    答:ConvNeXt V2 在 ConvNeXt 的基础上增加了两个关键部分:一是全卷积掩码自编码器预训练框架(FCMAE),二是全局响应归一化层(GRN)。前者让纯卷积网络能有效进行自监督学习,后者解决了预训练中的特征崩溃问题。
  • 问:为什么 mask ratio 从 MAE 的 0.75 改为了 0.6?
    答:因为卷积模型具有分层设计,特征会被下采样,较高的遮挡率可能导致信息丢失过多。实验表明 0.6 的掩码率更适合 ConvNeXt 架构,能获得更好的预训练效果。
  • 问:GRN 层具体起到了什么作用?
    答:GRN 通过全局特征聚合、归一化和校准,增加不同通道之间的对比度和选择性,防止特征图变得冗余(即特征崩溃)。它类似于特征门控,但更简单高效,不需要额外的可学习参数层。
  • 问:稀疏卷积在编码器中如何工作?
    答:稀疏卷积将掩码图像视为 2D 稀疏像素阵列,仅对可见像素进行卷积计算。微调时可以转换回标准卷积,无需额外处理。这样既保持了高训练效率,又保证了测试时的一致性。

小提示

  • 如果你希望快速在自定义数据集上应用 ConvNeXt V2,建议直接使用官方 GitHub 仓库(https://github.com/facebookresearch/ConvNeXt-V2)提供的预训练模型和微调脚本。
  • 在推理阶段,FCMAE 预训练得到的编码器可以直接替换为标准卷积,无需保留稀疏卷积相关代码。
  • 若你的任务是小数据集,可以考虑使用 Atto/Femto 等小模型(仅几 M 参数),仍然能获得不错的性能。

总结

ConvNeXt V2 通过协同设计网络架构与训练方法,成功让纯卷积网络在自监督预训练场景下达到了与 Transformer 相媲美的性能。它的核心贡献包括:

  • 全卷积掩码自编码器(FCMAE)——适配 ConvNeXt 的分层结构,实现高效的掩码图像建模。
  • 全局响应归一化(GRN)——解决特征崩溃问题,提升通道特征的多样性。

最终,ConvNeXt V2 在 ImageNet 分类、COCO 目标检测和 ADE20K 分割等任务上均取得了极具竞争力的结果,展示了纯卷积网络的强大潜力。

编辑:黄飞

来源:https://m.elecfans.com/article/1972337.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。