【自监督论文阅读笔记】Simmim: A simple framework formasked image modeling

news/2024/5/21 1:02:44/文章来源:https://blog.csdn.net/YoooooL_/article/details/127408838

        本文介绍了 SimMIM,这是一个用于 掩码图像建模 的简单框架。本文简化了最近提出的相关方法,无需特殊设计,例如通过离散 VAE 或聚类 进行 block-wise 分块级的掩码 和 tokenization。为了研究 是什么让掩码图像建模任务学习良好的表示,本文系统地研究了本文框架中的主要组件,并发现 每个组件的简单设计 都显示出 非常强的表示学习性能:

1)使用 中等大小的掩码patch大小(例如,32)是一个强大的前置任务

2)  通过 直接回归 预测原始像素的 RGB 值 并不比设计复杂的patch分类方法差

3)预测头 可以像线性层一样性能不比较重的层差

        使用 ViT-B,本文的方法通过也在该数据集上进行预训练,在 ImageNet-1K 上实现了 83.8% 的 top-1 微调精度,超过了之前的最佳方法 +0.6%。当应用于具有约 6.5 亿参数的更大模型 SwinV2-H 时,它仅使用 ImageNet-1K 数据,在 ImageNet-1K 上实现了 87.1% 的 top-1 准确率。 本文还利用这种方法来 解决 大规模模型训练 面临的 data-hungry 需要大量数据的 问题,一个 3B 模型 (SwinV2-G) 被成功训练,以 在四个具有代表性的视觉基准上 实现最先进的精度使用的标记数据 比以前的实践 (JFT-3B) 少 40 倍。该代码可在 https://github.com/microsoft/SimMIM 获得。


Introduction:

        “What I cannot create, I do not understand. ” — Richard Feynman

        “掩码信号建模” 就是这样一项学着去创造的任务:屏蔽一部分输入信号 并 尝试预测这些屏蔽信号。在 NLP 中,遵循这一理念,基于掩码语言建模任务的自监督学习方法 在很大程度上重新描绘了该领域 [2,12,32],即通过 使用大量未标记数据 来学习 非常大规模的语言模型 已被证明 可以很好地推广到 广泛的 NLP 应用程序。

        在计算机视觉领域,尽管有先驱者利用这种哲学进行自监督表示学习 [13,60,61],但在前几年,这项工作几乎被对比学习方法所掩盖 [8,21,51]。将此任务 应用于 语言和视觉领域的 不同困难可以通过 两种模式之间的差异 来解释。

  • 区别之一是 图像表现出更强的局部性彼此接近的像素往往高度相关[27],因此可以通过 复制接近的像素 而不是通过 语义推理 来完成任务。
  • 另一个区别是 视觉信号是 raw and low-level 原始的和低级的,而 文本tokens 是人类生成的高级概念。这就提出了一个问题,即 低级信号的预测 是否对 高级视觉识别任务有用
  • 第三个区别是 视觉信号是 连续的,而 文本tokens 是离散。目前尚不清楚 基于分类的掩码语言建模方法 如何能够很好地处理 连续的视觉信号
  • (语言域使用较小的掩码率)

        直到最近,还有尝试通过 引入几种特殊设计弥合模态差距 并 解决障碍 的试验,例如,通过 将连续信号 转换为 颜色簇 [7],通过使用附加网络 [1] 进行 patch tokenization,或 通过块级的掩码策略来打破短距离连接 [1] 等。通过这些特殊设计,学习的表示被证明可以很好地迁移到几个视觉识别任务

        与需要特殊复杂的设计相比,在本文中,提出了一个简单的框架,该框架与视觉信号的性质非常吻合,如图 1 所示,并且能够 比以前更复杂的方法 学习相似甚至更好的表示对输入图像块进行随机掩码,使用线性层 ℓ1 损失 回归 被掩码区域的原始像素值。这个简单框架背后的关键设计和见解包括:

        • 对图像块应用随机掩码,这对于vision Transformers 来说 简单又方便。对于被掩蔽的像素,更大的patch大小 或 更高的掩蔽率 可能会导致找到接近的可见像素的机会更小。对于 32 的大掩蔽patch大小,该方法可以 在很广的掩蔽率范围内(10%70%)实现有竞争力的性能。对于 8 的小掩码patch大小,掩码率需要高达 80% 才能表现良好。可以注意到 更好的掩码率 与语言域中的掩码率 非常不同,语言域默认采用 0.15 的小掩码率。标签假设 两种模式中 不同程度的信息冗余 可能导致不同的行为

        • 使用原始的像素回归任务。回归任务与视觉信号的连续性非常吻合,视觉信号具有有序性。这个简单的任务执行起来并不比分类方法差,分类方法的类别是通过 tokenization、聚类 或 离散化 特别定义的。

        • 采用了极其轻量级的预测头(例如,线性层),其传输性能与较重的预测头(例如,逆 Swin-B)相似或略好。使用极其轻量级的预测头可以显著加快预训练速度。此外,本文注意到 范围广泛的 目标分辨率(例如,12*12 ~ 96*96)与最高的 192*192 具有竞争力。虽然 更重的head更高的分辨率 通常会导致更大的生成能力,但这种更大的能力 并不一定有利于下游微调任务


        虽然简单,但所提出的 SimMIM 方法对于表示学习非常有效。使用 ViT-B,它在 ImageNet1K 上实现了 83.8% 的 top-1 微调精度,超过了之前的最佳方法 ([1]) +0.6%。 SimMIM 还被证明可以扩展到更大的模型:使用 SwinV2-H 模型(658M 参数)[33],它在 ImageNet-1K 分类上实现了 87.1% 的 top-1 准确率,这是仅使用 ImageNet-1K 数据的方法中数量最多的。这一结果 鼓励 使用自监督学习 来解决 由于模型容量快速增加 而导致的日益严重的data-hungry 问题。事实上,在 SimMIM 的帮助下,本文使用比 Google 的 JFT-3B 数据集小 40 倍的数据成功地训练了一个具有 30 亿个参数的 SwinV2-G 模型 [33],并在几个具有代表性的基准测试中创造了新的记录:84.0% ImageNet-V2 分类 [42] 上的 top-1 准确率,COCO 目标检测上的 63.1/54.4 box/mask mAP [6,31],ADE20K 语义分割上的 59.9 mIoU [52, 63],以及 86.8% 的 top-1 准确率Kinetics-400 动作识别 [28, 35]。

        虽然近年来我们看到 NLP 和计算机视觉 在基本建模和学习算法 以及 多模态应用中的重叠越来越多,这与人类大脑 如何实现 通用智能能力 非常吻合,但本文希望本文对计算机视觉中的“掩码信号建模”的演示可以进一步推动这一趋势,并鼓励不同人工智能领域的更深入互动


Related Work:

Masked language modeling (MLM):

        掩码语言建模 [12,32] 及其自回归的变体 [2] 是自然语言处理 (NLP) 领域的主要自监督学习方法。给定 句子 或 句子对/三元组 中的 可见 tokens,这些方法通过预测输入的不可见tokens 来学习表示。自大约 3 年前 [12] 以来,这一系列方法已经重新描绘了该领域,它能够学习非常大的语言模型,并通过利用大量数据 很好地概括 广泛的语言理解和生成任务。


Masked image modeling (MIM):

        掩码图像建模 [7, 13, 23, 38, 47] 与 NLP 中的 MLM 任务并行发展,但长期处于非主流位置上下文编码器方法[38] 是这个方向的先驱工作,它掩盖了原始图像的矩形区域,并预测丢失的像素。 CPC [23,47] 用 对比预测编码损失 ,在每个batch中,通过 验证任务 预测patches。最近,iGPT [7]、ViT [15] 和 BEiT [1] 回顾了现代 vision Transformers 上的这种学习方法,并通过在某些组件上引入特殊设计,在表示学习方面显示出强大的潜力,例如 像素聚类 [7]、平均颜色预测 [15],以及通过 具有 块级的掩码策略 的附加 dVAE 网络 进行tokenization [1]。与这些复杂的设计相反,本文提出了一个极其简单的框架 SimMIM,它显示出相似甚至略胜一筹的效果


Reconstruction based methods:

        基于重构的方法也与本文的方法有关,特别是 自动编码器方法 [24、30、37、41、49、50]。与本文的方法类似,他们采用 重建任务 来恢复原始信号。然而,它们基于 不同的 可见信号重建理念,不是像本文的方法那样 创建 或 预测 不可见的信号。因此,他们通过研究如何通过 适当的正则化 或 架构瓶颈 来有效地规范任务学习,从而在非常不同的道路上取得进展。


Image inpainting methods:

        除了表示学习之外,掩码图像建模是一个经典的计算机视觉问题,称为图像修复。这个问题在计算机视觉中已经被广泛研究了很长时间[39,55,56],旨在 提高修复质量,并且没有连接到自监督表示学习。虽然本文提倡 将 图像修复 作为一个强大的自监督的前置任务,但本文也发现 更强的修复能力 并不一定会 在下游任务中 带来更强的微调性能


Compressed sensing:

        本文中的方法也与 压缩感知 有关[14],它肯定了我们获得的大部分数据,包括 图像信号,都可以在几乎没有 感知损失 perceptual loss 的情况下被丢弃。最近的稀疏推理工作也部分支持了这种说法[20],即在丢掉 大部分的图像特征后,识别准确率几乎没有下降[25,43,54]。本文对 输入信号的观察更进一步,即以 极小部分的 随机选择的 输入图像块 作为输入,即 10%,仍然可以学习修复任务以产生良好的视觉表示


其他自监督学习方法:

        在过去的二十年里,有许多前置任务以自监督的方式学习视觉表示:灰度图像着色 [60]、拼图求解 [36]、split-brain自动编码 [61]、旋转预测 [ 18],学习聚类[4]。虽然与 掩码图像建模 非常不同,但有趣的是,其中一些还遵循预测信号不可见部分的理念,例如,[60,61] 使用一个或两个颜色通道作为输入来预测其他通道的值。另一大部分工作在于对比学习方法 [3, 8, 16, 19, 21, 51, 53],它们是以前的主流。本文希望本文的工作可以鼓励 将 掩码语言建模 作为自监督视觉表示学习的前置任务 的研究。


Approach:

掩码图像建模框架:

        本文的方法 SimMIM 通过 掩码图像建模 来学习表示,该方法 掩码输入图像信号的一部分 并预测掩码区域的原始信号。该框架4 个主要组件组成

1)掩码策略

        给定一个输入图像,该组件设计如何选择 要掩码的区域,以及如何实现所选区域的掩码。掩码后的变换图像将用作输入。

2)编码器架构:

        它为掩码图像 提取 隐特征表示,然后将其用于 预测 掩码区域的原始信号。学习到的编码器有望迁移到各种视觉任务。在本文中,主要考虑两种典型的视觉 Transformer 架构:普通的 ViT [15] 和 Swin Transformer [34]。

3) 预测头:

        预测头将应用于隐特征表示,以在掩码区域 产生一种形式的原始信号

4) 预测目标:

        该组件定义 要预测的原始信号的形式。它可以原始像素值 或 原始像素的转换。该组件还定义了损失类型,典型选项包括 交叉熵分类损失 ℓ1或ℓ2回归损失

        在以下小节中,将介绍每个组件的典型选项。然后系统地研究这些选项。通过结合每个组件的简单设计,本文已经能够实现强大的表示学习性能


掩码策略:

        对于掩码区域的输入变换,本文 遵循 NLP 社区 [12, 32] 和 BEiT [1] 使用可学习的掩码 token向量 来 替换每个掩码patch。 token向量的维度设置为patch 嵌入后其他可见patch表示的 相同。对于掩码区域选择,本文研究了以下掩蔽策略(如图 2 所示):

Patch-aligned随机掩码:

        本文首先提出了一种 patch对齐的随机掩码策略。Image patches 图像块 是vision Transformer 的基本处理单元块级patch-level的掩码操作很方便,一个块要么完全可见,要么完全被掩码。对于Swin Transformer,本文考虑 不同分辨率阶段的 相等的patch size,4×4∼32×32,默认采用32×32,即最后阶段的patch size。对于 ViT,本文采用 32×32 作为默认的掩码patch大小。


其他掩码策略:

        本文还在之前的作品中尝试了其他掩码策略:

1)[38] 引入了中心区域掩码策略。本文 放宽它可以在图像上随机移动。

2) [1] 引入了一种复杂的 block-wise逐块掩码策略。本文在 16 × 16 和 32 × 32 的两个掩码块上尝试这种掩码策略。


 Prediction Head(Decoder):

        预测头可以是任意的形式和容量,只要 其输入与编码器输出一致 并且 其输出完成预测目标 即可。一些早期的工作遵循 自动编码器 来使用 重型预测头(解码器)[38]。在本文中,展示了预测头可以做得非常轻,像线性层一样轻。本文还尝试了更重的头部,例如 2 层 MLP、逆 Swin-T 和 逆 Swin-B。


预测目标:

原始像素值回归:

        像素值 在颜色空间中 是连续的。一个直接的选择是 通过回归 来预测掩码区域的原始像素。一般来说,视觉架构 通常会产生 下采样分辨率的 特征图,例如,ViT 中的 16 倍 和 大多数其他架构的 32 倍。为了在输入图像的全分辨率下 预测所有像素值,本文 将特征图中的 每个特征向量 映射回 原始分辨率,并让该向量 负责 相应原始像素的预测。

        例如,在 Swin Transformer 编码器产生的 32×下采样特征图上,b我应用一个 1×1 卷积(线性)层,输出维度为 3072 = 32×32×3 代表  32×32 像素的 RGB 值。本文还通过 分别 将原始图像下采样 {32×、16×、8×、4×、2×} 来考虑较低分辨率的目标

        对 掩码像素 采用 ℓ1-loss

其中 分别是输入的 RGB 值和预测值; M 表示掩码像素的集合; Ω(·) 是元素的数量。本文还在实验中考虑了 ℓ2 和 smooth-ℓ1损失,它们表现相似,默认采用ℓ1损失


其他预测目标:

        以前的方法大多将 掩码信号 转换为 簇 或 类,然后执行 掩码图像预测 的分类任务

• 颜色聚类

        在 iGPT [7] 中,使用大量自然图像 通过 k-means 将 RGB 值分组为 512 个簇。然后 将每个像素 分配给 最近的聚类中心。这种方法需要一个额外的聚类步骤 来生成 9-bit 的调色板。在本文的实验中,使用在 iGPT 中学习到的 512 个聚类中心。

• 视觉标记化 tokenization

        在 BEiT [1] 中,采用离散 VAE (dVAE) 网络 [40] 将 图像块 转换为 dVAE tokens。token身份用作 分类目标。在这种方法中,需要预先训练一个额外的 dVAE 网络

• Channel-wise bin color discretization
         R、G、B 通道被单独分类,每个通道 被离散化为 相等的 bin,例如,实验中使用 8 和 256 个 bin。


Evaluation protocols:

        本文遵循 [1] 主要通过 微调 ImageNet-1K 图像分类 来评估学习表示的质量,这是实践中更有用的场景。本文将在消融中主要考虑这个指标。在系统级比较中,本文还遵循之前的工作 [1, 3, 7, 8, 19, 21] 来报告之前线性探测的主要指标的性能。尽管如此,本文不会考虑这个线性探测指标,因为 本文的主要目标是 学习 可以很好地补充 以下 下游任务的表示


Experiments:

Ablation Study:

Settings:

        本文在消融研究中 采用 Swin-B [34] 作为默认主干,这有助于我们在 目标检测 和 语义分割 等下游任务上评估学习的表示(见附录)。为了减少实验开销,本文使用 192*192 的默认输入图像大小 并 将窗口大小 调整为 6 以适应更改的输入图像大小。 ImageNet-1K 图像分类数据集用于预训练和微调。

        在自监督的预训练中,本文使用了 带有余弦学习率调度器的 AdamW 优化器 [29],并训练了 100 个 epoch。训练超参数是:批量大小为 2048,基础学习率为 8e-4,权重衰减为 0.05,β1 = 0.9,β2 = 0.999,预热 10 个 epoch。使用 轻量级 数据增强策略:随机调整大小裁剪,比例范围为 [0.67, 1],纵横比范围为 [3/4, 4/3],然后是 随机翻转 和 颜色归一化步骤。
        
        SimMIM 组件的默认选项是:随机掩码策略,patch size 为 32×32,mask ratio 为 0.6;目标图像大小 为192*192 的 线性预测头;掩码像素预测的 ℓ1 损失。本文的消融是通过改变一个选项并保持其他设置与默认设置相同来进行的。

        在微调中,本文也使用了 AdamW 优化器、100 epoch 训练 和 带有 10 epoch 预热的余弦学习率调度器。微调超参数是:批量大小为 2048,基础学习率为 5e-3,权重衰减为 0.05,β1 = 0.9,β2 = 0.999,随机深度 [26] 比率为 0.1,以及 逐层学习率衰减 0.9。本文遵循 [1] 中使用的相同数据增强,包括 RandAug [10]、Mixup [59]、Cutmix [57]、标签平滑 [45] 和随机擦除 [62]。


Masking Strategy:

        本文首先研究 不同的掩码策略 如何影响表示学习的有效性。表1总结了 多种掩码率下 不同方法的微调精度。        
        首先注意到,本文的 简单随机掩码策略 的最佳准确度达到 83.0%,比其他更专门设计的策略(如 [1] 中的逐块级掩码)的最佳准确率高 +0.3%。

        此外,当采用 32 的 大掩码块大小 时,这种简单的策略 在很宽的掩码率范围(10%-70%)上表现稳定。本文假设 一个大的掩码patch的中心像素 可能 与可见像素足够远。因此,它 强制网络学习 相对长距离的连接,即使 使用低掩码率(例如,10%)或 周围的所有patches都没有被掩码。增加 预测距离 的另一种方法是 使用更大的掩码率,这有利于 相对较小的patch 大小 的微调性能。通过在patch 大小为 4、8 和 16 时将掩码率从 0.4 增加到 0.8,准确度平滑地提高了 +0.2%(从 81.9% 到 82.1%)、+0.4%(从 82.0% 到 82.4%),和 +0.4%(从 82.4% 到 82.8%)。然而,这些较小块的整体精度不如较大的块大小 32 高。观察到 将块大小进一步增加到 64 会降低准确性,这可能是由于预测距离过大

        上述观察和分析也可以通过 新提出的 AvgDist 度量 得到很好的反映,该​​度量 测量 掩码像素 到 最近的可见像素的 平均欧几里得距离。不同掩码策略的 AvgDist在不同的掩蔽率下,如图 3(a) 所示。从这个图中,观察到所有掩码策略的 AvgDist 随着掩码率的增加而平滑增加。对于随机掩码策略,当掩码的块大小较小时,例如 4 或 8,AvgDist 相对较低,并且随着掩码率的增加而缓慢增长。另一方面,块大小很大时,例如 64,非常小的掩码率(例如 10%)仍然会使 AvgDist 相对较大。 square 和 block-wise 方法 产生与块大小 64 相似的 高 AvgDist 值。

        图 3(b) 绘制了 微调精度与 AvgDist 度量 之间的关系,该曲线为脊形。微调精度高 的条目大致分布在 AvgDist 的 [10, 20] 范围内,而具有更小或更高 AvgDist 的条目表现更差。这表明 掩码图像建模中的预测距离 被鼓励适度既不太大也不太小。可能,掩码预测中的小距离可能会让网络学习太多短连接,而 大距离可能太难学习。这些结果还表明,AvgDist 可能是掩码图像建模 有效性的一个很好的指标。 

        在本文的实验中,由于其性能稳定,默认采用 0.6 的掩码率 和 32 的patch size 块大小。另请注意,语言领域的掩码策略和比率 与 本文工作中探索的非常不同,通常采用 15% 的小掩码比率。本文假设 两种模式的 不同程度的信息冗余 可能导致不同的行为


预测头:

        表 2 消融了不同预测头的影响,包括线性层、2 层 MLP、逆 Swin-T 和逆 Swin-B。虽然通常较重的head会产生略低的损失,例如,0.3722(逆 Swin-B)与 0.3743(线性层),但下游 ImageNet-1K 任务的迁移性能较低。这表明 更强的修复能力 并不一定会 带来更好的下游性能。可能是因为 容量大部分浪费在预测头上,不会用于下游任务。还有一个实际的缺点,就是 更重的预测头会带来 更高的训练成本,例如,使用逆 Swin-B 的训练成本是线性层的 2.3 倍。

        另请注意,在之前的对比学习方法 [8, 19, 21] 中,在前置任务中使用多层 MLP 头而不是线性层是一种常见的做法,这使得编码器产生的隐特征 适度远离 前置任务的目标,并显示 有利于 线性探测的评估指标。在本文的工作中,展示了本文的方法中的单个线性层头,在微调度量下,显示出具有竞争力甚至最佳的传输性能。这表明,如果我们的目标是学习用于微调的良好特征,那么对于掩码图像建模而言,对比学习方法中头部设计的重要探索可能不是必需的。 


预测分辨率:

        表 3 消融了不同的目标分辨率的影响。它表明大范围的分辨率(例如,12*12-192*192)表现同样出色。迁移性能仅在 6*6 的低分辨率下下降,可能是因为此选项丢弃了太多信息。这些结果意味着 下游的图像分类任务 所需的信息粒度。本文未来的研究将探讨对 其他 更细粒度的下游任务(如目标检测或语义分割)的影响。

        请注意,由于同样 最佳的迁移精度 和 可忽略的计算开销,本文在实验中采用了 192*192 的默认目标分辨率


预测目标:

        表 5 比较了不同预测目标的效果。可以得出以下几个观察结果:

ℓ1、smooth-ℓ1 和 ℓ2 的三个损失 表现相似

通过 颜色聚类 [7] 或 tokenization [1] 仔细定义的类的性能 比本文的稍差

通过 channel-wise equal-sized 通道级的等大小的 bin(作为替代选项提出)的 简单颜色离散化方法与 ℓ1 损失具有竞争力,但它需要仔细调整 bin 数量(例如,8-bin)。

        它表明,没有必要 将 掩码图像建模的目标 对齐为 与掩码语言建模相同的 分类将 方法 与视觉信号的自身性质 保持一致是很好的

预测还是重建?               

        虽然 自动编码器掩码图像建模方法 都通过 恢复原始信号 来学习网络,但它们建立在 可见信号的重建不可见信号的预测 的不同理念之上。在本文的框架中,还可以通过 回归 输入中可见patches的原始像素值 来实例化重建任务

        表 4 比较了 在本文的默认设置中 仅预测掩码区域的方法恢复掩码和未掩码区域的替代方法。预测掩码区域的方法 的性能 明显优于 恢复所有图像像素的方法,分别为 82.8% 和 81.7%。这意味着这两个任务的内部机制 根本不同预测的任务 可能是一种 更有前途的表示学习方法


与以前的 ViT-B 方法比较:

        正如之前的工作 [1, 5] 对 ViT 架构进行了实验,为了公平比较,本文还使用 ViT-B 架构进行了实验

        在预训练中,使用了 800 个带有余弦学习率调度器的 epoch 和 20 个 epoch 的线性预热程序。所有其他超参数都严格遵循与消融研究相同的设置,除了本文使用 224*224 的输入分辨率 与之前的方法相同。在微调中,遵循 [1] 采用 0.65 的逐层学习率衰减,并保持所有其他设置与本文的消融研究严格相同。在线性探测中,按照 [1] 选择 产生最佳线性探测精度的 ViT-B 中间层。采用了 100 个 epoch 训练和 5 个 epoch 线性预热步骤。

        表 6 在使用 ViT-B 的 微调和线性探测两个指标上 将本文的方法与之前的方法进行了比较。本文的方法 通过微调 实现了 83.8% 的 top-1 准确率,比之前的最佳方法 [1] 高 +0.6%。另请注意,由于其简单性,本文的方法 比其他方法 保留了最高的训练效率,它比 DINO [5]、MoCo v3 [9]、ViT [15] 和 BEiT [1]的效率 高 2.0 倍、1.8 倍、~4.0 倍和 1.5 倍(不计算 dVAE 预训练的时间)。

        尽管本文的主要重点是 学习更适合微调的表示,但本文还报告了不同方法的线性探测精度以供参考。


使用 Swin Transformer 进行缩放实验:

        本文采用不同模型大小的 Swin Transformer 进行实验,包括 Swin-B、Swin-L、SwinV2-H 和 SwinV2-G [33]。为了减少实验开销,本文在预训练中 采用了 192*192 的较小图像大小,以及 步长学习率调度器,不同训练长度的实验 可以重用 第一步的模型训练。第一个学习率step 的基础学习率设置为 4e-4,持续总训练 epoch 的 7/8。剩余时期的学习率除以 10。对于 H 和 G 的模型大小,本文使用了 [33] 中引入的变体,它们比原始版本具有更强的稳定性。所有模型都使用 ImageNet-1K 数据集进行训练,除了 SwinV2-G 使用更大且私人收集的 ImageNet-22K-ext 数据集,详见 [33]。

        当使用 ImageNet-1K 进行预训练时,所有模型都经过 800 个 epoch 的训练,大多数其他超参数都在消融中。在微调中,使用更大的图像尺寸 2242。对于 SwinV2-H,我们还考虑了更大的分辨率 5122。微调的训练长度设置为 100-epoch,除了 SwinV2-H 使用 50-epoch。 Swin-B、Swin-L 和 SwinV2H 的逐层学习率衰减分别设置为 0.8、0.75 和 0.7。其他微调超参数在消融中遵循。

        表 7 列出了本文的方法 在不同模型大小下的 结果,与有监督的方法相比。通过 SimMIM 预训练,所有 Swin-B、Swin-L 和 SwinV2H 的准确度 都明显高于 有监督的同类方法。此外,分辨率为 512*512 的 SwinV2-H 模型在 ImageNet-1K 上实现了 87.1% 的 top-1 准确率,这是仅使用 ImageNet-1K 数据的方法中最高的。

        虽然之前 所有的 十亿级视觉模型 都依赖 谷歌的 JFT-3B 数据集 进行模型训练 [11,44,58],但所提出的 SimMIM 方法 用于通过 使用比 JFT-3B 小 40 倍的数据 来帮助训练 3B SwinV2-G 模型 [33]。它在四个 具有代表性的 视觉基准上 实现了强大的性能:ImageNet-V2 分类 [42] 上的 84.0% top-1 准确率、COCO 目标检测上的 63.1/54.4 box/mask mAP [6, 31]、ADE20K 语义分割上的 59.9 mIoU [52] , 63] 和 86.8% 在 Kinetics-400 动作识别上的top-1 准确率 [28, 35]。更多细节在[33]中描述。


Visualization:

        在本节中,试图通过 可视化 来理解所提出的方法 以及一些关键设计。所有示例图像均来自 ImageNet-1K 验证集。

What capability is learned?

        图 4 显示了几个 人工设计的掩码 的恢复图像,以了解 通过掩码图像建模 学习了哪些能力。人工设计的掩码(从左到右)分别由一个随机掩码、一个用于移除主要对象大部分部分的掩码 和一个用于移除所有主要对象的掩码 组成。可以得出以下观察结果:

1)通过对主要对象的中等部分进行随机掩码,可以很好地恢复 被掩码部分的形状和纹理,如企鹅、山、帆船和人。在未掩码的区域上,由于训练时 未学习 未掩码的区域的恢复存在严重的棋盘伪影

2)通过掩盖主要物体的大部分(大于90%),模型仍然可以通过 可忽略的线索 预测物体的存在

3) 当对象被完全掩码时,被掩码的区域 将被背景纹理修复

        这些观察表明,该方法已经学习了强大的物体推理能力,而这种能力 不是由于 图像实体的记忆 或 附近像素的简单复制


预测与重建:

        本文在表 4 中展示了掩码预测任务(本文的方法)与 联合 掩码预测 和 可见信号重建 任务 学习的表示的比较,这表明 纯掩码预测任务的性能明显更好。图 5 比较了两种方法的恢复效果。它表明后一种方法看起来更好,但是,模型容量 可能 被浪费在 恢复未掩码区域上,这可能对微调没有多大用处


掩码patches大小的影响:

        图 6 显示了在固定掩码率 0.6 下具有不同掩码块大小的图像的恢复。可以看出,当掩码块尺寸较小时,可以更好地恢复细节,但是,学习的表示迁移得更差。可能,使用较小的块大小,预测任务可以通过 附近的像素 或 纹理 轻松完成


Conclusion:

        本文提出了一个简单而有效的自监督学习框架 SimMIM,以利用 掩码图像建模 进行表示学习。该框架尽可能简单:

  1. 具有中等大小的掩码patch 大小的随机掩码策略
  2. 通过直接回归任务预测RGB值的原始像素;
  3. 预测头可以像线性层一样轻

        本文希望本文强大的成果以及简单的框架能够促进该线的未来研究,并鼓励人工智能领域之间的深入互动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_404065.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nginx----(1)nginx的单机安装

文章目录Nginx卸载开源版Nginx安装默认简单安装Nginx的源码复杂安装防火墙问题nginx启停安装成系统服务Nginx卸载 步骤一:需要将nginx的进程关闭 ./nginx -s stop步骤二:将安装的nginx进行删除 rm -rf /usr/local/nginx步骤三:将安装包之前编译的环境清除掉 mak…

opc client 客户端软件测试工具

一、概述: 本软件一款OPC客户端测试工具,使用本软件连接到OPC server服务端,获取server数据,简单好上手,软件也很小巧,操作便利,也是绿色软件,免安装。 二、软件基础环境保证&#x…

期货交易结算信息(期货结算系统)

期货中的结算价是怎么计算出来的? 最近常有新手投资者问:为什么期货账户收盘时年持仓是盈利的,怎么当天结算单上却是亏损的? 之所以会有这个疑问,是因为投资者没有明白期货收盘价、结算价、成交价三者之间的关系。今天…

dockerfile编写构建镜像

文章目录一、dockerfile1、什么是dockerfile2、原理二、docker镜像的创建1、创建镜像的三种方法①基于已有镜像创建②基于本地模板创建③基于dockerfile创建三、镜像分层的原理1、docker镜像结构的分层2、bootfs内核空间3、rootfs内核空间4、AUFS与overlay/overlay2overlay结构…

【ViT 微调时关于position embedding如何插值(interpolate)的详解】

目录1. 问题描述2. positional embedding如何interpolate3. 输入的sequence length改变了ViT还能正常前向推断?本文适合对Vision Transformer有一定了解(知道内部结构和一些实现细节,最好是精读过ViT这篇论文)的读者阅读&#xff…

八种可以简单判断否属于过敏体质的表现,符合四条就是了

最早感知春天的不是鸭子,而是过敏的人,最近门诊荨麻疹的人数逐渐增多。近20年来,随着过敏性鼻炎、湿疹、荨麻疹和哮喘的发病率越来越高,过敏体质开始越来越出名。在西医中,容易患上这种过敏性疾病的人被称为过敏体质。…

JVM(九) —— 运行时数据区之堆的详细介绍(四)

JVM(九)—— 运行时数据区之堆的详细介绍(四)TLAB堆空间常用的参数设置HandlePromotionFailure逃逸分析和栈上分配代码优化栈上分配同步省略分离对象或标量替换TLAB 堆区是线程共享区域,任何线程都乐意访问到堆区的共…

智能钢琴-第12届蓝桥杯Scratch省赛1真题第4题

[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第52讲。 第12届蓝桥杯青少年组省赛分两次进行,这是2020年10月19日举行的第一次省赛考试初级组,形式为在线考试。Scratch分为初级组和…

java实验报告3:数组和字符串案例练习

目录 内容 利用随机1~9整数生成3*3的二维数组,使二维数组每行,每列、以及斜线上的数字之和均为15,并输出这个二维数组 按自然数从小到大的标准为顺序,对以下数组求其逆序数,并列出逆序对: 实验小结 一、…

眼科考研院校排名及考研难度分析

眼科考研院校排名及考研难度分析 文章目录眼科考研院校排名及考研难度分析基础信息专业介绍学科范围和课程眼科学专业研究方向考研分析学校排名分数线学校推荐就业方向学习材料参考链接基础信息 专业介绍 眼科学(学科代码:100212)是临床医学…

Aptos 域名服务 (ANS) 上线主网

我们很高兴正式推出 Aptos 名称服务 (ANS)。我们正在通过使用 Aptos 构建一流的区块链体验来铺平道路,这就是我们在第一天推出域名服务的原因。 ANS 现在允许所有 Aptos 用户使用人类可读的 .apt 域名作为他们的 Aptos 钱包地址,而不是他们的公钥。 我们…

美化mac系统自带的Terminal.app工具

命令行工具对于开发人员来说,使用还是比较频繁的,但是mac自带Terminal.app工具的样式和功能实在一言难尽. 默认的样式 美化后的样式 下面为大家介绍如何操作. 我们使用的是oh-my-zsh 项目地址 我喜欢自己去安装, 不使用自动化脚本, 这样可以记录修改了哪些文件, 安装的文件…

黑盒测试-场景法

黑盒测试-场景法 1.场景法 1.1简介 1.简介:软件系统要想获得用户的认可,必须站在用户的角度, 以用户的使用逻辑及操作习惯为出发点,设计测试用例时 考虑用户使用软件的流程。然后,依据这些流程设计用例 设计才能更贴…

Day09-尚品汇-购物车静态组件与修改

一:把购物车成功页面的两个按钮完善一下(第一个) 1.在AddCartSuccess组件里面: 1.的后续 1》点这个 2》跳转会购物车的页面 二:把购物车成功页面的两个按钮完善一下(第二个) 1.先在文档里面找到…

供应氨基-PEG-多巴胺,NH2-PEG-Dopamine,Amine-PEG-DOPA

1:描述 NH2-PEG-Dopamine,Amine-PEG-DOPA(氨基-聚乙二醇-多巴胺),试剂所属分类为Amine PEG Dopamine PEG,质量控制为95%,该试剂应于 -20℃长期保存,暗黑,干燥处保存。 …

论文笔记:Pre-training to Match for Unified Low-shot Relation Extraction

论文来源:ACL 2022 论文地址:https://aclanthology.org/2022.acl-long.397.pdf 论文代码:https://github.com/fc-liu/MCMN 目录 Abstract Introduction Multi-Choice Matching Networks Multi-choice Prompt Instance Encoder Multi…

winform会所管理系统VS开发sqlserver数据库cs结构c#编程源码网页

一、源码特点 winform 会所管理系统 是一套完善的桌面程序设计管理系统,系统具有完整的代码数据库,系统主要采用C/S模式开发。 应用技术:winform c#sqlserver 开发工具:vs2010 sqlserver winform会所管理系统VS开发sqlser…

CentOS7 Docker 安装ELK

CentOS7 Docker 安装ELK CentOS7 Docker 安装ELK 准备工作 安装docker 第一步:查看已安装的docker第二步:卸载旧版本第三步:安装docker依赖包第四步:查看安装docker列表第五步:启动docker第六步:查看docke…

音视频进阶教程|实现直播间的自定义视频渲染

1 自定义视频渲染的功能简介 自定义视频渲染指的是 SDK 向外部提供本地预览及远端拉流的视频帧数据,供用户自行渲染。 当开发者业务中出现以下情况时,推荐使用 即构实时音视频SDK 的自定义视频渲染功能: App 使用了跨平台界面框架&#xf…

如何让scp在后台运行

scp在前台执行打印大量信息,阻碍正常的操作,放在后台执行会比较方便。本文的方法也适用于Linux系统下的其他传输命令。 一、方法1 1. 输入ctrl z 暂停任务,此时查看jobs,显示如下: [1] Stopped [rootxxx ~]# 2. bg将…