【ICCV 2022】(MAE)Masked Autoencoders Are Scalable Vision Learners

2023-12-18 10:36

本文主要是介绍【ICCV 2022】(MAE)Masked Autoencoders Are Scalable Vision Learners,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

何凯明一作文章:https://arxiv.org/abs/2111.06377

感觉本文是一种新型的自监督学习方式 ,从而增强表征能力


本文的出发点:是BERT的掩码自编码机制:移除一部分数据并对移除的内容进行学习。mask自编码源于CV但盛于NLP,恺明对此提出了疑问:是什么导致了掩码自编码在视觉与语言之间的差异?尝试从不同角度进行解释并由此引申出了本文的MAE。

恺明提出一种用于计算机视觉的可扩展自监督学习方案Masked AutoEncoders(MAE)。所提MAE极为简单:对输入图像的随机块进行mask并对遗失像素进行重建。它基于以下两个核心设计:

  • 我们设计了一种非对称编解码架构,其中解码器仅作用于可见块(无需mask信息),而解码器则通过隐表达与mask信息进行原始图像重建;
  • 我们发现对输入图像进行高比例mask(比如75%被mask掉,不同于 NLP,在 CV 中可能要配合较高的 mask 比例才能作为“有效”的自监督代理任务。“有效”指的是任务本身足够困难,这样模型才能学到有效的潜在特征表示。)可以产生一项重要且有意义的自监督任务。

上述两种设计促使我们可以更高效的训练大模型:我们加速训练达3x甚至更多,同时提升模型精度。所提方案使得所得高精度模型具有很好的泛化性能:仅需ImageNet-1K,ViT-Huge取得了87.8%的top1精度 。下游任务的迁移取得了优于监督训练的性能,证实了所提方案的可扩展能力。

整体架构:

图 1:我们的 MAE 架构。

1、在预训练期间,图像patches 的大量随机子集(例如 75%)被mask。

2、Encoder应用于可见patches的小子集。

3、将encoder后的所有patches masked tokens由小型decoder处理,该解码器以像素为单位重建原始图像。

4、预训练后,decoder被丢弃,encoder应用于未损坏的图像(完整的patches)以进行识别任务。

方法:

我们的MAE是一种简单的自动编码方法,可以在给定部分观察的情况下重建原始信号。与所有AE一样,我们的方法具有将观察到的信号映射到 latent representation 的encoder,以及从 latent representation 重建原始信号的decoder。与经典AE不同,我们采用非对称设计,允许编码器仅对部分观察到的信号(没有掩码标记)进行操作,并采用轻量级解码器,从 latent representation 和 mask tokens 中重建完整信号。图 1 说明了接下来介绍的想法。

Masking

我们的采样策略非常简单:服从均匀分布的无重复随机采样 。我们将该采样策略称之为“随机采样”。具有高掩码比例的随机采样可以极大程度消除冗余,进而构建一个不会轻易的被近邻块推理解决的任务。而均匀分布则避免了潜在的中心偏置问题。【提升自监督学习任务的难度

MAE Encoder

编码器用于生成用于:encoder image + 识别的完整图像的representations 

MAE中的编码器是一种ViT,但仅作用于未被Mask的块。类似于标准ViT,该编码器通过线性投影于位置嵌入对块进行编码,然后通过一系列Transformer模块进行处理。然而,由于该编解码仅在未mask的patches(比如25%)进行处理。这就使得我们可以用很小的计算资源训练一个非常大的编码器 。

MAE Decoder:

 MAE解码器的输入包含:(1) encoded visible patches;(2) mask token。如Figure1所示,每个mask token共享的可学习向量,它用于指示待预测mask块。我们还会对所有token添加位置嵌入信息。解码器同样包含一系列Transformer模块。

MAE decoder 仅在预训练期间用于执行图像重建任务。因此,可以以独立于编码器设计的方式灵活地设计解码器架构。我们用非常小的解码器进行实验,比encoder更窄、更浅。例如,我们的默认decoder 与encoder 相比,每个token 的计算量 < 10%。通过这种非对称设计,全套 token 仅由轻量级解码器处理,这显着减少了预训练时间。

Reconstruction target

基本:我们的 MAE 通过预测每个mask patch的像素值来重建输入。解码器输出中的每个元素是vector of pixel values representing a patch。解码器的最后一层是线性投影,其输出通道的数量等于patch 中像素值的数量。decoder的输出从a reconstructed image被reshaped。我们的损失函数计算像素空间中重建图像和原始图像之间的均方误差(MSE)。我们仅在mask patches上计算损失,类似于 BERT [14](计算所有像素的损失会导致精度略有下降)。

变体:我们还研究了一种变体,其重建目标是每个masked patch的归一化像素值。具体来说,我们计算补丁中所有像素的平均值和标准差,并使用它们来标准化该 patch。使用归一化像素作为重建目标可以提高我们实验中的表示质量。

Simple implementation

Simple implementation MAE预训练极为高效,更重要的是:它不需要任何特定的稀疏操作。实现过程可描述如下:

  1. 首先,我们通过线性投影与位置嵌入(by linear projection with an added positional embedding) 对每个输入 patch 生成token;【对图像的所有patch --> token】
  2. 然后,我们 random shuffle token 并根据掩码比例(masking ratio)移除最后一部分token;【根据mask比例,将shuffle后的所有token的最后一些元素删除(其实这一步就是服从均匀分布的无重复随机采样mask)】
  3. 将所有的未被mask的patch完成encoding后(得到encoded patches),将encoded patches后加入所有mask tokens ==> full list。
  4. full list 进行 unshuffle(inverting the random shuffle operation),从而将all tokens与它们的target进行对齐;
  5. 最后,我们将解码器作用于上述full list(添加了位置编码的) 

注意:MAE无需稀疏操作。此外,shuffle与unshuffle操作非常快,引入的计算量可以忽略。

实验

不同的mask ratio对实验产生的影响

何恺明最新一作:简单实用的自监督学习方案MAE,ImageNet-1K 87.8%! - 知乎

文献阅读:MAGE: MAsked Generative Encoder to Unify Representation Learning and Image Synthesis-CSDN博客

这篇关于【ICCV 2022】(MAE)Masked Autoencoders Are Scalable Vision Learners的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/508080

相关文章

速通GPT-3:Language Models are Few-Shot Learners全文解读

文章目录 论文实验总览1. 任务设置与测试策略2. 任务类别3. 关键实验结果4. 数据污染与实验局限性5. 总结与贡献 Abstract1. 概括2. 具体分析3. 摘要全文翻译4. 为什么不需要梯度更新或微调⭐ Introduction1. 概括2. 具体分析3. 进一步分析 Approach1. 概括2. 具体分析3. 进一步分析 Results1. 概括2. 具体分析2.1 语言模型

上海大学《2022年836+915自动控制原理真题及答案》 (完整版)

Part1:2022年上海大学真题题目 学硕836 专硕915 Part2:2022年上海大学真题答案 学硕836 专硕915

复盘高质量Vision Pro沉浸式视频的制作流程与工具

在探索虚拟现实(VR)和增强现实(AR)技术的过程中,高质量的沉浸式体验是至关重要的。最近,国外开发者Dreamwieber在其作品中展示了如何使用一系列工具和技术,创造出令人震撼的Vision Pro沉浸式视频。本文将详细复盘Dreamwieber的工作流,希望能为从事相关领域的开发者们提供有价值的参考。 一、步骤和工作流 构建基础原型 目的:快速搭建起一个基本的模型,以便在设备

【算法 2022】高效有用的机器学习算法和 Python 库

2022年已经到来,在此祝大家虎年大吉!2022年,下面几种机器学习算法和 Python 库将在未来更受欢迎!让我们花个几分钟一起来了解下: 一、CatBoost CatBoost 可能是最新的算法,因为它随着越来越流行而不断更新。这个机器学习算法对于处理分类数据的数据科学家特别有用。您可以考虑 Random Forest 和 XGBoost 算法的优点,CatBoost 具有它们的大部分优点

一键部署Phi 3.5 mini+vision!多模态阅读基准数据集MRR-Benchmark上线,含550个问答对

小模型又又又卷起来了!微软开源三连发!一口气发布了 Phi 3.5 针对不同任务的 3 个模型,并在多个基准上超越了其他同类模型。 其中 Phi-3.5-mini-instruct 专为内存或算力受限的设备推出,小参数也能展现出强大的推理能力,代码生成、多语言理解等任务信手拈来。而 Phi-3.5-vision-instruct 则是多模态领域的翘楚,能同时处理文本和视觉信息,图像理解、视频摘要

【数据分享】2000-2022年我国省市县三级的逐月O3数据(免费获取\excel\shp格式)

空气质量数据是在我们日常研究中经常使用的数据!之前我们给大家分享了2000-2022年的省市县三级的逐月PM2.5数据、2013-2022年的省市县三级的逐月CO数据、2013-2022年的省市县三级的逐月SO2数据、2008-2022年我国省市县三级的逐月NO2数据和2000—2022年的省市县三级的逐月PM10数据(均可查看之前的文章获悉详情)! 本次我们分享的是我国2000—2022年的省

【数据分享】2000-2022年我国省市县三级的逐日O3数据(免费获取\excel\shp格式)

空气质量数据是在我们日常研究中经常使用的数据!之前我们给大家分享了2000-2022年的省市县三级的逐日PM2.5数据、2013-2022年的省市县三级的逐日CO数据、2013-2022年的省市县三级的逐日SO2数据、2008-2022年我国省市县三级的逐日NO2数据和2000-2022年我国省市县三级的逐日PM10数据(均可咨询获取)! 本次我们分享的是我国2000—2022年的省市县三级的逐

论文《Autoencoders for improving quality of process event logs》翻译

论文《Autoencoders for improving quality of process event logs》翻译 《Autoencoders for improving quality of process event logs》翻译

Windows 11 下使用 MSVC 2022 编译64位Nginx

一、软件准备 1、安装 Visual Studio 2022 包含单个组件: .NET Framework 4.6.1 目标包.NET Framework 4.6.1 SDKWindows 通用 C 运行时Windows 通用 CRT SDKMSVC v142 - VS 2019 C++ x64/x86 生成工具(v14.26)对 v142 生成工具(14.21)的 C++/CL

HOW DO VISION TRANSFORMERS WORK

HOW DO VISION TRANSFORMERS WORK Namuk Park1,2, Songkuk Kim1 1Yonsei University, 2NAVER AI Lab{namuk.park,songkuk}@yonsei.ac.kr 总结 MSA 改善模型泛化能力: MSA 不仅提高了模型的准确性,还通过平滑损失景观来提高泛化能力。损失景观的平坦化使得模型更容易优化,表现