FaceBook提出Masked AutoEncoder 掩码自编码器:可扩展的视觉学习器


🕙发布时间:2025-02-19
FaceBook

近日热文:
1. 全网最全的神经网络数学原理(代码和公式)直观解释
2. 大模型进化史:从Transformer到DeepSeek-R1的AI变革之路
3. 2W8000字深度剖析25种RAG变体:全网最全~没有之一
知乎【柏企
公众号【柏企科技说】【柏企阅文

在自然语言处理(NLP)领域,通过自监督预训练,对数据的需求得到了很好的满足。基于GPT中的自回归语言建模和BERT中的掩码自动编码的解决方案,在概念上很简单:它们会去除部分数据,然后学习预测被去除的内容。

掩码自编码器(一种更通用的去噪自编码器形式)的概念很自然,并且在计算机视觉领域也适用。但是,掩码自动编码在视觉和语言领域之间有何不同呢?

在过去十年里,卷积神经网络在计算机视觉中占据主导地位。卷积操作通常在规则网格上进行,并且将诸如掩码标记或位置嵌入等 “指示符” 集成到卷积网络中并非易事。然而,随着视觉Transformer(ViT)的出现,这一架构上的差距得到了弥补。

语言和视觉之间的信息密度有所不同。语言是人类生成的信号,具有很强的语义性和高信息密度。当训练一个模型仅预测句子中少数几个缺失的单词时,这个任务似乎能引导出复杂的语言理解能力。相反,图像是自然信号,具有很大的空间冗余性——例如,一个缺失的图像块可以从相邻的图像块中恢复,而无需对物体的部分、物体本身以及场景有太多高级理解。为了克服这种差异并鼓励学习有用的特征,我们发现一种简单的策略在计算机视觉中效果很好:对很高比例的随机图像块进行掩码操作。这种策略在很大程度上减少了冗余,并创建了一个具有挑战性的自监督任务,该任务需要超越低级图像统计的整体理解能力。

自编码器的解码器负责将潜在表示映射回输入,在重建文本和图像时,其作用有所不同。

受上述分析的启发,MAE(掩码自编码器)会从输入图像中掩码随机图像块,并在像素空间中重建缺失的图像块。它采用非对称的编码器 - 解码器设计。我们的编码器仅对可见的图像块子集进行操作(不使用掩码标记),而我们的解码器很轻量,它会根据潜在表示以及掩码标记来重建输入。

架构

掩码操作

遵循ViT的做法,一幅图像会被划分为规则的、不重叠的图像块。然后对一部分图像块进行采样,其余的则被掩码。

MAE编码器

编码器是一个ViT,但仅应用于可见的、未被掩码的图像块。因此,编码器仅对完整数据集的一小部分(约25%)进行操作。被掩码的图像块会被移除,不使用掩码标记。这使得我们可以仅用一小部分计算资源和内存来训练非常大的编码器。完整的数据集由一个轻量级的解码器处理。

MAE解码器

MAE解码器的输入是完整的标记集,包括:(i)编码后的可见图像块;(ii)掩码标记。每个掩码标记是一个共享的、经过学习的向量,用于表示有待预测的缺失图像块。位置嵌入会被添加到这个完整标记集中的所有标记上;如果不这样做,掩码标记将无法获取其在图像中的位置信息。解码器还有另一系列的Transformer块。MAE解码器仅在预训练期间用于执行图像重建任务。因此,解码器的架构可以独立于编码器的设计进行灵活设计。

重建目标

MAE通过预测每个被掩码图像块的像素值来重建输入。解码器输出的每个元素都是一个代表图像块像素值的向量。解码器的最后一层是一个线性投影层,其输出通道数等于一个图像块中的像素值数量。解码器的输出会被重塑以形成重建图像。损失函数计算重建图像和原始图像在像素空间中的均方误差(MSE)。与BERT类似,损失仅在被掩码的图像块上计算。

论文

Masked Autoencoders Are Scalable Vision Learners:2111.06377

代码实现

Masked Autoencoder — Vision Transformer

## 推荐阅读
1. DeepSeek-R1的顿悟时刻是如何出现的? 背后的数学原理
2. 微调 DeepSeek LLM:使用监督微调(SFT)与 Hugging Face 数据
3. 使用 DeepSeek-R1 等推理模型将 RAG 转换为 RAT
4. DeepSeek R1:了解GRPO和多阶段训练
5. 深度探索:DeepSeek-R1 如何从零开始训练
6. DeepSeek 发布 Janus Pro 7B 多模态模型,免费又强大!

本文由mdnice多平台发布


柏企科技圈
15 声望5 粉丝