ViT 家族 8 种方法(ViT / Swin / DeiT / MAE / DINO / I-JEPA / AIM / RADIO)系统对比?
一句话定位
ViT 家族 8 种方法都是 视觉 backbone / 视觉预训练方法,但解决的问题完全不同。按 训练目标 分成 4 类最清晰:
| 类别 | 方法 | 核心问题 |
|---|---|---|
| 基础架构 | ViT, Swin Transformer | 图像怎么切成 token,怎么做 attention |
| 蒸馏式训练 | DeiT, DINO/DINOv2, RADIO/AM-RADIO | 没有/少量标签时,怎么学到强视觉特征 |
| 重建/预测式自监督 | MAE, I-JEPA/V-JEPA 2 | mask 一部分输入,让模型恢复或预测 |
| 自回归视觉预训练 | AIM/AIMv2 | 像 LLM 一样按顺序预测视觉 token / patch |
总体对比表
| 方法 | 核心思想 | 训练目标 | 需要标签吗 | 强项 | 弱点 |
|---|---|---|---|---|---|
| ViT | 把图像切成 patch,当成 token 输入 Transformer | supervised classification | 通常需要 | 简单、可扩展、统一图像和语言建模思路 | 数据量小时不如 CNN 稳 |
| Swin Transformer | 用 window attention 降低复杂度,再用 shifted window 连接窗口 | supervised / downstream pretrain | 通常需要 | 高效、适合 dense prediction | 架构比 ViT 复杂 |
| DeiT | 用 CNN teacher 蒸馏 ViT,引入 distillation token | supervised + distillation | 需要标签/teacher | 小数据下训练 ViT 更稳 | 依赖 teacher |
| MAE | mask 75% patch,只重建被 mask 的像素/patch | reconstruction | 不需要 | 简单高效,适合大规模预训练 | 重建像素不一定等于语义理解 |
| DINO/DINOv2 | teacher-student 自蒸馏,多 crop 一致性学习 | self-distillation | 不需要 | 特征语义强,迁移好,适合 dense/seg/retrieval | 训练技巧多,防 collapse 复杂 |
| I-JEPA / V-JEPA 2 | 不预测像素,而是在 latent feature space 预测 missing region/video future | representation prediction | 不需要 | 更偏语义和世界模型,适合视频/动作理解 | 理解门槛高,训练设计复杂 |
| AIM/AIMv2 | 把视觉 patch 当序列,像 LLM 一样自回归预测 | autoregressive prediction | 不需要或多模态数据 | 训练范式简单,可扩展,接近 LLM 思路 | 计算成本高,顺序建模可能低效 |
| RADIO/AM-RADIO | 多 teacher 蒸馏,把 CLIP/DINO/SAM 等能力合到一个 backbone | multi-teacher distillation | 需要 teacher | 一个模型同时保留 text grounding、dense feature、seg 等能力 | 强依赖 teacher,训练工程复杂 |
AM-RADIO 的目标:通过多 teacher distillation 把不同视觉基础模型的能力整合到一个统一 student backbone,例如
CLIP的 zero-shot/text grounding、DINOv2 的 dense correspondence、SAM 的 segmentation-like capability。
一句话记忆版
| 方法 | 一句话记忆 |
|---|---|
| ViT | 图像切 patch,当 token 喂给 Transformer |
| Swin | 不做全局 attention,只在 window 内做;shift window 让窗口之间通信 |
| DeiT | 用 teacher 蒸馏 ViT,让 ViT 在 ImageNet 这种规模上也训得动 |
| MAE | 遮住 75% patch,只让 encoder 看少量可见 patch,再用轻量 decoder 重建图像 |
| DINO/DINOv2 | 不用标签,让 student 模仿 teacher,不同 crop 下表示一致 |
| I-JEPA/V-JEPA 2 | 不重建像素,而是在特征空间预测被遮挡区域/未来视频表示 |
| AIM/AIMv2 | 像 GPT 预测下一个 token 一样预测图像 patch / 图文序列 |
| RADIO/AM-RADIO | 把多个强 teacher 的能力蒸馏进一个统一视觉 backbone |
按技术路线详细对比
1. ViT · 最基础的视觉 Transformer
1Image2→ split into patches3→ flatten each patch4→ linear projection5→ patch embeddings6→ add [CLS] token7→ add positional embeddings8→ Transformer encoder9→ use [CLS] output for classification
核心点:
- 图像切成固定大小 patch(如 16×16),每个 patch 展平成向量
- 通过 linear projection 变成 token embedding
- 加
[CLS]token 作为全图表示 - 加 positional embedding 保留空间位置信息
- 输入
Transformerencoder,用[CLS]输出做分类
价值:把图像问题变成了 token sequence modeling。
缺点:ViT 缺少 CNN 的 inductive bias(locality 和 translation equivariance),通常需要更大数据或更强预训练。
2. Swin Transformer · 让 ViT 更适合检测/分割
普通 ViT 的 attention 是全局的,复杂度随 token 数平方增长。Swin 的做法:
- Window attention:每个 patch 只看自己窗口内的 patch
- Shifted window attention:下一层把窗口整体平移半个窗口大小,让原本不同窗口的 token 互相注意
核心优势:复杂度更低 · 层级结构类似 CNN · 对 object detection / segmentation / dense prediction 更友好 · 可以产生多尺度 feature map。
ViT更像 NLPTransformer,Swin 更像 CNN-style hierarchicalTransformer。
3. DeiT · 让 ViT 在较小数据上训得更好
核心问题:ViT 原本需要大规模数据预训练,但只有 ImageNet 规模时不容易训好。
1Image patches + [CLS] token + distillation token2→ Transformer3→ classification head from [CLS]4→ distillation head from distillation token
引入 distillation token,让 student ViT 学 teacher model(通常是 CNN,比如 RegNet)的输出。
DeiT = 用蒸馏把
ViT训稳,属于 supervised learning + knowledge distillation。
4. MAE · 遮住大部分 patch 让模型重建
1Image patches2→ randomly mask 75%3→ encoder only sees visible 25%4→ lightweight decoder reconstructs masked patches
关键设计:
| 设计 | 作用 | |---|---| | high mask ratio (75%) | 提高任务难度,避免模型只学低级纹理 | | asymmetric encoder-decoder | encoder 只处理可见 patch,省计算 | | lightweight decoder | decoder 只负责重建,预训练后丢掉 | | pixel reconstruction | 训练目标简单稳定 |
为什么 mask 75% 还有效:图像有很强冗余,只看 25% patch 仍可推断大致结构。
优点:训练简单 · 不需要标签 · 计算高效 · 适合大规模 ViT 预训练
缺点:目标是重建像素,可能偏低层视觉 · 对语义对齐不如 CLIP/DINO 那类方法直接
5. DINO / DINOv2 · 自蒸馏学强语义特征
核心:同一张图的不同增强视角,应该有一致的语义表示。
1same image2→ global crop / local crop3→ teacher network4→ student network5→ student matches teacher output
关键技巧:
| 技巧 | 作用 |
|---|---|
| teacher-student | teacher 提供稳定目标 |
| momentum teacher | teacher 是 student 的 EMA 更新 |
| multi-crop | 同一图片产生 global/local views |
| centering/sharpening | 防止 collapse |
| cross-entropy between outputs | 让 student 对齐 teacher 分布 |
DINO 用 multi-crop augmentation:teacher 看 global crops,student 看 global + local crops,迫使 student 从局部预测全局语义。
DINOv2 = 更强规模 + 更强数据 + 更稳定训练,特征在分类、检索、分割、dense matching 上都很强。
DINO 是「没有标签的 teacher-student 蒸馏」,MAE 是「遮住图像重建像素」。
6. I-JEPA / V-JEPA 2 · 在特征空间做预测
核心区别:不预测像素,而是预测目标区域的抽象表示。
1Image2→ context blocks → context encoder3→ target blocks → target encoder4→ predictor predicts target representation from context representation
关键点:context encoder 看部分区域;target encoder 编码目标区域;predictor 根据 context representation 预测 target representation;loss 在 latent feature space 上计算,不直接重建像素。
为什么有意义:像素重建容易关注低级细节(纹理、颜色、边缘),feature-space prediction 更鼓励学习语义和结构。
V-JEPA 2 = 扩展到视频,通过大规模视频自监督学习视频世界模型,并结合少量 robot trajectories 做 action-conditioned planning。
MAE 是补像素,JEPA 是补语义表示;V-JEPA 是扩展到视频和世界模型。
7. AIM / AIMv2 · 自回归视觉预训练
核心思想:既然 LLM 可以预测下一个 text token,那么视觉模型能不能预测下一个 image patch/token?
1Image2→ patch sequence3→ autoregressive Transformer4→ predict next patch / visual token
AIMv2 扩展到多模态自回归预训练,把 image patches 和 text tokens 放入统一序列中训练,使用 multimodal autoregressive objective,通过 decoder 生成 raw patches 和 text tokens。
vs MAE:
| 方法 | 预测方式 | |---|---| | MAE | 随机 mask 后重建被 mask patch | | AIM | 按顺序预测下一个 patch | | AIMv2 | 在图文统一序列中做自回归预测 |
AIM 是视觉版 GPT,MAE 是视觉版
BERT/Masked Autoencoder。
8. RADIO / AM-RADIO · 多 teacher 蒸馏统一 backbone
问题:视觉基础模型很多,每个擅长的能力不同,能否合成一个统一 backbone?
| Teacher | 擅长能力 |
|---|---|
| CLIP | image-text alignment, zero-shot classification |
| DINOv2 | strong dense visual features |
| SAM | segmentation / mask-related spatial understanding |
| depth / segmentation teacher | geometry / dense prediction |
AM-RADIO 用 multi-teacher distillation 训练一个 student backbone,让 student 同时模仿多个 teacher 的特征或输出,把 CLIP variants、DINOv2、SAM 等模型的能力合并进一个高效视觉 backbone。
RADIO/AM-RADIO 不是发明一种新的 attention,而是用多 teacher 蒸馏融合多个 foundation model 的能力。
几个容易混淆的精细对比
ViT vs Swin
| 对比点 | ViT | Swin |
|---|---|---|
| Attention | global attention | window attention |
| 复杂度 | 高 | 更低 |
| 结构 | flat | hierarchical |
| 适合任务 | classification / general pretraining | detection / segmentation / dense tasks |
| 核心技巧 | patch token + CLS | window + shifted window |
ViT是最原始的视觉Transformer;Swin 是更工程化、更适合 dense vision 的层级版ViT。
DeiT vs DINO
| 对比点 | DeiT | DINO |
|---|---|---|
| 是否需要 label | 需要 | 不需要 |
| teacher 来源 | 通常是外部 CNN teacher | momentum teacher(EMA of student) |
| 目标 | 学 label + teacher output | student 匹配 teacher view |
| 类型 | supervised distillation | self-distillation |
| 目的 | 小数据训好 ViT | 学通用视觉表示 |
DeiT 是有监督蒸馏,DINO 是无标签自蒸馏。
MAE vs DINO
| 对比点 | MAE | DINO | |---|---|---| | 训练目标 | 重建 masked pixels/patches | 对齐 teacher-student 表示 | | 学习信号 | reconstruction | representation consistency | | 是否重建图像 | 是 | 否 | | 特征倾向 | 结构 + 局部细节 | 语义 + object-level | | 防 collapse | 不需要太复杂 | 需要 centering/sharpening 等 |
MAE 学会"补图",DINO 学会"同一物体不同视角表示一致"。
MAE vs I-JEPA
| 对比点 | MAE | I-JEPA | |---|---|---| | 预测对象 | pixel / patch reconstruction | latent representation | | 是否生成像素 | 是 | 否 | | 学习重点 | 视觉重建 | 语义预测 | | 噪声细节 | 容易关注低层细节 | 更少关注像素细节 | | 理念 | masked autoencoding | predictive representation learning |
MAE 是在像素空间填空,I-JEPA 是在语义特征空间填空。
DINO vs I-JEPA
| 对比点 | DINO | I-JEPA | |---|---|---| | 核心机制 | self-distillation | predictive coding | | 输入 | 多 crop views | context block + target block | | 目标 | student 匹配 teacher output | context 预测 target representation | | 是否依赖增强 | 很依赖 crop/augmentation | 更依赖 block masking/prediction | | 直觉 | 多视角一致性 | 从上下文预测缺失语义 |
DINO 是"不同视角要一致",I-JEPA 是"看到一部分要预测另一部分的语义"。
AIM vs MAE
| 对比点 | AIM | MAE |
|---|---|---|
| 训练范式 | autoregressive | masked reconstruction |
| 类比 NLP | GPT | BERT / MAE |
| 预测方式 | 按顺序预测下一个 patch/token | 随机 mask 后重建 |
| 优点 | 与 LLM 范式统一,易扩展到图文序列 | 简单高效,训练稳定 |
| 缺点 | 顺序建模成本高 | reconstruction 可能偏低层 |
AIM 是视觉 GPT,MAE 是视觉 masked autoencoder。
AIMv2 vs RADIO/AM-RADIO
| 对比点 | AIMv2 | RADIO/AM-RADIO | |---|---|---| | 核心路线 | 自回归预训练 | 多 teacher 蒸馏 | | 学习信号 | image patch + text token prediction | 模仿多个 teacher | | 目标 | 从数据中学通用视觉 encoder | 融合多个现成 foundation models 能力 | | 依赖 teacher | 不一定 | 强依赖 | | 优势 | 训练范式统一、可扩展 | 下游能力综合强 |
AIMv2 靠自回归目标自己学,AM-RADIO 靠多个强 teacher 教出来。
面试角度
问:8 种方法你按什么维度分类?
答:训练目标维度最干净——基础架构(ViT/Swin)、蒸馏式(DeiT/DINO/RADIO)、重建-预测式(MAE/JEPA)、自回归(AIM)。架构本身(global vs window attention)是次要分类。
问:MAE 和 DINO 谁更适合做 VLM 的视觉塔? 答:DINOv2。MAE 重建像素的目标让特征偏低层(纹理/边缘),dense prediction 强但语义对齐弱;DINOv2 的 self-distillation 让特征自带语义结构,[CLS] attention map 直接对应前景物体,对 segmentation / grounding / VQA spatial 类任务更友好。LLaVA-OneVision / InternVL-3 都用 DINOv2 + SigLIP 双塔。
问:JEPA 不预测像素的优势在哪? 答:像素重建会浪费 capacity 学纹理 / 颜色这类对下游无用的低层信息;latent prediction 让模型只关注"可预测的语义结构"。V-JEPA 2 在视频上加 action-conditioned latent prediction,直接可做世界模型 + robot planning,是单纯 MAE 思路做不到的。
问:AM-RADIO 跟 ensemble 是什么关系?
答:不是 ensemble。Ensemble 推理时跑多个模型;AM-RADIO 训练时让一个 student 同时蒸馏多个 teacher,推理只跑 student,部署成本和单 backbone 一样,但能力 = CLIP + DINOv2 + SAM 综合。
问:为什么 ViT 在小数据上不如 CNN?DeiT 怎么解决?
答:ViT 没有 CNN 的 locality + translation equivariance inductive bias,必须靠数据学出来;ImageNet-1K 数据量不够 → 性能落后 CNN。DeiT 通过 distillation token 让 ViT 模仿 CNN teacher(RegNet)的输出,等于"让 ViT 偷 CNN 的归纳偏置",从而在小数据上也能训稳。
- BERT: Pre-training of Deep Bidirectional Transformers· 2018看站内总结 →
Masked Language Modeling + 双向 Transformer Encoder——预训练+微调范式的奠基之作。
- CLIP: Learning Transferable Visual Representations· 2021看站内总结 →
4 亿图文对 + 对比学习——零样本图像分类能和监督训练的 ResNet 匹敌。
- LLaVA: Visual Instruction Tuning· 2023看站内总结 →
CLIP-ViT + LLaMA + 一个 linear projection——简单但有效的开源 VLM 基线。
- MAE: Masked Autoencoders Are Scalable Vision Learners· 2021看站内总结 →
BERT-for-vision:mask 掉 75% patch、不对称 encoder/decoder、像素级重建——把 ViT 的 SSL 推到生产可用。
- DINO: Emerging Properties in Self-Supervised Vision Transformers· 2021看站内总结 →
Self-distillation with no labels:学生预测教师 (EMA) 的 softmax,纯靠 multi-crop + centering + sharpening 学到能直接做分割的视觉特征。
- DINOv2: Learning Robust Visual Features without Supervision· 2024看站内总结 →
把 DINO 的 self-distillation + 142M 精挑数据 + iBOT 风格 patch-level loss 推到 ViT-g (1.1B),产出可直接用于多种下游任务的「通用视觉特征」。