【论文阅读】Masked Autoencoders Are Scalable Vision Learners

Masked Autoencoders Are Scalable Vision Learners

引用: He K, Chen X, Xie S, et al. Masked autoencoders are scalable vision learners[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2022: 16000-16009.

论文链接: [2111.06377] Masked Autoencoders Are Scalable Vision Learners

代码链接: GitHub - facebookresearch/mae: PyTorch implementation of MAE

简介

在硬件快速发展的帮助下,今天的模型可以很容易地过度拟合100万张图像,并开始需要数亿张(通常无法公开访问)标记的图像。这种对数据的需求已经在自然语言处理(NLP)中通过自我监督的预训练成功解决。这些解决方案基于GPT 中的自回归语言建模和BERT中的掩码自编码,在概念上很简单:它们删除了一部分数据并学习预测删除的内容。这些方法现在可以训练包含超过一千亿个参数的可泛化 NLP 模型。因此,掩码自动编码器的想法是自然的,也适用于计算机视觉。

掩码自动编码器(Masked Autoencoder,MAE)是用于计算机视觉的可扩展自监督学习器。MAE 的思路很简单:随机屏蔽输入图像的某些块并重建缺失的像素 。与自然语言相反,图像是具有高度空间冗余的自然信号------例如,缺失的补丁可以从相邻的补丁中重新覆盖,而对零件、对象和场景的高级理解很少 。因此,屏蔽很高比例的随机补丁在很大程度上减少了冗余,并创造了一项具有挑战性的自我监督任务。首先,MAE提出了一种非对称编码器-解码器架构,该架构的编码器仅在patches的可见子集(没有掩码的tokens)上运行,以及一个轻量级解码器,该解码器从潜在表示和掩码tokens重建原始图像。其次,屏蔽输入图像的很大一部分,例如75%,会产生一个不平凡且有意义的自我监督任务。在仅使用 ImageNet-1K 数据的方法中,普通的 ViT-Huge 模型实现了最佳的准确率 (87.8%)。下游任务中的传输性能优于监督预训练,并显示出有希望的扩展行为。

Approach

MAE是一种简单的自动编码方法,在给定其部分观测的情况下重建原始信号。MAE包括一个编码器,将观察到的信号映射到潜在表示,一个解码器,从潜在表示重建原始信号。与经典的自动编码器不同,MAE采用了非对称设计,允许编码器仅对部分观察到的信号进行操作(无掩码标记),并采用了轻量级解码器,该解码器根据潜在表示和掩码标记重新构建完整信号。

  • Masking :参考ViT,将图像划分为规则的非重叠补丁。然后,对补丁的子集进行采样,并屏蔽(即移除)剩余的补丁。采样策略很简单:按照均匀分布对随机补丁进行采样,而不进行替换,称之为"随机抽样"。具有高掩蔽比的随机采样(即去除的补丁的数量)在很大程度上消除了冗余,因此产生了一个无法通过从可见的相邻补丁进行外推来轻松解决的任务。均匀分布防止了潜在的中心偏移(即,在图像中心附近有更多的掩模斑块)。最后,高度稀疏的输入为设计高效编码器创造了机会。

  • MAE encoder编码器使用ViT,但仅适用于可见的、未掩码的补丁。就像在标准ViT中一样,编码器通过添加位置嵌入的线性投影嵌入补丁,然后通过一系列Transformer块处理结果集。然而,编码器只对全集的一小部分(例如,25%)进行操作。掩码的补丁被移除;不使用掩码tokens。

  • MAE decoder解码器的输入是由(i)编码的可见补丁和(ii)掩码tokens组成的全部tokens的集合 。每个掩码token是一个共享的、学习的向量,指示要预测的掩码补丁的存在。将位置嵌入添加到这个完整集合中的所有标记;如果没有这一点,掩码tokens将没有关于它们在图像中的位置的信息。解码器仅在预训练期间用于执行图像重建任务(仅使用编码器生成图像表示以供识别)。因此,解码器架构可以独立于编码器设计的方式灵活设计。

  • Reconstruction targetMAE 通过预测每个掩码补丁的像素值来重建输入 。解码器输出中的每个元素都是表示补丁的像素值向量。解码器的最后一层是线性投影,其输出通道数等于补丁中的像素值数。解码器的输出被重塑以形成重建的图像。损失函数计算像素空间中重建图像和原始图像之间的均方误差 (MSE)使用归一化像素作为重建目标可以提高实验中的表示质量。具体来说就是计算一个补丁中所有像素的平均值和标准差,并使用它们来规范化这个补丁。

实验

MAE 在 ImageNet-1K (IN1K) 训练集上进行自我监督预训练。然后,进行监督训练,通过(i)端到端微调或(ii)线性探测来评估表示。


75%的比率适用于线性探测和微调。这种行为与BERT形成鲜明对比,BERT的典型掩码率为15%。在计算机视觉方面,掩码率也远高于相关著作(20%至50%)。该模型推断缺失的补丁,以产生不同但合理的输出(图 4)。它使物体和场景的格式塔变得有意义,这不能简单地通过延伸线条或纹理来完成。假设这种类似推理的行为与学习有用的表征有关。

更长的训练计划会带来明显的改善。

相关推荐
GocNeverGiveUp7 分钟前
机器学习2-NumPy
人工智能·机器学习·numpy
B站计算机毕业设计超人1 小时前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
18号房客1 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
feifeikon1 小时前
机器学习DAY3 : 线性回归与最小二乘法与sklearn实现 (线性回归完)
人工智能·机器学习·线性回归
游客5201 小时前
opencv中的常用的100个API
图像处理·人工智能·python·opencv·计算机视觉
古希腊掌管学习的神1 小时前
[机器学习]sklearn入门指南(2)
人工智能·机器学习·sklearn
凡人的AI工具箱2 小时前
每天40分玩转Django:Django国际化
数据库·人工智能·后端·python·django·sqlite
咸鱼桨2 小时前
《庐山派从入门到...》PWM板载蜂鸣器
人工智能·windows·python·k230·庐山派
强哥之神2 小时前
Nexa AI发布OmniAudio-2.6B:一款快速的音频语言模型,专为边缘部署设计
人工智能·深度学习·机器学习·语言模型·自然语言处理·音视频·openai