
ConvNeXt V2:利用掩码自动编码器改进和扩展 ConvNets
三个要点
✔️ ConvNeXt 是一种 CNN SOTA,专为监督学习而设计,但可与掩码自动编码器 (MAE) 等自我监督学习相结合,以提高性能
✔️ 实验结果表明,只需将这两者结合起来,就能提高性能降低
✔️ MAE 和新的全局响应归一化 (GRN),可添加到 ConvNeXt 中,显著提高 ConvNeXt 的整体性能
ConvNeXt V2: Co-designing and Scaling ConvNets with Masked Autoencoders
written by Sanghyun Woo, Shoubhik Debnath, Ronghang Hu, Xinlei Chen, Zhuang Liu, In So Kweon, Saining Xie
(Submitted on 2 Jan 2023)
Comments: Code and models available at this https URL
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
介绍
神经网络架构设计方面的创新在图像识别领域发挥了重要作用。卷积神经网络(ConvNets)作为人工特征工程的替代方法,为各种视觉识别任务提供了通用的特征学习方法,对计算机视觉研究产生了重大影响。
Transformer 架构是为自然语言处理而开发的,但当它应用于图像识别领域时,却长期占据着头把交椅,在准确性和扩展能力方面都超过了 ConvNets。
最近,ConvNeXt(Liu 等人,2022 年)对传统 ConvNets 进行了现代化改造,实现了图像识别任务的最高准确率,并表明纯卷积模型也是一种可扩展的架构。
为了探索更好的神经网络设计,将 ConvNeXt 监督学习与自监督学习(如掩码自动编码器 (MAE))相结合的方法大有可为。然而,将这两种方法结合起来有两个挑战。
其中之一是 MAEs 有特定的编码-解码设计,针对变压器的序列吞吐量进行了优化,这可能使其与标准 ConvNets 不兼容。此外,以往的研究表明,使用基于掩码的自监督学习来训练 ConvNets 是很困难的。
在这篇评论文章中,我们提出了一种 MAE 和一种新的全局响应归一化 (GRN) 层,可以添加到 ConvNeXt 中,从而显著提高 ConvNeXt 的整体性能,并在 ImageNet 数据集上实现 SOTA 结果。
全卷积掩码自动编码器(FCMAE)

遮蔽
随机屏蔽的屏蔽率为 0.6。卷积模型采用分层设计,在不同阶段对特征进行降采样。
掩码在最后阶段生成,并递归上采样到最高分辨率。具体来说,从原始输入图像中随机移除 60% 的 32x32 补丁。数据扩展极小,仅涉及随机调整大小裁剪。
编码器设计
本文使用 ConvNeXt 作为编码器。有效遮蔽图像建模的挑战之一是确保模型不会学习快捷方式,从而轻松复制和粘贴遮蔽区域的信息。这在 ConvNets 中是一个特殊的问题,因为需要维护二维图像结构。
一种常见的解决方案是引入可学习的掩码标记,但这会给训练和测试的一致性带来问题。
为了解决这个问题,编码器中的标准卷积层在预训练时被稀疏卷积层取代,如图 1 所示。稀疏卷积层可以在微调阶段转换回标准卷积,无需额外处理。
解码器设计。

它使用轻量级和简单的 ConvNeXt 块。这种架构总体上是非对称的,而编码器则是重型和分层的。我们曾考虑过更复杂的解码器,但单个 ConvNeXt 块中的解码器在微调精度和减少预训练时间方面表现更好(见表 1)。解码器的维数为 512。
全球响应正常化 (GRN)


图 2 和图 3 说明了提出 GRN 的原因。如图 2 所示,之前研究中的 ConvNeXt(ConvNeXt V1)的几个特征图无效或饱和,使得各通道的激活冗余。
另一方面,如图 3 所示,ConvNeXt V1 的下层越深,每个提取层中的特征就越相似。在结合所提出的 FCMAE 时,这一问题尤为突出,因为 GRN 被认为是在训练过程中分散特征并防止特征崩溃的一种方法。
GRN 包括三个步骤:1)全局特征聚合;2)特征归一化;3)特征校准。首先,空间特征图 Xi 通过全局函数 G: 聚合成一个向量 gx。
这可以看作是一个简单的汇集层。如表 2.a 所示,我们尝试了多种不同的函数,发现广泛使用的特征聚合器--全局均值池化效果不佳。相反,我们发现使用基于 L2 准则的特征聚合可以提高性能。
然后对汇总值应用响应归一化函数 N(-)。具体来说,标准除法归一化的使用方法如下。
与其他形式的归一化一样,由于相互抑制,这一步骤会导致通道之间的特征竞争。表 2b 还考虑了其他归一化函数的使用,并显示简单的除法归一化是最有效的。然而,当应用于相同 L2 规范的集合值时,标准化也显示出类似的结果。
最后,计算出的特征归一化得分将用于校准原始输入响应,如下式所示。
为便于优化,我们增加了两个可学习参数,即 γ 和 β,并将它们初始化为零。我们还在 GRN 层的输入和输出之间添加了一个残差连接。
最终的 GRN 为:Xi = γ ∗ Xi ∗ N(G(X)i) + β + Xi。这种设置允许 GRN 最初执行识别功能,并在训练过程中逐渐适应。残差连接的重要性如表 2c 所示。

图 2 和图 3 说明了 GRN 的有效性。图 2 中的可视化结果和图 3 中的余弦距离分析表明,采用 GRNs 的 ConvNeXt V2 有效地减少了特征衰减问题。持续较高的余弦距离值也证实了各层之间保持了特征多样性。
在 ImageNet 数据集上的实验
将自我监督学习与
表 3 中的结果显示了所建议方法的重要性:使用 FCMAE 框架而不修改模型结构只会对图像识别系统产生影响。
同样,建议的 GRN 层对监督设置下的性能影响甚微。另一方面,两者的结合则大大提高了微调性能。

模型缩放

本研究评估了 8 个不同规模的模型,从低容量的 3.7M Atto 模型到高容量的 650M Huge 模型。这些模型都使用了建议的 FCMAE 框架进行了预训练,然后将微调结果与完全监督的对应模型进行了比较。
图 4 所示的结果表明,模型缩放功能强大,在所有模型大小上,性能都比有监督基线有持续的提高。这是第一个在如此广泛的模型领域中证明遮蔽图像建模的有效性和效率的例子。
与传统方法的比较
在本实验中,将所提出的方法与之前为基于变压器的模型设计的掩码自动编码器方法进行了比较。结果汇总于表 4。
在所有规模的模型中,所提出的方法都优于在 SimMIM 中预先训练的 Swin 变换器。此外,与在 MAE 中预先训练的普通 ViT 相比,尽管拟议方法的参数(1.98 亿比 3.07 亿)要少得多,但在大型模型域中的表现类似。
不过,在巨型模型领域,所提方法的准确度略低于之前的研究。这是因为巨型 ViT 模型可能更受益于自监督预训练。在接下来的实验中,额外的中间微调可能会弥补这一差异。

ImageNet-22K 的中间调整
表 5 显示了 ImageNet-22K 的中间调整结果。学习过程包括三个阶段:1)FCMAE 预训练;2)ImageNet-22K 精调;3)ImageNet1K 精调。预训练和微调使用了分辨率为 3842 的图像。 结果与最先进的架构设计(如基于卷积的设计、基于变压器的设计和混合设计)进行了比较,证实所提出的方法达到了最高的准确率。

迁移学习实验
在本实验中,对过渡学习的性能进行了基准测试。首先,比较了 ConvNeXt V1 + 监督学习和 ConvNeXt V2 + FCMAE 的结果,以验证所提方法的有效性。我们还将 Swin 变压器模型与使用 SimMIM 预先训练的方法进行了比较。
COCO 数据集上的物体检测和分割

在 COCO 数据集上对掩码 R-CNN (He 等人,2017 年)进行了微调,并计算了 COCO val2017 数据集上的检测 mAPbox 和分割 mAPmask。结果见表 6。
在应用所提出的方法时,可以观察到逐步的改进:从 V1 到 V2 时,引入了新的 GRN,性能得到了提高。此外,当从监督学习转为基于 FCMAE 的自我监督学习时,模型会进一步受益于更好的初始化。
当两者同时应用时,性能最佳。此外,使用 FCMAE 预先训练的 ConvNeXt V2 在所有模型尺寸上都优于 Swin 变换器模型,其中巨型模型域的差异最大。
ADE20K 中的语义分割

最后,使用 UperNet 框架(Xiao 等人,2018 年)对 ADE20K 中的语义分割任务进行了实验。结果显示出与物体检测实验类似的趋势,最终模型比 V1 监督基线有显著改善。
研究还发现,在基础模型和大型模型方案中,它的性能与斯温变压器相当,但在巨型模型方案中,它的性能优于斯温变压器。
结论
在这篇评论文章中,介绍了一个新的 ConvNet 模型系列 ConvNeXt V2。该模型旨在涵盖更广泛的复杂性。该模型的架构变化极小,但其设计特别适合自监督学习。
使用全卷积掩码自动编码器进行预训练大大提高了纯 ConvNets 在各种下游任务(如 ImageNet 分类、COCO 物体检测和 ADE20K 分割)中的性能
与本文相关的类别