主要以沫神推荐的计算机cv方面的文章,培养兴趣,并且以讲述的方式,最高效率的学习知识。只是入门小白。
1.关注的知识点
1. 1底层基础概念
- 自监督学习:不需要人工给图片打分类标签,仅依靠图片自身信息设计训练任务,让模型自动学习图像通用特征的训练范式,对比传统有监督训练,最大优势是能海量使用无标注图片,解决视觉领域标注成本极高的痛点,NLP 领域 BERT、GPT 早已依靠该思路实现大模型规模化,而视觉领域此前一直缺少高效可扩展的自监督方案,这也是本文研究出发点。
- 自编码器 AE / 去噪自编码器 DAE:标准自编码器分为编码器 Encoder、解码器 Decoder 两大模块,编码器负责把输入数据压缩成低维隐特征,解码器基于隐特征还原原始输入;去噪自编码器是 AE 的变体,会主动给输入添加噪声、遮挡,迫使模型学习更鲁棒的核心信息,MAE 本质属于面向图像 patch 的去噪自编码器,是 DAE 在 Transformer 视觉模型上的创新落地。
- Vision Transformer(ViT):将图片切分成固定大小无重叠小块(patch),把每个 patch 当作类似文本单词的 token,依靠自注意力机制建模全局图像依赖,摆脱卷积神经网络 CNN 局部感受野限制,但原生 ViT 直接有监督训练极易过拟合,很难训练超大模型,MAE 就是专门配套 ViT 的预训练方案,解决 ViT 难训、泛化差的问题。
- 掩码建模 MIM(Masked Image Modeling):借鉴 NLP BERT 掩码思路,随机遮挡输入一部分单元,让模型预测被遮挡部分内容;语言中掩码 15% 单词即可,但图像像素冗余极强,传统低掩码比例任务难度太低,模型仅靠相邻像素就能插值还原,学不到高级语义,这是视觉掩码和文本掩码最关键的区别,也是本文重点攻克的基础知识点。
- 线性探测 Linear Probing & 微调 Fine-tune:两种评估预训练特征好坏的标准方式,线性探测冻结预训练编码器全部参数,仅训练一层线性分类器,单纯衡量特征线性可分性;微调放开编码器全部 / 部分参数联合训练,贴近真实下游任务使用场景,本文实验同时用两种指标完整验证模型效果,并且指出线性探测不能完全代表迁移性能。
- 迁移学习下游任务:预训练好的编码器可以直接复用,适配图像分类、目标检测、实例分割、语义分割等各类视觉任务,无需从头训练大模型,本文在 COCO、ADE20K、iNaturalist、Places 等多套数据集验证 MAE 预训练的迁移增益。
- FLOPs 计算量、训练加速比:衡量模型训练效率核心指标,FLOPs 越低计算开销越小,加速比代表对比基线模型训练耗时缩短倍数,本文不对称编码器结构大幅降低 FLOPs,最高实现 4 倍训练提速,同时减少显存占用,支撑超大 ViT-Huge 模型训练。
1.2 行业背景知识点
- NLP 与视觉领域自监督发展不均衡:BERT、GPT 依靠掩码、自回归预训练轻松训练千亿参数大模型,可视觉领域长期依赖对比学习(MoCo、SimCLR)、传统去噪自编码器,对比学习极度依赖复杂数据增强,旧掩码方法掩码比例低、计算量大、无法扩展超大 ViT,同等算力下模型容量上限远低于 NLP 大模型。
- 图像与文本信号本质差异(全文核心理论基础):文本是高语义、低冗余人工符号,遮挡少量单词就需要全局语义推理;图像是高冗余自然像素信号,相邻色块高度相似,低遮挡率下模型只会学习低级纹理插值,无法理解物体、场景整体语义,本文全部创新设计都是围绕消除图像冗余、提升预训练任务难度展开。
- 现有视觉掩码方案缺陷(BEiT、iGPT 等):BEiT 需要额外训练 dVAE 离散分词器,把像素转为语义 token,多一步预训练流程、增加计算开销;iGPT 直接序列化全部像素,输入序列过长算力爆炸;传统对称自编码器编码器要同时处理可见 + 掩码 token,输入长度不变,训练速度慢、显存占用高,无法扩展超大模型。。
1.3 核心理论知识点
- 超高掩码比例有效论 :论文通过大量消融实验证明图像最优掩码比例 75%,遮挡四分之三 patch 后图像冗余完全消除,模型必须整合全局可见 patch 信息推理物体完整结构,强迫学习高层语义,区别于 BERT 15% 掩码固定设置。
- 不对称编解码架构理论:编码器只输入未被遮挡的少量可见 patch,完全舍弃掩码 token,大幅缩短编码器输入序列降低计算;解码器轻量化,统一拼接编码特征 + 可学习掩码 token,完整重建图像,把全部计算开销转移到低成本轻量解码器,兼顾训练速度与重建任务完整性。
- 仅掩码 patch 计算损失:训练损失只在被遮挡像素上计算,可见 patch 不参与损失回传,模型不用浪费算力还原已知内容,聚焦学习缺失区域语义信息,进一步提升特征表征质量。
- 像素重建优于离散 token:消融实验证明直接预测归一化 RGB 像素效果不弱于 BEiT 的离散 token 预测,省去额外分词器训练流程,整体框架极简、落地门槛更低。
- 预训练与推理解耦:训练阶段完整使用编码器 + 轻量解码器,模型部署做识别任务时直接丢弃解码器,仅保留编码器提取图像特征,不增加推理阶段任何计算开销,完美适配工业落地。
2.技术改进
2.1对比传统对称去噪自编码器(DAE、Context Encoder)的改进
- 结构不对称革新,算力大幅削减 传统自编码器编码器和解码器规模接近,输入必须包含全部像素块,哪怕大量被遮挡也要全部送入编码器,序列长度固定、计算开销居高不下;MAE 编码器仅接收 25% 左右可见 patch,直接砍掉 75% 输入 token,自注意力复杂度随 token 数量二次下降,整体训练 FLOPs 直接减少 3 倍以上,同时显存占用显著降低,原本无法在单卡 / TPU 训练的 ViT-Huge 大模型可以轻松完成预训练。
- 超高掩码比例设计,解决图像冗余痛点 旧去噪自编码器掩码比例普遍低于 50%,图像剩余信息过多,模型仅学习纹理填充;MAE 固定 75% 随机掩码,大幅提升预训练任务难度,迫使模型学习物体全局结构、语义关联,而不是简单复制相邻像素,预训练得到的特征在所有下游任务泛化能力全面提升。
- 损失函数轻量化设计 传统 DAE 对整张图像全部像素计算重建损失,可见区域占用大量计算资源;MAE 只对被遮挡 patch 计算 MSE 均方误差,可见 patch 不参与损失计算,梯度只针对缺失区域反向传播,训练目标更聚焦、收敛速度更快。
2.2对比对比学习方案(MoCo v3、SimCLR、DINO)的核心改进
- 摆脱对复杂数据增强的强依赖 对比学习必须依靠随机裁剪、色彩抖动、高斯模糊等多重增强构造正负样本,缺少增强后模型效果暴跌;MAE 仅需要最简单随机裁剪,甚至无任何增强也能完成有效预训练,训练流程简化,降低工程调参成本。
- 模型扩展能力更强,超大 ViT 增益显著 对比学习在 ViT-Large/Huge 大模型上极易出现严重过拟合,精度提升空间有限;MAE 预训练天然适配大容量 ViT,ViT-Huge 在 ImageNet-1K 微调达到 87.8% 的 SOTA 精度,仅使用 1 万张标注图片就超越所有同期对比学习方法。
- 表征偏向高层语义,下游迁移性能全面领先 对比学习学习的特征线性可分性强,但非线性微调、检测分割任务增益有限;MAE 学习特征线性探测分数偏低,但只要微调少量 Transformer 层就能实现巨大精度提升,在目标检测、语义分割任务上相比 MoCo v3 平均提升 2~4 个 mAP/mIoU 指标,更贴合真实工业视觉任务需求。
2.3对比同期掩码视觉模型 BEiT、iGPT 的关键改进
- 移除离散分词器,框架极简无额外前置训练 BEiT 必须先基于 2.5 亿图片训练 dVAE 分词器,把连续像素转为离散 token,增加整套训练流水线;MAE 直接预测归一化 RGB 像素,无需额外模型、额外数据集,一套流程完成预训练,代码实现简单、训练资源消耗更低。
- 训练速度 3.5~4.1 倍大幅提升 BEiT 编码器需要同时处理全部 patch 与掩码 token,序列长度无缩减;MAE 编码器过滤全部掩码 token,仅少量可见块参与编码,同等硬件下 ViT-Huge 单轮训练速度提升 3.5 倍,解码器层数降低至 1 层时提速可达 4.1 倍,极大缩短大模型预训练周期。
- 掩码采样策略更优,全局均匀随机遮挡 BEiT 采用块状掩码,一次性遮挡连续大片区域,任务难度不稳定、重建模糊;MAE 采用均匀随机采样分散遮挡 patch,消除图像中心偏向,预训练任务难度稳定,学习到的特征鲁棒性更强。
2.4工程实现层面的轻量化改进
- 无稀疏矩阵运算,普通稠密矩阵即可实现 通过 token 随机打乱、逆还原的简单操作模拟掩码筛选,不需要复杂稀疏计算库,主流 TensorFlow、PyTorch 原生算子就能完成,新手复现代码门槛极低。
- 解码器轻量化可自由调节 解码器层数、维度独立于编码器,默认仅占用编码器 9% 单 token 计算量,甚至 1 层 Transformer 块解码器就能保证微调精度,可根据算力灵活权衡速度与线性探测效果。
- 归一化像素重建小幅提升精度 对每个 patch 内部像素做均值方差归一化后再计算损失,增强局部对比度信息捕捉,相比原始像素重建稳定提升 0.3~0.5 个百分点,操作简单无额外开销。
3.整体流程
分两大阶段:预训练阶段、推理微调阶段
MAE 完整生命周期分为预训练阶段(无标注图片自监督学习,搭建编码器 + 解码器完整架构) 和下游推理 / 微调阶段(丢弃解码器,仅使用编码器完成各类视觉任务) 两大完全分离的流程,两个阶段独立运作、互不干扰。
3.1第一阶段:自监督预训练流程(完整 Encoder+Decoder 参与,输入无标注原图)
- 图像分块预处理:输入任意尺寸 224×224 原图,按照固定 16×16 像素大小切割成互不重叠的方形小块 patch,一张标准 224 图总共得到 14×14=196 个 patch,每一个 patch 单独做线性投影转换,加上可学习位置编码,生成独立图像 token,位置编码作用是让模型识别每个 patch 在原图中的空间坐标,避免丢失空间位置信息。
- 均匀随机掩码采样:按照 75% 固定掩码比例,无放回随机抽取 196 个 patch 中的 147 个进行遮挡移除,仅保留剩余 49 个可见 patch,这里采用全局均匀随机抽取,不会集中遮挡图片中心或者边缘,生成仅包含 25% 可见 token 的短序列,被遮挡的 patch 直接从输入列表中完全删除,不送入编码器。
- 编码器前向传播(仅处理可见 patch):将筛选后少量可见 token 输入标准 Vision Transformer 编码器,多层自注意力层交互学习可见 patch 之间的物体关联、纹理、轮廓特征,全程不引入任何掩码相关向量,编码器只学习真实存在图像块的高维隐表征,因为输入序列长度大幅缩短,自注意力计算量呈平方级下降,这是 MAE 提速的核心步骤,编码器输出每个可见 patch 压缩后的隐特征向量。
- 拼接掩码 token,还原完整序列送入轻量化解码器:提前定义一组全局共享、可训练的掩码 token 向量,代表所有被遮挡的图像块;把编码器输出的可见隐特征和同等数量掩码 token 拼接在一起,再给全部 token 统一添加位置编码,恢复出和原图 patch 数量一致的完整序列,保证解码器知道每一个 token 对应的原图空间位置,不会混淆遮挡区域坐标。
- 轻量解码器重建像素:拼接完成的完整 token 序列送入规模远小于编码器的轻量化 Transformer 解码器(默认 8 层、维度 512,仅为 ViT-L 编码器 9% 计算量),解码器依靠可见 patch 的全局语义信息,推理还原每一个掩码 patch 对应的 RGB 像素值,解码器最后一层线性层输出每个 patch 所有像素数值,重塑尺寸得到完整重建图片。
- 损失计算与反向传播更新参数 :对比解码器预测掩码 patch 像素与原图真实像素,计算归一化后均方误差 MSE 损失,仅针对被遮挡 patch 计算损失,可见 patch 像素不参与损失计算;使用 Adam 优化器反向传播梯度,同步更新编码器、解码器全部权重参数,不断缩小重建误差,循环数百至一千六百个 epoch 完成完整预训练,最终编码器已经掌握通用图像全局语义特征。
3.2第二阶段:下游任务推理 / 微调流程(仅保留 Encoder,彻底舍弃 Decoder)
- 架构裁剪:预训练完成后直接删除整个解码器结构,后续所有任务不再使用,仅保留训练完成的 ViT 编码器作为通用图像特征提取主干网络,推理阶段无任何额外计算开销。
- 下游任务适配两种模式
- 模式 1:线性探测(快速验证特征质量):冻结编码器全部权重,只在编码器输出特征后叠加一层简单线性分类层,仅训练线性层参数,只用少量训练图片快速评估预训练特征线性区分能力,仅作为指标参考,不适合实际业务落地。
- 模式 2:全量 / 部分微调(工业主流用法):放开编码器全部或后几层 Transformer 参数,搭配对应任务头部网络(分类全连接层、Mask R-CNN 检测头、UperNet 分割头),使用少量带标注数据集联合微调训练,MAE 预训练的编码器只需要几十 epoch 就能收敛,精度远超从零训练的 ViT,在分类、检测、分割、细分类、场景识别所有任务稳定带来显著精度提升。
- 真实图像推理部署:微调完成后,输入任意未处理原图,分块编码送入编码器直接输出图像全局特征,交给任务头部输出分类、检测框、分割掩码等最终结果,推理速度和原生 ViT 完全一致,无任何额外延迟。
4.核心技术要领
4.1-要领 1:不对称编解码是整套 MAE 的核心根基,所有提速、扩规模优势全部来源于此
绝大多数初学者会只关注 75% 掩码这个表面参数,但实际上不对称架构才是论文最核心的原创技术要领,传统对称自编码器强制编码器处理全部 patch,不管遮挡多少,输入序列长度永远等于原图总块数,自注意力二次复杂度带来巨大算力浪费;MAE 做了逻辑拆分,把 "特征提取" 和 "图像重建" 两个任务分开交给规模差异巨大的两个模块,编码器只负责高价值的可见块语义提取,删减全部无用掩码 token 压缩计算量,解码器承担低开销像素还原工作,即便解码器处理完整序列,因为自身层数、维度极小,整体总计算量依然大幅降低,这里存在一个关键逻辑:图像重建不需要超大容量网络,低级像素拟合任务对模型容量要求很低,只有提取全局高层语义才需要大容量编码器,把轻量化任务交给轻量解码器,完美平衡训练速度与表征学习质量,同时预训练结束后解码器直接丢弃,不会给线上推理增加任何负担,兼顾训练效率与落地性能,这一套分层分工设计是区别于所有旧掩码模型的本质创新。
4.2-要领 2:75% 超高随机掩码比例是适配图像信号的专属核心要领,必须理解图像与文本的本质区别才能明白设计逻辑
为什么 BERT 只用 15% 掩码,MAE 却要提高到 75%,底层逻辑来自图像天然高冗余属性,文字每一个单词承载独立语义,缺失少量单词就需要上下文推理,而一张图片相邻像素、相邻 patch 高度相似,遮挡 20%~50% 的小块时,模型只需要复制周边色块就能还原画面,全程不需要理解物体轮廓、场景关系,学到的只有低级纹理特征,无法支撑复杂下游任务;当掩码比例提升至 75%,整张图片只剩下零散少量可见碎片,碎片之间距离遥远,不存在可直接复制的相邻像素,模型必须整合全部可见碎片的全局信息,推理物体完整结构、物体之间位置关系、场景整体布局,才能准确还原被遮挡大片区域,这时候预训练任务从简单纹理填充转变为全局语义推理,逼迫编码器学习真正具备泛化能力的高层视觉特征,同时论文通过消融实验证明掩码比例低于 60% 或高于 85% 都会出现精度下滑,75% 是兼顾任务难度、训练稳定性、计算速度的最优平衡点,另外必须搭配均匀随机掩码采样,如果换成连续块状掩码,遮挡区域过于集中,剩余可见信息局部化严重,重建难度失衡,特征学习效果会大幅下降,均匀分散遮挡是保障超高掩码效果的配套必要要领。
4.3-要领 3:直接预测归一化像素而非离散 token,实现极简无额外依赖的预训练流水线,大幅降低新手复现与落地难度
同期 BEiT 选择先训练 dVAE 分词器,把连续 RGB 像素压缩为离散语义 token,预训练目标改为预测 token 编号,这套方案存在两层额外门槛,第一需要海量外部图片训练分词器,额外消耗算力与数据集资源,第二推理、训练时必须串联分词器与视觉 Transformer,代码链路更长、调参变量更多;MAE 抓住一个关键结论:归一化后的连续像素本身包含足够训练信息,不需要额外离散化操作,对每个 patch 内部像素做标准化处理后,使用简单均方误差就能完成有效预训练,消融实验对比 token 预测与像素预测在分类、检测、分割任务精度几乎无差异,像素方案还省去分词器全部训练、部署成本,整套 MAE 仅依靠 ViT 基础结构 + 简单重建损失就能运行,新手只需要实现分块、掩码、编解码、MSE 损失四部分基础代码,就能完整复现论文核心效果,没有复杂第三方模型依赖,这是工程落地层面至关重要的核心要领,也是 MAE 相比同类掩码模型普及度更高的核心原因。
4.4-要领 4:仅对掩码 patch 计算重建损失,优化训练梯度流向,让模型聚焦高价值语义学习
传统去噪自编码器会对整张图片所有像素计算重建损失,其中四分之三是未遮挡、信息已知的可见 patch,模型会浪费大量梯度更新算力去还原完全已知的画面内容,梯度信号分散,无法集中优化缺失区域的语义推理能力;MAE 人为约束损失计算范围,只针对被掩码遮挡、需要全局推理才能还原的 patch 计算误差,梯度全部用来优化编码器提取全局关联特征、解码器推理缺失内容的能力,梯度信号高度聚焦,模型收敛速度更快,学习到的特征语义信息更丰富,同时减少矩阵运算量,进一步降低训练显存占用,这个微小的损失设计改动,在消融实验中稳定带来 0.5 个百分点左右的微调精度提升,属于低成本高收益的关键细节技术要领。
4.5-要领 5:预训练与推理阶段完全解耦,架构拆分设计完美适配工业线上部署,不存在推理效率损耗
很多自监督模型预训练与推理需要完整保留全部模块,线上运行带来额外延迟,MAE 从架构底层做了解耦规划,训练阶段解码器仅作为辅助重建工具,仅在自监督预训练更新权重时生效,一旦预训练流程结束,解码器没有任何保留价值,可以直接永久删除,线上推理只使用纯 ViT 编码器,输入图片直接输出特征,推理速度、显存占用和原生有监督 ViT 完全一致,不会因为做过 MAE 预训练增加任何线上开销,同时编码器具备极强通用性,不需要针对检测、分割、分类任务单独调整主干网络,只更换任务输出头即可完成全品类视觉任务适配,兼顾预训练收益与线上性能,是面向工业场景不可忽视的核心设计要领。
4.6-要领 6:模型可自由扩展超大容量 ViT,打破视觉自监督模型规模上限,对齐 NLP 大模型扩展规律
过往对比学习、传统掩码方法在 ViT-Large、ViT-Huge 超大模型上训练极易发生严重过拟合,模型容量提升后精度不涨甚至下跌,MAE 依靠超高掩码带来强自监督任务约束、不对称架构降低显存压力两大核心优势,完美支撑超大参数量视觉模型训练,随着编码器参数量从 ViT-B 提升至 ViT-H,ImageNet 微调精度持续稳定上涨,没有出现饱和拐点,在 iNaturalist 细分类、Places 场景数据集上大幅超越使用数十亿图片预训练的旧模型,证明 MAE 具备和 NLP 掩码预训练一致的可扩展特性,模型越大、数据越多效果越好,打通视觉大模型自监督预训练可行路径,这也是论文标题 "Scalable Vision Learners(可扩展视觉学习器)" 对应的核心技术要领,是整篇论文最大行业价值所在。
4.7-整体总结(长段汇总,逻辑闭环)
综合全部核心技术要领来看,MAE 整套设计从图像与文本信号天然差异作为理论出发点,针对性解决传统视觉自监督方法算力高、难扩展、依赖复杂增强、流水线繁琐、超大模型易过拟合五大痛点,以不对称编码器 - 解码器架构为底层核心,搭配 75% 均匀随机超高掩码、归一化像素重建、掩码区域专属损失、预训练推理解耦六大配套关键设计,形成一套极简、高效、可无限扩展的视觉自监督预训练框架,既在理论层面解释了掩码建模适配图像的底层逻辑,又在工程层面大幅降低大 ViT 模型训练算力门槛,下游各类视觉任务均取得同期最优迁移性能,打通了视觉领域依靠无标注数据训练超大通用模型的完整路径,为后续 CAE、SimMIM 等大量掩码视觉模型奠定基础,是 ViT 时代自监督学习里程碑式工作,所有技术要领层层关联、相互配合,单独使用任意一项设计都无法达到论文完整效果,必须整套架构协同运行才能兼顾训练速度、模型规模、下游精度三大核心指标。