摘要
本文证明了掩蔽自动编码器(MAE)是一种可伸缩的计算机视觉自监督学习器。我们的MAE方法很简单:我们掩蔽输入图像的随机块并重建丢失的像素。它基于两个核心设计。首先,我们开发了一个非对称编解码器体系结构,编码器只在可见的patch子集上操作(没有掩码tokens),以及一个轻量级的解码器,它根据潜在的表示和掩码tokens重建原始图像。其次,我们发现,掩蔽高比例的输入图像,例如75%,会产生一个不平凡且有意义的自我监督任务。将这两种设计结合起来,使我们能够高效地训练大型模型:我们将训练速度加快了3倍或更多,并提高了精度。我们的可扩展方法允许学习泛化良好的大容量模型:例如,在仅使用ImageNet-1K数据的方法中,普通的Vit-Heavy模型获得了最好的准确率(87.8%)。下游任务的传输性能优于有监督的预训练,并显示出良好的可伸缩性。
1.引言
深度学习见证了能力和容量不断增长的体系结构的爆炸性增长[33、25、57]。在硬件快速发展的帮助下,今天的模型可以很容易地容纳100万张图像[13],并开始需要数亿张--通常是公开无法访问的--标签的图像[16]。
这种对数据的胃口已经通过自我监督的预训练在自然语言处理(NLP)中得到了成功的解决。这些解决方案基于GPT[47,48,4]中的自回归语言建模和ERT[14]中的掩码自动编码,概念上很简单:它们删除部分数据并学习预测删除的内容。这些方法现在能够训练包含1000多亿个参数的可推广的NLP模型[4]。
屏蔽式自动编码器是一种更通用的去噪自动编码器[58],这种想法是自然的,也适用于计算机视觉。事实上,与视觉密切相关的研究在BERT之前。然而,尽管在BERT的成功之后,人们对这一想法产生了浓厚的兴趣,但视觉自动编码方法的进展落后于NLP。我们问:是什么让mask自动编码在视觉和语言之间有所不同?我们试图从以下几个角度回答这个问题:
(I)直到最近,架构都是不同的。在视觉上,卷积网络在过去十年中占主导地位[33]。卷积通常在规则网格上操作,并且将诸如掩码tokens[14]或位置嵌入[57]之类的‘指示符’集成到卷积网络中并不简单。然而,随着Vision Transformers(VIT)[16]的引入,这一架构差距已经得到解决,不应再构成障碍。
(II)语言和视觉的信息密度不同。语言是人类产生的高度语义和信息密集的符号。当训练一个模型预测每句话只有几个遗漏的单词时,这项任务似乎可以诱导出复杂的语言理解。相反,图像是具有大量空间冗余的自然信号--例如,丢失的补丁可以从相邻的补丁中恢复,而不需要很高级别的部件、对象和场景的理解。为了克服这种差异并鼓励学习有用的特征,我们展示了一种简单的策略在计算机视觉中很有效:掩蔽随机patch的很高部分。这一战略在很大程度上减少了冗余,并创造了一项具有挑战性的自我监督任务,需要对低级别图像统计以外的全面了解。要对我们的重建任务有一个定性的了解,请参见图2-4。
(III)自动编码器的解码器在重建文本和图像方面扮演着不同的角色,它将潜在的表征映射回输入。在视觉上,解码器重建像素,因此其输出的语义级别低于普通识别任务。这与语言相反,在语言中,解码者预测包含丰富语义信息的缺失单词。虽然在BERT中,解码器可能是微不足道的(MLP)[14],但我们发现,对于图像,解码器设计在决定学习的潜在表征的语义水平方面起着关键作用。
在这一分析的基础上,我们提出了一种简单、有效、可扩展的掩蔽自动编码器(MAE)形式,用于视觉表征学习。我们的MAE掩盖了输入图像中的随机块,并在像素空间中重建了缺失的块。采用了非对称编解码器设计。我们的编码器仅在可见的patch子集(没有掩码token)上操作,并且我们的解码器是轻量级,并从潜在表示与掩码tokens一起重建输入(图1)。在我们的非对称编解码器中,将掩码tokens转移到较小的解码器上,大大减少了计算量。在这种设计下,非常高的掩蔽率(例如,75%)可以实现双赢:它优化了精度,同时允许编码器仅处理一小部分(例如,25%)的补丁。这可以将整体预训练的时间减少到原来的1/3或更多,并同样减少内存消耗,使我们能够轻松将MAE扩展到大型模型。
图1.我们的MAE架构。在预训练期间,遮蔽图像块的大的随机子集(例如,75%)。编码器被应用于可见块的小子集。在编码器之后引入掩码令牌,全套编码的补丁和掩码令牌由一个小解码器处理,该解码器以像素重建原始图像。在预训练之后,丢弃解码器,并将编码器应用于未被破坏的图像(全套补丁)以用于识别任务。
我们的MAE学习非常高能力的模型,这些模型具有很好的泛化能力。通过MAE预训练,我们可以在ImageNet-1K上训练像VIT-Large/-Height[16]这样的数据饥饿模型,并提高泛化性能。在ImageNet-1K上进行精调,得到了87.8%的正确率。这比之前所有只使用ImageNet-1K数据的结果都要好。我们还对迁移学习在目标检测、实例分割和语义分割方面的性能进行了评估。在这些任务中,我们的预训练取得了比监督前训练同行更好的结果,更重要的是,我们通过放大模型观察到了显著的收益。这些观察结果与在NLP[14,47,48,4]自我监督预训中看到的一致,我们希望它们将使我们的领域能够探索类似的轨迹。
2.相关工作
掩蔽语言模型和它的自回归模型,如BERT[14]和GPT[47,48,4],是自然语言处理中非常成功的预训练方法。这些方法保留了输入序列的一部分,并训练模型来预测缺失的内容。这些方法已经被证明具有很好的伸缩性[4],大量的证据表明,这些预先训练的表示法很好地适用于各种下游任务。
自动编码是学习表示法的经典方法。它有一个将输入映射到潜在表示的编码器和一个重建输入的解码器。例如,PCA和k-Means是自动编码器[29]。去噪自动编码器(DAE)[58]是一类破坏输入信号并学习重建原始的未破坏信号的自动编码器。一系列方法可以被认为是不同损坏下的通用DAE,例如,掩蔽像素[59、46、6]或移除颜色通道[70]。我们的MAE是一种去噪自动编码形式,但在许多方面与传统DAE不同。
掩码图像编码方法从被掩码破坏的图像中学习表示。[59]的开创性工作将掩蔽作为DAE中的一种噪声类型。上下文编码器[46]使用卷积网络来填充大的缺失区域。受到NLP成功的启发,最近的相关方法[6,16,2]都是基于Transformers[57]的。IGPT[6]对像素序列进行操作,并预测未知像素。VIT论文[16]研究了用于自监督学习的掩蔽块预测。最近,Beit[2]建议预测离散记号[44,50]。
自我监督学习方法已经在计算机视觉领域引起了极大的兴趣,它们往往关注于不同的预训任务[15,61,42,70,45,17]。最近,对比学习流行起来,例如,[62,43,23,7] ,它模拟两个或多个视图之间的图像相似性和不相似性(或仅相似性[21,8])。对比和相关方法强烈依赖于数据增强[7,21,8]。自动编码追求一个概念上不同的方向,并且它展示了我们将要展示的不同的行为。
3.方法
我们的屏蔽自动编码器(MAE)是一种简单的自动编码方法,它可以在给定部分观测的情况下重建原始信号。像所有自动编码器一样,我们的方法有一个编码器,它将观察到的信号映射到一个潜在的表示,以及一个解码器,它从潜在的表示重建原始信号。与经典的自动编码器不同,我们采用了非对称设计,允许编码器仅对部分观察到的信号(没有掩码tokens)进行操作,并采用轻量级解码器从潜在表示和掩码tokens重建完整的信号。图1说明了下面介绍的想法。
Masking。在VIT[16]的基础上,我们将图像分割成规则的非重叠块。然后,我们对patch的子集进行采样,并掩蔽(即,移除)剩余的patch。我们的抽样策略很简单:我们抽样随机patch,没有替换,遵循均匀分布。我们简单地将其称为“随机抽样”。
具有高掩蔽率(即,移除的patch的比率)的随机采样在很大程度上消除了冗余,从而创建了一个不能通过根据可见的相邻patch进行外推来轻松解决的任务(参见图2-4)。均匀的分布防止了潜在的中心偏差(即,图像中心附近有更多被mask的patch)。最后,高度稀疏的输入为设计高效编码器创造了机会,下面将对其进行介绍。
MAE编码器。我们的编码器是VIT[16],但仅适用于可见的、未mask的patch。就像在标准VIT中一样,我们的编码器通过添加位置嵌入的线性投影嵌入补丁,然后通过一系列变形器块处理结果集。然而,我们的编码器仅对全集的一小部分(例如,25%)进行操作。被mask的patch被移除;不使用mask tokens。这使我们能够用很少的计算和内存来训练非常大的编码器。全集由一个轻量级解码器处理,下面将进行描述。
MAE解码器。MAE解码器的输入是由(I)编码的可见块和(Ii)掩码token组成的token集合。参见图1。每个掩码token[14]是共享的学习向量,其表示预测缺失的patch。我们将位置嵌入添加到这个完整集合中的所有标记;如果没有位置嵌入,掩码token将没有关于它们在图像中位置的信息。解码器有另一系列的Transformer模块。
MAE解码器仅在预训练期间用于执行图像重建任务(仅使用编码器来产生用于识别的图像表示)。因此,可以以独立于编码器设计的方式灵活地设计解码器架构。我们用非常小的解码器进行实验,比编码器更窄、更浅。例如,我们的默认解码器与编码器相比,每个token的计算量小于10%。在这种非对称设计下,全部token的集合只由轻量级解码器处理,这大大减少了预训练时间。
重建目标。我们的MAE通过预测每个遮蔽块的像素值来重建输入。解码器输出中的每个元素都是代表一个patch的像素值的矢量。解码器的最后一层是线性投影,其输出通道的数量等于面片中的像素值的数量。对解码器的输出进行整形以形成重建图像。我们的损失函数计算重建图像和原始图像在像素空间中的均方误差。我们只计算mask patch的损失,类似于BERT[14]。
我们还研究了一种以每个遮蔽块的归一化像素值为重建目标的变体。具体地说,我们计算patch中所有像素的平均值和标准差,并使用它们来归一化该patch。在实验中,使用归一化像素作为重建目标,提高了图像的表示质量。
简单实现。我们的MAE预训练可以有效地实施,重要的是,不需要任何专门的稀疏操作。首先,我们为每个输入patch生成一个token(通过添加位置嵌入的线性投影)。接下来,我们随机打乱列表,并根据掩码比率删除列表的最后部分。这个过程为编码器产生一个小的token子集,相当于在没有替换的情况下对补丁进行采样。编码后,我们将掩码token的列表附加到编码patch的列表中,并对这个完整的列表进行解乱(反转随机洗牌操作)以使所有token与其目标对齐。解码器应用于该完整列表(添加了位置嵌入)。如前所述,不需要稀疏操作。这个简单的实现引入了可以忽略的开销,因为混洗和去混洗操作很快。
4.ImageNet实验
我们在ImageNet-1K(IN1K)[13]训练集上进行自我监督的预训练。然后,我们进行有监督的训练,以使用(I)端到端微调或(Ii)线性探测来评估表示。我们报告了单个224×224crop的TOP-1验证准确性。详情见附录A.1。
Baseline: ViT-Large。我们使用VIT-Large(VIT-L/16)[16]作为我们消融研究的主干。VIT-L非常大(比ResNet-50[25]大一个数量级),往往会过大。以下是从头开始训练的VIT-L与从我们的基准MAE微调的VIT-L之间的比较:
我们注意到,从零开始训练受监督的VIT-L并非易事,需要一个具有很强正则性的好秘诀(82.5%,见附录A.2)。尽管如此,我们的MAE预训还是有很大的进步。在这里,微调只针对50个epoch(从零开始的200个),这意味着微调精度严重依赖于预培训。
4.1 主要的内容
我们使用表1中的默认设置来消融MAE(见标题)。观察到了一些耐人寻味的特性。
表1.在ImageNet-1K上用VIT-L/16进行MAE消融实验。我们报告了微调(Ft)和线性探测(Lin)精度(%)。如果未指定,则默认为:解码器的深度为8,宽度为512,重建目标为非归一化像素,数据增强为随机调整大小的裁剪,掩蔽率为75%,预训练长度为800个历元。默认设置标记为灰色。
掩蔽率。图5显示了掩蔽率的影响。最优比率高得令人惊讶。75%的比率对线性探测和微调都是有利的。这一行为与BERT[14]形成对比,BERT的典型掩蔽率为15%。我们的掩蔽率也远远高于计算机视觉中的相关工作[6,16,2](20%到50%)。
图5.掩蔽率。高掩蔽率(75%)适用于微调(顶部)和线性探测(底部)。Y轴为ImageNet-1K验证精度(%)。
该模型推断缺失的patch以产生不同但看似合理的输出(图4)。它使物体和场景的格式塔变得有意义,这不是简单地通过延伸线条或纹理来完成的。我们假设,这种类似推理的行为与学习有用的表征有关。
图4.使用MAE重建ImageNet验证图像,该MAE预先训练了75%的掩蔽率,但应用于掩蔽率较高的输入。预测结果与原始图像有很大的不同,表明该方法可以推广
图5还显示了线性探测和微调结果遵循不同的趋势。对于线性探测,准确率随着遮盖率的增加而稳步增加,直到顶点:精度差距高达∼20%(54.6%vs73.5%)。对于微调,结果对比率不那么敏感,并且大范围的掩蔽比率(40%-80%)工作得很好。图5中的所有微调结果都好于从头开始的培训(82.5%)。
解码器设计。我们的MAE解码器可以灵活地设计,如表1a和1b所示。
表1a改变了解码器深度(变压器块的数量)。对于线性探测来说,足够深的解码器是很重要的。这可以用像素重建任务和识别任务之间的差距来解释:自动编码器中的最后几层更专门用于重建,但与识别的相关性较小。合理的深度解码器可以解释重构的专门化,将潜在的表示留在更抽象的水平上。这种设计可以在线性探测方面产生高达8%的改进(表1a,‘lin’)。但是,如果使用微调,则可以调整编码器的最后几层以适应识别任务。解码器深度对改善微调的影响较小(表1a,‘ft’)。
有趣的是,我们的MAE使用单块解码器可以在微调的情况下表现出很强的性能(84.8%)。请注意,要将信息从可见token传播到掩码token,单个Transformer块是最低要求。这么小的解码器可以进一步加快训练速度。
在表1b中,我们研究了解码器宽度(通道数)。我们默认使用512-d,它在微调和线性探测下执行得很好。更窄的解码器在微调的情况下也能很好地工作。
总体而言,我们默认的MAE解码器是轻量级的。它有8个块,宽度为512-d(表1中为灰色)。与VIT-L相比,它的每个token只有9%的FLOPS(24个数据块,1024-d)。因此,尽管解码器处理所有token,但它仍然只占整个计算的一小部分。
Mask token。MAE的一个重要设计是跳过编码器中的掩码token[M],稍后将其应用于轻量级解码器。表1c研究了这种设计。
如果编码器使用掩码token,它的性能会更差:其在线性探测中的精度下降了14%。在这种情况下,预训和部署之间存在差距:这种编码器在预训练的输入中有很大一部分掩码token,这在未被破坏的图像中是不存在的。这一差距可能会降低部署的准确性。通过从编码器移除掩码令牌,我们约束编码器始终看到真实的补丁,从而提高精度。
此外,通过跳过编码器中的掩码token,大大减少了训练计算量。在表1c中,我们将总体培训失败减少了3.3x。这导致我们实现的wall-clock加速比为原来的2.8倍(参见表2)。对于较小的解码器(1块)或较大的编码器(VIT-H),wall-clock加速比甚至更大(3.5-4.1倍),或者两者兼而有之。注意,当掩蔽率为75%时,加速比可以大于4倍,部分原因是自我注意的复杂性是二次的。此外,内存大大减少,可以通过大批量训练来训练更大的模型或更快。时间和内存的效率使得我们的MAE有利于训练非常大的模型。
重建目标。我们比较了表1D中不同的重建目标。到目前为止,我们的结果是基于没有(按patch)归一化的像素。使用像素进行归一化可以提高精确度。这种每个patch归一化增强了局部对比度。在另一个变型中,我们在块空间中执行主成分分析,并使用最大的主成分分析系数(这里是96)作为目标。这样做会降低准确性。这两个实验都表明高频分量在我们的方法中是有用的。
我们还比较了预测token的MAE变体,这是BEiT[2]中使用的目标。具体地,对于这个变体,我们使用DALE预先训练的DVAE[50]作为标记器,遵循[2]。这里,MAE解码器使用交叉熵损失来预测token索引。与非归一化像素相比,这种标记化将微调精度提高了0.4%,但与归一化像素相比没有优势。它还降低了线性探测精度。在第5节中,我们进一步证明了tokenization在迁移学习中不是必需的。
我们基于像素的MAE比标记化简单得多。DVAE标记器需要更多的预训练阶段,这可能取决于额外的数据(250M图像[50])。DVAE编码器是一个大的卷积网络(40%的VIT-L触发器),并且增加了不平凡的开销。使用像素不会遇到这些问题。
数据增强。表1e研究了数据增强对我们的MAE预训练的影响。
我们的MAE使用仅限裁剪的增强功能(固定大小或随机大小)(均具有随机水平翻转)效果很好。添加色彩抖动会降低结果,因此我们不会在其他实验中使用它。
令人惊讶的是,我们的MAE即使在没有数据增强的情况下也表现得很好(只有中心裁剪,没有翻转)。这一性质与严重依赖数据扩充的对比学习和相关方法[62,23,7,21]有很大不同。据观察[21],使用仅裁剪的增强对于BYOL[21]和SimCLR[7]分别降低了13%和28%的准确率。此外,没有证据表明对比学习可以在没有增强的情况下起作用:图像的两个视图是相同的,可以很容易地满足微不足道的解决方案。
在MAE中,数据增强的作用主要通过随机掩蔽(其次是消融)来实现。对于每次迭代,掩码是不同的,因此它们生成新的训练样本,而不考虑数据的增加。pretext任务通过掩饰而变得困难,并且需要较少的增强来使训练正规化。
掩码抽样策略。在表1f中,我们比较了不同的掩码采样策略,如图6所示。
图6.掩码抽样策略决定pretext任务的难度,影响重建质量和表示(表1f)。这里,每个输出来自用指定掩码策略训练的MAE。左:随机抽样(我们的默认设置)。中:逐块采样[2],删除较大的随机块。
右图:栅格采样,每四个面片中保留一个。图像来自验证集
在[2]中提出的逐块掩码策略倾向于移除较大的块(图6中)。我们采用分块掩码的MAE在50%的比率下工作得相当好,但在75%的比率下退化。这项任务比随机抽样更难,因为观察到更高的训练损失。重建工作也变得更加模糊。
我们还研究了栅格采样,它定期保留每四个面片中的一个(图6右侧)。这是一个更容易的任务,并有较低的训练损失。重建工作变得更加尖锐。然而,表现质量较低。
简单的随机抽样对我们的MAE效果最好。它允许更高的掩蔽率,这提供了更大的加速比优势,同时也享有良好的准确性。
训练设置。到目前为止,我们的消融是基于800epoch的预训练。图7显示了训练计划长度的影响。随着训练时间的延长,准确率稳步提高。事实上,即使在1600个epoch,我们也没有观测到线性探测精度的饱和。这一行为与对比学习方法不同,例如,MoCov3[9]在VIT-L的300个epoch饱和。注意,MAE编码器在每个epoch仅看到25%的斑块,而在对比学习中,编码器在每个epoch看到200%(两个)或更多(多个裁剪)的斑块。
图7.培训时间表。较长的训练计划会带来明显的改善。这里的每一分都是一个完整的训练时间表。型号为VIT-L,默认设置如表1所示
4.2 与以前结果的比较
与自我监督方法的比较。在表3中,我们比较了自我监督VIT模型的微调结果。对于VIT-B,所有方法的执行情况都很接近。对于VIT-L,不同方法之间的差距更大,这表明较大型号的挑战是减少过度匹配。
表3.与以前在ImageNet1K上的结果比较。训练前的数据是ImageNet-1K训练集(除了Beit中的记号器是在250M DALE数据上进行的预训练[50])。所有的自我监督方法都通过端到端的微调进行评估。VIT型号为B/16、L/16、H/14[16]。每一列中最好的部分用下划线标出。除了VIT-H之外,所有结果都是在图像大小为224的情况下得到的,在448上有一个额外的结果。在这里,我们的mae重建归一化像素,并针对1600个历元进行预训练
我们的MAE可以很容易地扩大规模,并从更大的模型中显示出稳步的改进。我们使用VIT-H(224个大小)获得了86.9%的准确率。通过对448大小进行微调,仅使用IN1K数据,我们就达到了87.8%的准确率。在仅使用IN1K数据的所有方法中,以前最好的准确率是87.1%(512个大小)[67],基于先进的网络。在竞争激烈的IN1K基准(无外部数据)中,我们比最先进的产品高出不少的优势。我们的结果是基于普通的VIT,我们预计先进的网络会表现得更好。
与Beit[2]相比,我们的MAE更准确,同时也更简单、更快。我们的方法重建像素,与预测令牌的Beit相反:Beit报告了使用VIT-B重建像素时1.8%的退化[2]。2我们不需要DVAE预训练。此外,由于表1c中研究的原因,我们的MAE比BEIT快得多(每个epoch3.5倍)。
表3中的MAE模型针对1600个epoch进行了预训练,以获得更好的精度(图7)。即便如此,当在相同的硬件上进行训练时,我们的总的预训练时间比其他方法要少。例如,在128个TPU-v3核上训练VIT-L,我们的MAE对1600个epoch训练时间为31小时,而MoCo v3对300个epoch训练时间为36小时[9]。
与有监督的预训进行比较。在最初的VIT论文[16]中,VIT-L在IN1K中训练时会降解。我们实施的监督训练(见A.2)效果更好,但准确性会饱和。参见图8。
图8.MAE预培训与有监督的预培训,通过ImageNet-1K(224大小)的微调进行评估。我们与在IN1K或JFT300M中训练的原始VIT结果[16]进行了比较
我们的MAE预训练,只使用IN1K,可以更好地推广:对于容量更高的模型,从零开始训练的收益更大。它遵循的趋势类似于JFT-300M在[16]中监督的预训。这一比较表明,我们的MAE可以帮助扩大模型尺寸。
4.3 局部微调
表1显示线性探测和微调结果在很大程度上是不相关的。线性探测在过去几年中一直是一种流行的协议;然而,它错过了追求强大但非线性特征的机会--这确实是深度学习的一个优势。作为一个中间路线,我们研究了一种局部微调协议:微调最后几层,而冻结其他层。该协议也在早期工作中使用,例如[65,70,42]。
图9显示了结果。值得注意的是,只需微调一个transformer块,就可以将准确率从73.5%显著提高到81.0%。此外,如果我们只微调最后一个块(即其MLP子块)的一半,我们可以得到79.1%,比线性探测要好得多。这个变种本质上是微调MLP头。微调几个块(例如,4个或6个)可以获得接近完全微调的精度。
图9.VIT-L w.r.t.的部分微调结果。表1中默认设置下的微调transformer块数。调整0个块为线性探测;调整24个为完全微调。我们的MAE表示不那么线性可分,但如果调整一个或多个块,则始终优于MoCov3
在图9中,我们还与MoCov3[9]进行了比较,这是一种具有Vit-L结果的对比方法。MOCO v3具有较高的线性探测精度,但其局部微调结果均不如MAE。当调谐4个区块时,差距为2.6%。虽然MAE表示的线性可分离性较小,但它们是更强的非线性特征,并且在调谐非线性磁头时表现良好。
这些观察结果表明,线性可分性并不是评价表征质量的唯一标准。还观察到(例如,[8])线性探测与例如对象检测的转移学习性能不是很好地相关。据我们所知,线性评估在NLP的基准预培训中并不经常使用。
5.迁移学习实验
我们使用表3中的预训练模型来评估下游任务中的迁移学习。
目标检测和分割。我们在Coco[37]上对面具R-CNN[24]进行了端到端的微调。VIT主干适用于FPN[36](见A.3)。我们将这种方法应用于表4中的所有条目。我们报告用于对象检测的框AP和用于分割的掩码AP。
与有监督的预训练相比,我们的MAE在所有配置下都表现得更好(表4)。在VIT-B较小的情况下,我们的MAE比监督前训练(50.3比47.9,APbox)高2.4分。更重要的是,在VIT-L较大的情况下,我们的MAE预训比监督预训高出4.0分(53.3分对49.3分)。
表4.使用VIT MASK R-CNN基线的COCO对象检测和分割。所有条目都基于我们的实现。自我监督条目使用不带标签的IN1K数据。掩码AP遵循与盒式AP类似的趋势
基于像素的MAE优于或与基于令牌的Beit不相上下,而MAE更简单、更快。MAE和Beit均优于MoCov3,MoCov3与督导预训练不相上下。
语义分割。我们使用UperNet[63]在ADE20K[72]上进行了实验(见A.4)。表5显示,我们的预训练比监督预训练显著提高了结果,例如,VIT-L提高了3.7分。我们基于像素的MAE的性能也优于基于令牌的Beit。这些观察结果与可可的结果是一致的。
表5.使用UperNet的ADE20K语义分割(MIUU)。BEIT结果是使用官方代码复制的。其他条目基于我们的实现。自我监督条目使用不带标签的IN1K数据
分类任务。表6研究了iNaturants[56]和Places[71]任务的迁移学习(见A.5)。在INAT上,我们的方法表现出很强的缩放行为:模型越大,精度就越高。我们的结果大大超过了以前的最好结果。在某些地方,我们的MAE优于之前的最好结果[19,40],后者是通过对数十亿张图像进行预训练而获得的。
表6.使用在IN1K上预先训练然后微调的MAE,在分类数据集上转移学习精度。我们提供了与之前最佳结果的系统级比较
像素VStoken。表7比较了作为MAE重建目标的像素和令牌。虽然使用DVAE tokens比使用非规格化像素更好,但在我们测试的所有情况下,它在统计上与使用规格化像素相似。这再次表明,对于我们的MAE来说,标记化是不必要的。
表7.作为MAE重建目标的像素与标记的对比。是使用DVAE标记和使用规格化像素之间的区别。这种差异在统计上是微不足道的
6.讨论和结论
具有良好伸缩性的简单算法是深度学习的核心。在NLP中,简单的自我监督学习方法(例如,[47,14,48,4])能够从指数缩放模型中获益。在计算机视觉中,尽管在自我监督学习方面取得了进展,但实际的预训练范例主要是受监督的(例如[33,51,25,16])。在这项研究中,我们在ImageNet和迁移学习中观察到,自动编码器--一种类似于NLP中的技术的简单的自我监督方法--提供了可扩展的好处。视觉中的自我监督学习现在可能走上与NLP类似的轨道。
另一方面,我们注意到,图像和语言是不同性质的信号,必须仔细处理这种差异。图像只是光记录下来的,没有将语义分解成词的视觉模拟。我们不是尝试删除对象,而是删除最有可能不形成语义片段的随机补丁。同样,我们的MAE重建像素,这些像素不是语义实体。然而,我们观察到(例如,图4),我们的MAE推断出复杂的整体重建,这表明它已经学习了许多视觉概念,即语义。我们假设这种行为是通过MAE中丰富的隐藏表示来发生的。我们希望这一观点将激励未来的工作。