【读点论文】Masked Autoencoders Are Scalable Vision Learners 完型填空应用到视觉处理上

Masked Autoencoders Are Scalable Vision Learners

  • 本文表明,掩蔽自动编码器(MAE)是计算机视觉的可扩展自监督学习器。

  • 本文的MAE方法很简单:通过屏蔽输入图像的随机碎片,并重建丢失的像素。它基于两个核心设计。

    • 首先,开发了一个非对称的编码器-解码器架构,其中一个编码器只对可见的补丁子集进行操作(没有掩码标记),另一个轻量级解码器从潜在表示和掩码标记中重建原始图像。
    • 第二,发现遮蔽高比例的输入图像,例如75%,产生了非平凡且有意义的自我监督任务。
  • 耦合这两种设计使本文能够高效地训练大型模型:加速了训练(3倍或更多)并提高了准确性。本文的可扩展方法允许学习泛化能力良好的高容量模型:例如,在仅使用ImageNet-1K数据的方法中,vanilla ViT-Huge模型实现了最好的准确性(87.8%)。下游任务中的传输性能优于有监督的预训练,并显示出有希望的缩放行为。

  • 非对称结构。编码部分仅处理(随机抽样)未被mask的patch;解码部分为轻量级网络,用于将解码输出的表征和mask token进行重构。

  • Mask ratio可高达75%,是个有趣的自监督任务。

  • 在 ImageNet 上使用一种基于 ViT 的 Encoder-Decoder 结构,预测图像中被随机抹除的部分; 然后在下游任务中使用 Encoder 部分作为 backbone 取得了非常显著的性能提升。 它的优点是:

    • 只使用 ImageNet 就能训练超大的 ViT 模型, 比如 ViT-L
    • 在下游任务上性能超过 SOTA
    • 需要的计算资源非常小
  • MAE的输入遵循 ViT,论文将图像划分为规则的非重叠patches。 然后对patches的子集进行采样并屏蔽(即删除)剩余的patches。 采样策略很简单**:按照均匀分布对随机patches进行采样,无需替换**。 简单地将其称为“随机抽样”。

  • 具有高掩码率(即移除补丁的比率)的随机采样在很大程度上消除了冗余,从而创建了一项无法通过从可见相邻patches外推来轻松解决的任务。 均匀分布可防止潜在的中心偏差(即,图像中心附近有更多的掩码patches)。 最后,高度稀疏的输入为设计高效编码器创造了机会。

Introduction
  • GPT和BERT已经将大型自然语言处理(NLP)模型的性能提升到了一个新的高度。此文最大的贡献,可能是在NLP和CV两大领域之间架起了一座更简便的桥梁。

    • 事先遮住一些文本片段,让AI模型通过自监督学习,通过海量语料库的预训练,逐步掌握上下文语境,把这些被遮住的片段,用尽可能合乎逻辑的方式填回去。
    • 这和做「完形填空」的方式有些类似。经过海量数据的学习和训练,AI模型慢慢学会了自己生成自然文本。目前,随着GPT及其后续改进模型的不断进步,生成的自然文本几乎可以乱真。
  • 深度学习见证了持续增长的能力和容量的架构的爆炸。借助硬件的快速增长,今天的模型可以轻松地容纳一百万张图像[ImageNet: A large-scale hierarchical image database.],并开始需要数亿张——通常是公共无法访问的标记图像[An image is worth 16x16 words: Transformers for image recognition at scale.]。

  • 这种对数据的匮乏已经通过自监督的预训练在自然语言处理(NLP)中得到成功解决。基于GPT 系列的自回归语言建模和BERT 的掩码自动编码的解决方案在概念上很简单:它们删除一部分数据,并学习预测删除的内容。这些方法现在能够训练包含超过一千亿个参数的可概括的NLP模型[Language models are few-shot learners.]。

  • masked autoencoders的想法,一种更具泛化能力的去噪自动编码器[Extracting and composing robust features with denoising autoencoders.],也适用于计算机视觉。事实上,与视觉密切相关的研究早于BERT。然而,尽管BERT的成功引起了人们对这一想法的极大兴趣,但视觉中自动编码方法的进展落后于NLP。本文作者问:是什么让masked autoencoders在视觉和语言之间有所不同?试图从以下角度回答这个问题:

    • 直到最近,架构都是不同的。在视觉上,卷积网络在过去十年中占主导地位。卷积通常在规则的网格上操作,并将诸如mask tokens或positional embeddings之类的“indicators”集成到卷积网络中并不简单。,随着Vision Transformers (ViT) 的引入,这种架构上的差距已经得到解决,应该不再是一个障碍。

      • positional embeddings

        • 位置和顺序对于一些任务十分重要,例如理解一个句子、一段视频。位置和顺序定义了句子的语法、视频的构成,它们是句子和视频语义的一部分。循环神经网络RNN本质上考虑到了句子中单词的顺序。因为RNN以顺序的方式逐字逐句地解析一个句子,这将把单词的顺序整合到RNN中。

        • Transformer使用多头注意力机制(Multi-Head Self-Attention),从而避免使用了RNN的递归方法,加快了训练时间,同时,它可以捕获句子中的长依赖关系,能够应对更长的输入。

        • 为了使模型能够感知到输入的顺序,可以给每个单词添加有关其在句子中位置的信息,这样的信息就是位置编码(positional embedding, PE)。

        • 如果给定一个长为 T 的文本,最简单的位置编码就是计数,即使用 pos=0,1,2…T-1 作为文本中每个字的位置编码了。这样这个序列是没有上界的

          • 最后一个字比第一个字的编码大太多,和字嵌入合并以后难免会出现特征在数值上的倾斜
          • 它比一般的字嵌入的数值要大,对模型可能有一定的干扰。
        • 位置编码最好具有一定的值域范围,使用文本长度对每个位置作归一化,得到 P E = p o s T − 1 PE=\frac{pos}{T-1} PE=T1pos。所有位置编码都落入[0,1]区间,但是问题也是显著的:不同长度文本的位置编码步长是不同的,在较短的文本中紧紧相邻的两个字的位置编码差异,会和长文本中相邻数个字的两个字的位置编码差异一致。

        • 位置编码最核心的就是相对次序关系,尤其是上下文中的次序关系,如果使用这种方法,那么在长文本中相对次序关系会被稀释

        • 位置编码的需求:

          • 需要体现同一个单词在不同位置的区别;
          • 又需要值域落入一定数值区间内的编码,又需要保证编码与文本长度无关;
          • 需要体现一定的先后次序关系,并且在一定范围内的编码差异不应该依赖于文本长度
          • P E ( p o s ) = s i n ( p o s α ) PE(pos)=sin(\frac{pos}{\alpha}) PE(pos)=sin(αpos),其中 α用来调节位置编码函数的波长,当 α比较大时,波长比较长,相邻字的位置编码之间的差异比较小
          • 如果α 比较大,相邻字符之间的位置差异体现得不明显;如果α 比较小,在长文本中还是可能会有一些不同位置的字符的编码一样,这是因为[-1,1]空间的表现范围有限。
          • 既然字嵌入的维度是 d m o d e l d_{model} dmodel ,自然也可以使用一个 d m o d e l d_{model} dmodel维向量来表示某个位置编码 [ − 1 , 1 ] d m o d e l [-1,1]^{d_{model}} [1,1]dmodel的表示范围要远大于[-1,1]。
          • 不同维度上应该用不同的函数操纵位置编码,这样高维的表示空间才有意义。
        • 位置编码将位置信息注入到输入里,本文使用不同频率的正弦、余弦函数。

          • P E ( p o s , 2 i ) = s i n ( p o s 1000 0 2 i d m o d e l ) P E ( p o s , 2 i + 1 ) = c o s ( p o s 1000 0 2 i d m o d e l ) PE(pos,2i)=sin(\frac{pos}{10000^{\frac{2i}{d_{model}}}})\\ PE(pos,2i+1)=cos(\frac{pos}{10000^{\frac{2i}{d_{model}}}}) PE(pos,2i)=sin(10000dmodel2ipos)PE(pos,2i+1)=cos(10000dmodel2ipos)
        • 这里不同维度上sin/cos的波长从 2Π 到 1000·Π都有;区分了奇偶数维度的函数形式。这使得每一维度上都包含了一定的位置信息,而各个位置字符的位置编码又各不相同。

        • 首先,它不是一个单一的数值,它是关于句子中一个特定位置信息的d维的向量。

        • 其次,这种编码没有集成到模型本身上。相反,这个向量用于给每个单词分配一个有关其在句子中位置的信息。换句话说,PE只和输入有关,而和模型无关

    • 语言和视觉的信息密度是不同的。语言是人类产生的信号,具有高度的语义和信息密度。当训练一个模型来预测每句话中只有几个缺失的单词时,这项任务似乎会诱发复杂的语言理解。相反,图像是具有大量空间冗余的自然信号,例如,丢失的补片可以从相邻的补片恢复,而几乎不需要对部件、对象和场景的高级理解。为了克服这种差异,并鼓励学习有用的特征,本文作者证明了一个简单的策略在计算机视觉中很有效:非常高比例的随机掩蔽补丁。这种策略极大地减少了冗余,并创建了一个具有挑战性的自我监督任务,该任务需要超越低级图像统计的整体理解。为了对重建任务有一个定性的了解,请看下面3张图。

      • 在这里插入图片描述
      • ImageNet验证图像的示例结果。对于每组的三幅图片,显示了掩蔽图像(左)、MAE重建(中)和ground-truth(右)。屏蔽率为80%,196个补丁中只剩下39个,重建出来的结果还是符合语义约束的。由于没有计算可见补片上的损失,可见补片上的模型输出在质量上更差。人们可以简单地用可见补丁覆盖输出以提高视觉质量。本文有意选择不这样做,这样可以更全面地展示方法的细节。
      • 在这里插入图片描述
      • COCO验证图像的示例结果,使用在ImageNet上训练的MAE(与上图中的模型权重相同)。观察最右边两个例子中的重构,虽然与ground-truth不同,但在语义上似乎是合理的。
      • 在这里插入图片描述
      • 使用以75%的掩蔽率预训练的MAE重构ImageNet验证图像,但是应用于具有更高掩蔽率的输入。预测结果与原始图像大相径庭,表明该方法有一定泛化能力。
    • 自动编码器的解码器将潜在表示映射回输入,在重建文本和图像之间扮演不同的角色。在视觉中,解码器重建像素,因此其输出的语义级别低于普通识别任务。这与自然语言相反,在语言中,解码器预测包含丰富语义信息的缺失单词。虽然在BERT中,解码器可能是微不足道的(MLP) ,但本文工作发现,对于图像,解码器设计在确定所学习的潜在表示的语义级别方面起着关键作用

  • 在这种分析的驱动下,提出了一种简单、有效、可扩展的用于视觉表征学习的掩码自动编码器(MAE)。MAE从输入图像中屏蔽随机碎片,并在像素空间中重建丢失的碎片。它有一个不对称的编解码器设计。本文的编码器只对可见的补丁子集进行操作(没有掩码标记),本文的解码器是轻量级的,可以从潜在表示和掩码标记一起重建输入(下图)。

    • 在这里插入图片描述
    • MAE框架。在预训练期间,图像补片的大的随机子集(例如,75%)被屏蔽掉。编码器应用于可见补丁的小子集。在编码器之后引入遮罩标志,并且由以像素为单位重构原始图像的小型解码器来处理全套编码的补丁和遮罩标志。在预训练之后,解码器被丢弃,并且编码器被应用于未被破坏的图像(完整的补丁集合)用于识别任务。
    • 对图片切分 patch, 随机挑选少部分(比如文中25%)作为网络输入
    • 输入通过 encoder 得到对应编码后的 encoded patches
    • 将 encoded patches 还原到对应的原始位置,并在缺失的部分补上 masked patches
    • 送入 decoder, 每个 decoder 预测对应 patch 的图像像素点;
    • 计算预测的像素和原始图片的像素之间 MSE(均方误差) 作为 loss。
    • 取训练完的模型的 encoder 部分作为下游任务的 basemodel 并在下游任务下 finetune。
  • 在本文的非对称编码器-解码器中,将掩码标记转移到小解码器导致计算量的大幅减少。在这种设计下,非常高的屏蔽率(例如,75%)可以实现双赢的情况:它优化了准确性,同时允许编码器仅处理一小部分(例如,25%)补丁。这可以将总体预训练时间减少3倍或更多,并同样减少内存消耗,能够轻松地将本文的MAE扩展到大型模型。

  • MAE学习泛化能力非常高的模型。通过MAE预训练,可以在ImageNet-1K上训练像ViT-Large/-Huge 这样的数据匮乏模型,并提高泛化性能。对于一个普通的ViT-Huge模型,当在ImageNet-1K上进行微调时,达到了87.8%的准确率。这优于所有以前仅使用ImageNet-1K数据的结果。

  • 还评估了对象检测、实例分割和语义分割的迁移学习。在这些任务中,本文的预训练取得了比监督预训练更好的结果,更重要的是,通过放大模型观察到了显著的收益。这些观察结果与NLP中的自我监督预训练中所见证的一致,希望它们将使视觉领域能够探索类似的效果。

  • 去噪自动编码器(DAE)

    • 在传统自动编码器的基础上,通过向输入中注入噪声,然后利用含噪声的“腐坏”的样本去重构不含噪声的“干净”输入,这是与传统编码器的主要区别。
      • 在这里插入图片描述
    • 这种训练策略也使得DAE能够学习到更能反映输入数据的本质特征。传统自动编码器单纯依靠最小化输入与重构信号之间的误差来得到输入的隐含层特征表示,但这种训练策略并不能保证提取到数据的本质特征,因为单纯依靠最小化重构误差可能导致编码器学习到的特征仅仅是原始输入的复制
  • Self-supervised Learning

    • 一般机器学习分为监督学习,非监督学习和强化学习。而 self-supervised learning 是无监督学习里面的一种,主要是希望能够学习到一种通用的特征表达用于下游任务。

    • 其主要的方式就是通过自己监督自己,比如把一段话里面的几个单词去掉,用他的上下文去预测缺失的单词,或者将图片的一些部分去掉,依赖其周围的信息去预测缺失的 patch。

    • 在预训练阶段使用无标签的数据集 (unlabeled data),因为有标签的数据集很贵,打标签得要多少人工劳力去标注,那成本是相当高的,太贵。相反,无标签的数据集网上随便到处爬,它便宜

    • 在训练模型参数的时候,不追求把这个参数用带标签数据从初始化的一张白纸给一步训练到位,原因就是数据集太贵。于是Self-Supervised Learning就想先把参数从一张白纸训练到初步成型,再从初步成型训练到完全成型

    • 预训练模型的时候,就是模型参数从一张白纸初步成型的这个过程,还是用无标签数据集。等把模型参数训练个八九不离十,这时候再根据下游任务 (Downstream Tasks)的不同去用带标签的数据集把参数训练到完全成型,那这时用的数据集量就不用太多了,因为参数经过了第一阶段就已经训练得差不多了。

    • 可以分成3类:Data Centric, Prediction (也叫 Generative) 和 Contrastive。其中的主流就是基于 Generative 的方法和基于 Contrative 的方法。

      • 基于 Generative 的方法主要关注的重建误差,比如对于 NLP 任务而言,一个句子中间盖住一个 token,让模型去预测,令得到的预测结果与真实的 token 之间的误差作为损失。

        • 直接在 pixel level 上计算 loss 是一种很直观的做法,除了这种直接的做法外,还有生成对抗网络的方法,通过判别网络来算 loss。
      • 基于 Contrastive 的方法不要求模型能够重建原始输入,而是希望模型能够在特征空间上对不同的输入进行分辨。

        • 在 feature space 上构建距离度量;
        • 通过特征不变性,可以得到多种预测结果;
        • 使用 Siamese Network;
        • 不需要 pixel-level 重建。
      • 在这里插入图片描述

Related Work
  • 掩码语言建模及其自回归对应物,例如BERT和GPT ,是NLP预训练的非常成功的方法。这些方法保留输入序列的一部分,并训练模型来预测丢失的内容。这些方法已经被证明具有很好的扩展性,大量的证据表明,这些预先训练的表示法可以很好地推广到各种下游任务

  • 自动编码是学习表示的经典方法。它有一个将输入映射到潜在表示的编码器和一个重建输入的解码器。例如,PCA和k-means是自动编码器。去噪自动编码器(DAE) 是一类自动编码器,它破坏输入信号并学习重建原始的、未被破坏的信号。一系列方法可以被认为是不同破坏下的广义DAE,例如,掩码像素或移除颜色通道。本文的MAE是去噪自动编码的一种形式,但在许多方面不同于经典的DAE。

  • 掩码图像编码方法从被掩蔽破坏的图像中学习表示。[Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion.]的开创性工作将掩蔽作为DAE中的一种噪声类型。上下文编码器使用卷积网络修补大的缺失区域。受NLP成功的激励,最近的相关方法基于Transformers。iGPT对像素序列进行操作,并预测未知像素。ViT论文研究了用于自我监督学习的掩码补丁预测。BEiT [BEiT: BERT pre-training of image transformers.]提出预测离散标记。

    • discrete tokens:因为 ViTs 过度依赖局部特征(例如,滋扰和纹理)并且未能充分利用全局上下文(例如,形状和结构)。因此,ViT 无法泛化到分布外的真实世界数据;谷歌提出"离散表示":增强视觉Transformer的鲁棒性,一种简单高效的视觉Transformer输入表示,其中图像块表示为像素和离散标记的组合嵌入。该方法是通用的,并且适用于多种ViT架构,可提高其鲁棒性。添加由矢量量化编码器产生的离散标记(discrete tokens),对 ViT 的输入层提出了一种简单而有效的架构修改。
    • 自监督学习方法在计算机视觉中引起了极大的兴趣,通常集中在不同前置代理的预训练任务上。最近,对比学习已经流行,其对两个或更多视图之间的图像相似性和不相似性(或仅相似性)进行建模。对比和相关方法强烈依赖于data augmentation。自动编码追求一个概念上不同的方向,它表现出不同的行为。
Approach
  • 掩码自动编码器(MAE)是一种简单的自动编码方法,在给定部分观测值的情况下重构原始信号。像所有的自动编码器一样,本文的方法有一个将观察到的信号映射到潜在表示的编码器,和一个从潜在表示重构原始信号的解码器。与经典的自动编码器不同,本文采用了一种非对称设计,允许编码器只对部分观察到的信号(没有掩码标记)进行操作,以及一种轻型解码器,它从潜在表示和掩码标记中重建完整的信号。

  • Masking.

    • 遵循ViT,将图像分成规则的非重叠小块。然后,对补丁的子集进行采样,并屏蔽(即移除)剩余的补丁。本文的抽样策略很简单:按照均匀分布抽样无替换的随机补丁。简单地称之为“random sampling”。
    • 具有高掩蔽比率(即,移除的补丁的比率)的随机采样极大地消除了冗余,从而产生了一个不能通过从可见的相邻补丁外推而容易解决的任务。均匀的分布防止了潜在的中心偏差(即,图像中心附近有更多被遮蔽的斑块)。最后,高度稀疏的输入为设计高效编码器创造了机会
  • MAE encoder

    • 本文的编码器是一个ViT ,但只适用于可见的,无遮蔽的补丁。就像在标准ViT中一样,本文的编码器通过添加位置嵌入的线性投影来嵌入补丁,然后通过一系列变换块处理结果集。然而,本文的编码器仅在全集的一个小的子集(例如,25%)上操作。被屏蔽的补丁被移除;不使用掩码标记。这使得可以用很少的计算和内存来训练非常大的编码器。完整的集合由一个轻量级的解码器处理。
  • MAE decoder

    • MAE解码器的输入是大量标记,包括编码的可见补丁和掩模标记。每个掩码标记是一个共享学习的向量,它指示要预测的缺失补片的存在。向这个全集中的所有记号添加位置嵌入;如果没有这一点,掩码标记将没有关于它们在图像中的位置的信息。解码器有另一系列Transformer 模块。
    • MAE解码器仅在预训练期间用于执行图像重建任务(仅编码器用于产生用于识别的图像表示)。因此,可以以独立于编码器设计的方式灵活地设计解码器架构。用非常小的解码器做实验,如比编码器更窄更浅。例如,与编码器相比,默认解码器每个令牌的计算量少于10%。通过这种不对称设计,全套令牌仅由轻量级解码器处理,这显著减少了预训练时间。
  • Reconstruction target

    • 本文的MAE通过预测每个蒙版的像素值来重建输入。解码器输出中的每个元素都是代表一个面片的像素值向量。解码器的最后一层是线性投影,其输出通道的数量等于面片中像素值的数量。解码器的输出被整形以形成重建图像。本文的损失函数计算像素空间中重建图像和原始图像之间的均方误差(MSE)。与BERT类似,只计算掩蔽补片的损失。
    • 还研究了一个变体,它的重建目标是每个被掩蔽的补片的归一化像素值。具体来说,计算一个补丁中所有像素的平均值和标准差,并使用它们来归一化这个补丁。在实验中,使用归一化像素作为重建目标提高了表示质量。
  • Simple implementation.

    • 本文的MAE预训练可以有效地实现,并且重要的是,不需要任何专门的稀疏操作。
    • 首先,为每个输入patch生成一个token(通过线性投影和附加的位置嵌入)。接下来,根据屏蔽率随机打乱tokens列表,并删除列表的最后一部分。该过程为编码器产生一小部分tokens,并且相当于采样补片而不替换。
    • 在编码之后,将mask tokens的列表附加到编码补丁的列表,并且对这个完整的列表进行去混洗(反转随机混洗操作)以将所有记号与其目标对齐。解码器被应用于该完整列表(添加了位置嵌入)。如上所述,不需要稀疏操作。这个简单的实现引入了可以忽略的开销,因为混洗和去混洗操作很快。
ImageNet Experiments
  • 在ImageNet-1K (IN1K) 训练集上进行自我监督的预训练。然后进行监督训练,通过端到端微调或线性探测来评估这些表示。报告了单个224×224剪切图片的最高验证准确度。

  • Baseline: ViT-Large.

    • 使用ViT-Large (ViT-L/16) 作为消融研究的主干。ViT-L非常大(比ResNet-50大一个数量级),容易过拟合。以下是从零开始训练的ViT-L与从本文的基线MAE微调的ViT-L之间的比较:
      • 在这里插入图片描述
    • 从零开始训练受监督的ViT-L并不简单,需要一个强正则化的好方法(82.5%,见附录A.2)。即便如此,本文的MAE预训练还是做出了很大的改进。这里的微调只针对50个epoch(而不是从零开始的200个epoch),这意味着微调精度严重依赖于预训练
  • Main Properties

    • Masking ratio.

      • 下图显示了掩蔽比的影响。最佳比率效果高得惊人。75%的比率对于线性探测和微调都是好的。这一行为与BERT形成对比,BERT的典型掩蔽率为15%。本文的掩蔽比也远高于计算机视觉相关著作中的掩蔽比(20%到50%)。
        • 在这里插入图片描述
        • 高屏蔽率(75%)适用于微调(上图)和线性探测(下图)。y轴是本文所有图中的ImageNet-1K验证准确度(%)。
      • 本模型推断缺失的补丁产生不同的、但似乎合理的输出。它使物体和场景的格式塔变得有意义,这不能简单地通过延伸线条或纹理来完成。假设这种类似推理的行为与有用表征的学习有关。
      • 上图还显示了线性探测和微调结果遵循不同的趋势。对于线性探测,精度随着掩蔽比稳步增加,直到最佳点:精度差距高达20% (54.6%对73.5%)。对于微调,结果对比率不太敏感,并且大范围的掩蔽比率(40–80%)工作良好。上图中的所有微调结果都优于从头开始训练(82.5%)。
    • Decoder design.

      • 本文的MAE解码器可以灵活设计,如下表a和b所示。
        • 在这里插入图片描述
      • 表a显示了不同的解码器深度(转换器模块的数量)。足够深的解码器对于线性探测是重要的。这可以用像素重建任务和识别任务之间的差距来解释:自动编码器中的最后几层更专门用于重建,但与识别不太相关。一个合理深度的解码器可以解释重建特殊化,将潜在的表示留在一个更抽象的层次上。这种设计可以使线性探测提高8%(表a,“lin”)。但是,如果使用微调,可以调整编码器的最后几层以适应识别任务。解码器深度对改善微调的影响较小(表a,“ft”)。
      • 采用单块解码器的MAE可以通过微调(84.8%)来实现强大的性能。请注意,单个Transformer block是将信息从可见令牌传播到mask tokens的最低要求。这样的小解码器可以进一步加快训练速度。
      • 在表b中,研究了解码器宽度(通道数)。默认使用512-d,它在微调和线性探测下表现良好。较窄的解码器也可以很好地进行微调。
      • 总的来说,默认的MAE解码器是轻量级的。它有8个块,宽度为512-d(下表中的灰色)。与ViT-L (24块,1024-d)相比,它的每个令牌只有9%的FLOPs。因此,虽然解码器处理所有令牌,但它仍然只是整个计算的一小部分。
        • 在这里插入图片描述
        • 在ImageNet-1K上使用ViT-L/16进行的MAE消融实验。报告了微调(ft)和线性探测(lin)的准确性(%)。如果没有指定,默认为:解码器深度为8,宽度为512,重建目标为非规格化像素,数据扩充为随机调整大小裁剪,掩蔽比为75%,预训练长度为800个epoch。默认设置以灰色标记。
    • Mask token.

      • 本文MAE的一个重要设计是跳过编码器中的掩码标记[M],稍后在轻量级解码器中应用它。上表c图研究这种设计。
      • 如果编码器使用掩码标记,它的性能会更差:在线性探测中,精度会下降14%。在这种情况下,预训练和部署之间存在差距:该编码器在预训练中的输入中有很大一部分掩码标记,这在未损坏的图像中是不存在的。这种差距可能会降低部署的准确性。通过从编码器中移除掩码标记,本文约束编码器总是看到真实的补丁,从而提高准确性。
      • 此外,通过跳过编码器中的掩码标记,大大减少了训练计算。在上表c中,将总训练失败次数减少了3.3倍。这在我们的实施中导致了2.8倍的挂钟加速(见下表)。
        • 在这里插入图片描述
      • 对于较小的解码器(1块)、较大的编码器(ViT-H)或两者,The wall-clock speedup甚至更大(3.5–4.1倍)。对于75%的掩蔽率,加速可以大于4倍,部分原因是self-attention的复杂性是指数级别的。此外,内存大大减少,这可以通过大批量训练来训练甚至更大的模型或加速更多。时间和内存效率使得MAE有利于训练非常大的模型。
    • Reconstruction target.

      • 在消融实验记录表d中比较了不同的重建目标。本文的结果是基于没有(每块)归一化的像素。使用标准化像素可以提高精确度。这种per-patch归一化增强了局部对比度。
      • 在另一个变体中,在小块空间中执行PCA,并且使用最大的PCA系数(这里是96)作为目标。这样做会降低准确性。两个实验都表明高频分量在本文的方法中是有用的。
      • 还比较了预测标记的MAE变体,即BEiT中使用的目标。特别是对于这个变体,本文使用DALLE预训练的dVAE作为标记器,遵循BEiT。这里,MAE解码器使用交叉熵损失来预测token indices。这种记号化相对于非规格化像素提高了0.4%的微调精度,但相对于规格化像素没有优势。它也降低了线性探测的准确性。在后文,进一步证明了在迁移学习中,标记化是不必要的。
      • 基于像素的MAE比tokenization简单得多。dVAE tokenizer需多一个预训练阶段,这可能取决于额外的数据(250万张图像)。dVAE编码器是一个大型卷积网络(ViT-L的40% FLOPs ),增加不小的开销。使用像素不会遇到这些问题。
    • Data augmentation

      • 消融实验数据记录表e研究了数据扩充对本文的MAE预训练的影响。
      • 本文的MAE使用固定大小或随机大小(两者都有随机水平翻转)的仅裁剪增强效果很好。增加颜色扰动会降低结果,所以在其他实验中不使用它。
      • 令人惊讶的是,本文的MAE即使没有使用数据增强(只有中间裁剪,没有翻转)也表现得很好。这一特性与对比学习和相关方法截然不同,后者严重依赖于数据扩充。据观察,对于BYOL和SimCLR,使用仅裁剪增强会分别降低13%和28%的精度。此外,没有证据表明对比学习可以在没有增强的情况下工作:一幅图像的两个视图是相同的,这是可以很容易地满足一个解决方案。
      • 在MAE中,数据扩充的作用主要是通过随机屏蔽来实现的。对于每次迭代,掩码是不同的,因此它们生成新的训练样本,而不管数据增加。前置任务由于masking而变得困难,并且需要更少的扩充来规范训练。
    • Mask sampling strategy.

      • 在消融实验数据记录表f中,比较了不同的掩模采样策略,如下图所示。
        • 在这里插入图片描述
        • 掩模采样策略决定了前置任务的难度,影响重建质量和表征。这里,每个输出来自用指定的屏蔽策略训练的MAE。左:随机抽样。中间:逐块采样,移除大的随机块。右图:网格状采样,每四个面片保留一个。图像来自验证集。
      • BEiT中提出的逐块掩蔽策略倾向于移除大块(上图中)。本文的MAE在50%的比率下工作得相当好,但是在75%的比率下会降级。这项任务比随机抽样更难,因为观察到更高的训练损失。重建也更加模糊。
      • 还研究了网格采样,它有规律地保持每四个面片中的一个(上图右)。这是一个更容易的任务,并具有较低的训练损失。重建更加清晰。然而,表现质量较低。
      • 简单的随机抽样最适合MAE。它允许更高的屏蔽率,这提供了更大的加速优势,同时还享有良好的准确性。
    • Training schedule.

      • 消融实验是基于800个epochs的预训练。下图显示了训练计划长度的影响。准确度随着训练时间的延长而稳步提高。事实上,即使在1600个epoch时,也没有观察到线性探测精度的饱和。
        • 在这里插入图片描述
        • Training schedules.更长的训练时间表会带来明显的改善。这里的每一点都是完整的训练计划。型号为ViT-L
      • 这种行为不同于对比学习方法,例如,对于ViT-L,MoCo v3 在300个时期饱和。注意,MAE编码器每个时期仅看到25%的补丁,而在对比学习中,编码器每个时期看到200%(两次裁剪)或甚至更多(多次裁剪)的补丁
  • Comparisons with Previous Results

    • Comparisons with self-supervised methods

      • 在下表中,比较了自监督ViT模型的微调结果。对于ViT-B,所有方法的表现都很接近。对于ViT-L,方法之间的差距更大,这表明更大的模型面临的挑战是减少过拟合。
        • 在这里插入图片描述
        • 与ImageNet1K上之前结果的比较。预训练数据是ImageNet-1K训练集(除了BEiT中的tokenizer是在250M DALLE数据上预训练的)。所有自监督方法都通过端到端微调进行评估。ViT型号有B/16、L/16、H/14。每一栏的最佳选项都有下划线。所有结果都是在224的图像尺寸上,除了ViT-H在448上有一个额外的结果。这里,MAE重建归一化像素,并针对1600个epoch进行预训练。
      • MAE可以很容易地扩大规模,并从较大的模型中显示出稳定的改进。使用ViT-H (224尺寸)获得了86.9%的准确度。通过用448大小进行微调,仅使用1K数据就实现了87.8%的准确度。基于高级网络,在所有仅使用1K数据的方法中,之前的最佳准确度为87.1% (512大小)。在竞争激烈的IN1K基准测试(无外部数据)中,本文比最先进的技术有了不小的提高。本文的结果是基于普通的ViT,预计高级网络会表现得更好。
      • 与BEiT相比,MAE更加精确,同时也更加简单和快速。与预测标记的BEiT相比,本文的方法重建像素:BEiT使用ViT-B重建像素时出现1.8%的下降。本文MAE不需要dVAE预训练。此外,MAE比BEiT快得多(每epoch3.5倍),原因如消融实验数据记录表c所示。
      • 上表中的MAE模型针对1600个epoch进行了预训练,以获得更高的精度。尽管如此,当在相同的硬件上训练时,总预训练时间少于其他方法。例如,在128个TPU v3内核上训练ViT-L,MAE的训练时间是1600个epoch31小时,MoCo v3的是300个epoch36小时。
    • Comparisons with supervised pre-training

      • 在最初的ViT论文中,ViT-L在IN1K中训练时降解。实施的监督训练效果更好,但准确性饱和。参见下图。
        • 在这里插入图片描述
        • MAE预训练与监督预训练,通过ImageNet-1K (224大小)中的微调进行评估。与在IN1K或JFT300M中训练的原始ViT结果进行比较。
      • MAE预训练,仅使用IN1K,可以更好地概括:对于更高容量的模型,从头训练的收益更大。它遵循的趋势类似于中的JFT-300M监督预训练。这个比较表明,MAE可以帮助放大模型尺寸。
  • Partial Fine-tuning

    • 消融实验记录表显示**,线性探测和微调结果基本上不相关**。线性探测在过去几年已经成为一种流行的规约;然而,它错过了追求强大但非线性特征的机会——这确实是深度学习的优势。作为折衷,研究一个局部微调规约:微调最后几层,同时冻结其他层。该规约也用于早期工作,例如[How transferable are features in deep neural networks?,Colorful image colorization]。(i.e. :也就是,亦即(源自拉丁文id est),换而言之。)
    • 下图显示了结果。值得注意的是,仅微调一个Transformer block就可将精度从73.5%大幅提升至81.0%。此外,如果仅微调最后一个块的“一半”(即,它的MLP子块),可以得到79.1%,比线性探测好得多。这个变体本质上是微调一个MLP头。微调几个块(例如4或6个)可以达到接近完全微调的精度。(w.r.t. : with respect to 的缩写。是 关于;谈及,谈到的意思。)
      • 在这里插入图片描述
      • Partial fine-tuning,ViT-L的部分微调结果关于消融实验记录表中默认设置下微调Transformer blocks的数量。微调0块是线性探测;微调24块是全微调。MAE表示的线性可分性较差,但是如果对一个或多个模块进行调优,它始终比MoCo v3好。
    • 在上图中,还与MoCo v3 进行了比较,这是一种具有ViT-L结果的对比方法。MoCo v3具有更高的线性探测精度;但是,它的所有局部微调结果都比MAE差。调优4块时差距为2.6%。虽然MAE表示的线性可分性较低,但它们是更强的非线性特征,并且在非线性磁头被微调时表现良好。
    • 这些观察表明,线性可分性并不是评价表征质量的唯一标准。还观察到,线性探测与迁移学习性能没有很好的相关性,例如对于对象检测。在NLP中,线性评估并不经常用于基准预训练。
Transfer Learning Experiments
  • Object detection and segmentation.

    • 在COCO上端到端微调Mask R-CNN 。ViT主干网络适用于FPN 。将这种方法应用于(COCO object detection and segmentation)数据实验表中的所有条目。记录了用于对象检测的box AP和用于实例分割的mask AP。
    • 与有监督的预训练相比,MAE在所有配置下都表现得更好。使用更小的ViT-B,MAE比监督预训练高2.4分(50.3比47.9,APbox)。更重要的是,使用更大的ViT-L,MAE预训练比监督预训练高出4.0分(53.3比49.3)。
    • 基于像素的MAE比基于令牌的BEiT更好或相当,而MAE更简单、更快。MAE和BEiT都比MoCo v3好,MoCo v3与有监督的预训练相当。
  • Semantic segmentation.

    • 使用UperNet在ADE20K 上进行实验。下表显示,本文的预训练明显改善了监督预训练的结果,例如,ViT-L提高了3.7个点。基于像素的MAE也优于基于令牌的BEiT。这些观察结果与COCO的一致。

      • 在这里插入图片描述
      • ADE20K semantic segmentation 使用UperNet的ADE20K语义分割(mIoU)。BEiT结果使用官方代码复制。其他条目基于本文的实现。自监督条目使用无标签的IN1K数据。
    • UPerNet是基于特征金字塔网络(FPN)和金字塔池模块(PPM)的模型。不需要膨胀卷积,运算符既耗时又消耗内存。

      • 人类对世界的视觉理解是多层次的,可以轻松分类场景,检测其中的物体,乃至识别物体的部分、纹理和材质。
      • 旷视科技提出一种称之为统一感知解析(Unified Perceptual Parsing/UPP)的新任务,要求机器视觉系统从一张图像中识别出尽可能多的视觉概念。
      • 多任务框架 UPerNet 被提出,训练策略被开发以学习混杂标注(heterogeneous annotations)。旷视科技在 UPP 上对 UPerNet 做了基准测试,结果表明其可有效分割大量的图像概念。这一已训练网络进一步用于发现自然场景中的视觉知识。
    • ADE20K

      • 是MIT Computer Vision团队发布的最大的用于语义分割和场景解析的开源数据集。数据集下载地址:http://groups.csail.mit.edu/vision/datasets/ADE20K/
      • 是用于场景解析的数据集,其包含 150 中物体类型,可被用于场景感知、解析、分割、多物体识别和语义理解。整个数据集(包含所有的图像和分割在内)的大小为 3.8Gb。MIT从下载、描述、浏览、评估等方面对该数据做了扼要介绍。
  • Classification tasks.

    • 下表研究了iNaturalists和Places任务的迁移学习。在iNaturalists上,本文的方法显示了强大的缩放行为:精度随着模型的增大而显著提高。成绩大大超过了以前的最好成绩。在Places上,MAE优于之前的最佳结果,这些结果是通过对数十亿张图像进行预训练而获得的。
      • 在这里插入图片描述
      • Transfer learning accuracy on classification datasets,使用在IN1K上预训练的MAE,在分类数据集上转移学习精度,然后进行微调。提供了与之前最佳结果的系统级比较。
      • 上表倒数第二条目是针对10亿张图像进行预训练。上表倒数第一条目:在35亿张图像上进行了预训练。
  • Pixels vs. tokens

    • 下表比较了作为MAE重建目标的像素与标记。虽然使用dVAE表征比使用非标准化像素更好,但在测试的所有情况下,它在统计上类似于使用标准化像素。这再次表明,对于MAE来说,标记化是不必要
      • 在这里插入图片描述
      • 像素与标记作为MAE重建目标,🔺是使用dVAE tokens和使用归一化像素的区别。这种差异在统计学上并不显著。
Discussion and Conclusion
  • 扩展性好的简单算法是深度学习的核心。在NLP中,简单的自我监督学习方法可以从指数级模型中获益。在计算机视觉中,尽管在自我监督学习方面取得了进展,但实际的预训练范例主要是受监督的。在这项研究中,在ImageNet和迁移学习中观察到,一种简单的自我监督方法,类似于NLP中的技术:自动编码器,提供了可扩展的好处。视觉中的自我监督学习现在可能正走上与NLP相似的轨迹
  • 另一方面,注意到图像和语言是不同性质的信号,这种差异必须小心处理。图像仅仅是记录的光,没有语义分解成文字的视觉模拟。本文不是试图移除对象,而是移除最有可能不形成语义段的随机补丁。同样,MAE重构像素,像素不是语义实体。然而,观察到MAE推断复杂的整体重建,表明它已经学习了许多视觉概念,即,语义。假设这种行为是通过MAE内部丰富的隐藏表示发生的。希望这一观点将激励未来的工作。
  • 更广泛的影响。所提出的方法基于训练数据集的学习统计来预测内容,因此将反映这些数据中的偏差,包括具有负面社会影响的偏差。该模型可能生成不存在的内容。这些问题值得进一步研究和考虑时,建立在这项工作,以产生图像。
Implementation Details
  • Implementation Details

    • 遵循标准的ViT架构。它具有一堆Transformer blocks ,每个块由一个多头自注意力块和一个MLP块组成,两者都具有LayerNorm(LN)。编码器以LN结尾。由于MAE编码器和解码器的宽度不同,在编码器后采用线性投影层来匹配。MAE将位置嵌入(正弦-余弦版本)添加到编码器和解码器输入中。MAE不使用相对位置和层缩放

      • 多层感知机(MLP,Multilayer Perceptron)也叫人工神经网络(ANN,Artificial Neural Network),除输入输出层,它中间可以有多个隐层,最简单的MLP只含一个隐层,即三层的结构。多层感知机层与层之间是全连接的。多层感知机最底层是输入层,中间是隐藏层,最后是输出层。 其提出主要是为了解决单层感知机无法解决的非线性问题。
      • 是一种前向结构人工神经网络ANN,映射一组输入向量到一组输出向量。MLP可以被看做是一个有向图,由多个节点层组成,每一层全连接到下一层。除了输入节点,每个节点都是一个带有非线性激活函数的神经元。使用BP反向传播算法的监督学习方法来训练MLP。MLP是感知器的推广,克服了感知器不能对线性不可分数据进行识别的弱点
    • 从编码器输出中提取特征用于微调和线性探测。由于ViT有一个类标记,为了适应这种设计,在MAE预训练中,将一个辅助伪标记附加到编码器输入。该token将被视为在线性探测和微调中训练分类器的类token。MAE在没有这个令牌的情况下也工作得很好(使用平均池化)。

    • Pre-training.

      • 默认设置如下表所示。不使用color jittering, drop path, 或者 gradient clip.。使用xavier uniform来初始化所有的Transformer blocks,使用线性lr缩放规则: lr = base lr×batchsize / 256。
        • 在这里插入图片描述
    • End-to-end fine-tuning.

      • 微调遵循监督ViT训练的惯例。默认设置如下表所示。在BEiT之后使用分层lr衰减。
        • 在这里插入图片描述
    • Linear probing.

      • 线性分类器训练遵循[An empirical study of training self-supervised Vision Transformers]。见下表。线性探测需要一个与端到端微调非常不同的方法。特别地,正则化通常对于线性探测是有害的。禁用许多常见的正则化策略:不使用mixup,cutmix ,drop path或color jittering,并且将权重衰减设置为零。

        • 在这里插入图片描述
        • 线性探测设置。使用LARS进行大批量快速训练;SGD与4096批次的工作方式类似。
      • mixup

        • 一种运用在计算机视觉中的对图像进行混类增强的算法,它可以将不同类之间的图像进行混合,从而扩充训练数据集。
        • mixup是一种非常规的数据增强方法,一个和数据无关的简单数据增强原则,其以线性插值的方式来构建新的训练样本和标签。
        • mixup能够减少对错误标签的记忆,增加对抗样本的鲁棒性,并能够稳定对生成对抗网络的训练过程。
        • mixup在成对样本及其标签的凸组合(convex combinations)上训练神经网络。规范神经网络增强了训练样本之间的线性表达。
          • 在这里插入图片描述
          • 同时对输入x及其对应label y做增强,对两张图片做融合,同时对他们的label做融合,其中 λ 是一个融合比例取值范围为0到1,由beta分布( α和 β 计算时相等,即都取 α )计算得到。yi,yj都是one-hot编码的label。
        • 在这里插入图片描述
        • 那种淡入淡出的效果差不多. 那么自然而然的, 对于目标检测它大概就像是这样:
          • 在这里插入图片描述
      • cutmix

        • 就是将一部分区域cut掉但不填充0像素而是随机填充训练集中的其他数据的区域像素值,分类结果按一定的比例分配

          • 在这里插入图片描述
        • xA和xB是两个不同的训练样本,yA和yB是对应的标签值,cutmix需生成的是新的训练样本和对应标签 x ~ \tilde{x} x~ y ~ \tilde{y} y~,公式如下:

          • x ~ = M ⊙ x A + ( 1 − M ) ⊙ x B y ~ = λ y A + ( 1 − λ ) y B \tilde{x}=M\odot{x_A}+(1-M)\odot{x_B}\\ \tilde{y}=\lambda{y_A}+(1-\lambda)y_B x~=MxA+(1M)xBy~=λyA+(1λ)yB

          • 其中 M ∈ { 0 , 1 } W ∗ H M\in\{0,1\}^{W*H} M{0,1}WH是为了dropd掉部分区域和进行填充的二进制掩码, ⊙ \odot 是逐像素相乘,1是所有元素都为1 的二进制掩码,λ与Mixup一样属于Beta分布: λ ~ B e t a ( α , α ) \lambda~Beta(α,α) λBeta(α,α).令α=1则λ服从(0,1)的均匀分布。

      • drop path

        • 其效果是将深度学习模型中的多分支结构随机”删除“
        • 局部丢弃,以一定的概率随机丢弃Join层,但必须保证起码有一条分支是通的;全局丢弃,随机选择一条分支
          • 在这里插入图片描述
      • color jittering

        • 对颜色的数据增强:图像亮度、饱和度、对比度变化;彩色变换
    • Partial fine-tuning

      • MAE部分微调遵循End-to-end fine-tuning.表中的设置,只是本文调整了微调epochs的数量。观察到,调优较少的块需要较长的时间表。将微调时期的数量设置为{50,100,200},并对每个被调优的块数量使用最优的一个。
  • Supervised Training ViT-L/H from Scratch

    • 在ImageNet-1K上从头开始训练有监督的ViT-L/H并不容易。训练不稳定。虽然对于较小的模型已经有了公开可用的实施的强有力的基准,但是对于较大的ViT-L/H的配方还没有被探索。将前面的方法直接应用到这些更大的模型是行不通的。在训练中经常观察到NaN损失。

    • 在下表中提供了本文的设置。使用0.3的weight decay、4096的大批量和长时间warmup,遵循原始ViT 。在[Generative pretraining from pix-els.]之后使用β2=0.95。使用下表中列出的正则化,并禁用其他正则化。这些选择都是为了提高训练稳定性。本文的设置可以在不损失NaN的情况下完成训练。

      • 在这里插入图片描述
    • ViT-L的准确度为82.6%(81.5% w/o EMA),ViT-H的准确度为83.1%(80.9% w/o EMA)。如果不使用EMA,ViT-L和ViT-H都表现出过度拟合的趋势。

    • 作为副产品,本文的ViT-B配方具有82.3%的准确率(82.1% w/o EMA),而[53]中的准确率为81.8%。

    • warmup

      • 一种学习率优化方法(最早出现在ResNet论文中)。在模型训练之初选用较小的学习率,训练一段时间之后(如:10epoches或10000steps)使用预设的学习率进行训练;
      • 模型的weights是随机初始化的,可以理解为训练之初模型对数据的“理解程度”为0(即:没有任何先验知识),在第一个epoches中,每个batch的数据对模型来说都是新的,模型会根据输入的数据进行快速调参,此时如果采用较大的学习率的话,有很大的可能使模型对于数据“过拟合”(“学偏”),后续需要更多的轮次才能“拉回来”;
      • 当模型训练一段时间之后(如:10epoches或10000steps),模型对数据具有一定的先验知识,此时使用较大的学习率模型就不容易学“偏”,可以使用较大的学习率加速模型收敛;
      • 当模型使用较大的学习率训练一段时间之后,模型的分布相对比较稳定,此时不宜从数据中再学到新特点,如果仍使用较大的学习率会破坏模型的稳定性,而使用小学习率更容易获取local optima。
  • Object Detection and Segmentation in COCO

    • 将vanilla ViT改装成Mask R-CNN中的FPN主干。ViT具有一堆Transformer blocks ,它们都以单一比例(例如,步距16)产生特征图。将该堆栈等分为4个子集,并应用卷积对中间特征图进行上采样或下采样,以产生不同的尺度(步长4、8、16或32,与标准ResNet相同)。FPN就是建立在这些多比例尺特征图上的。
    • 为了公平地比较不同方法,搜索了COCO object detection and segmentation表中每个条目的超参数(包括所有竞争对手)。搜索的超参数是learning rate, weight decay, drop path rate, and fine-tuning epochs.。将发布代码以及具体的配置。对于完整的模型和训练细节,加上额外的实验,见[Benchmarking detection transfer learning with vision transformers. In preparation, 2021.]。
  • Semantic Segmentation in ADE20K

    • 在BEiT的语义分割代码之后使用UperNet 。对100个epoch进行端到端微调,批量大小为16。搜索ADE20K semantic segmentation表中每个条目的最佳lr(包括所有竞争对手)。
    • BEiT的语义分割代码使用相对位置偏差。MAE预训练不使用它。为了公平比较,仅在迁移学习期间打开相对位置偏差,初始化为零。
  • Additional Classification Tasks

    • 按照Partial fine-tuning表中的设置进行iNaturalist和Places微调(Transfer learning accuracy on classification datasets,表)。我们为每个单独的数据集调整lr和微调时期。
Comparison on Linear Probing Results
  • 已经说明了线性探测精度和微调精度在很大程度上是不相关的,并且它们对于线性可分性有不同的关注点。我们注意到,现有的掩蔽图像编码方法在线性探测中通常没有竞争力(例如,比对比学习)。为了完整起见,在表12中,我们比较了基于掩蔽的方法的线性探测精度。
  • 配备ViT-L的MAE具有75.8%的线性探测精度。这大大优于以前的基于掩蔽的方法。另一方面,它仍然落后于该规约下的对比方法:例如,MoCo v3 对于ViT-L具有77.6%的线性探测准确度(图Partial fine-tuning)。
Robustness Evaluation on ImageNet
  • 在下表中,评估了本文的模型在ImageNet验证集的不同变体上的稳健性。使用在原始ImageNet(Comparisons with previous results on ImageNet1K.表)上微调的相同模型,并且只在不同的验证集上运行推理,没有任何专门的微调。下表显示了本文的方法具有很强的伸缩性:增加模型大小有很大的好处。除了IN-C中,增加图像大小在所有集合中都是有帮助的。本文模型的结果大幅度优于(专用系统的)以前的最佳结果。
    • 在这里插入图片描述
    • Robustness evaluation on ImageNet variants,在不同的ImageNet验证集上测试了相同的MAE模型,没有任何专门的微调。提供了与之前最佳结果的系统级比较。
  • 相比之下,监督训练的表现要差得多(上表底部;模型的描述在Supervised Training ViT-L/H from Scratch)。例如,有了ViT-H,MAE预训练在IN-A上比有监督的对手高出35%(68.2%对33.1%)。
  • 这篇论文仅用简单的 idea(即掩蔽自编码器,MAE)就达到了非常理想的性能,让人们看到了 Transformer 扩展到 CV 大模型的光明前景.
  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羞儿

写作是兴趣,打赏看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值