从 ViT 到 SAM:发展主线总表

阶段 代表方法 核心问题 主要贡献
图像 Transformer 起点 ViT 图像能否像文本一样处理? 将图像切成 patch token,用 Transformer 编码
数据高效训练 DeiT ViT 能否在中等规模数据上训练? 蒸馏和训练策略降低 ViT 训练门槛
密集任务适配 PVT / PVTv2 Transformer 如何适配检测和分割? 金字塔结构、多尺度特征、线性注意力
通用视觉骨干 Swin Transformer 如何降低高分辨率 attention 成本? 层级结构、窗口注意力、移动窗口机制
像素重建自监督 MAE ViT 能否通过重建图像学习表示? 高 mask ratio + 非对称 encoder-decoder
视觉 token 预测 BEiT 图像能否像 BERT 一样预测 token? 使用 visual tokenizer 构造离散预测目标
视觉词表 VQ-VAE / VQGAN / BEiT v2 图像 token 从哪里来? 将连续图像转换成离散 visual token
自蒸馏学习 DINO 无标签下 ViT 能否学到语义结构? teacher-student 自蒸馏,注意力图涌现目标区域
图文多模态 CLIP 图像如何与语言对齐? 图文对比学习,zero-shot 分类
分割基础模型 SAM ViT 能否成为通用分割编码器? promptable segmentation + SA-1B + ViT image encoder

从这张表可以看出,ViT 的发展并不是简单地“模型越来越大”,而是围绕几个核心问题逐步展开。

ViT 发展的第一条主线:从局部建模到全局建模

CNN 的核心是局部卷积。

ViT 的核心是全局 self-attention。

这种变化使视觉模型从“局部模式堆叠”转向“全局关系建模”。

在 CNN 中,如果两个区域距离很远,它们的信息交互需要经过多层卷积逐步传递。

而在 ViT 中,任意两个 patch token 都可以通过 self-attention 直接交互。

这对很多任务都很重要。

例如:

图像分类需要全局语义
目标检测需要区域关系
语义分割需要前景背景关系
图文对齐需要全局图像概念
SAM 分割需要理解 prompt 和目标区域的关系

所以 ViT 的第一条主线是:

从局部卷积建模走向全局 token 关系建模。

ViT 发展的第二条主线:从监督学习到自监督预训练

最初的 ViT 主要依赖监督训练。

后来 MAE、BEiT、DINO 等方法证明:

ViT 非常适合自监督预训练。

原因在于,ViT 的 patch token 结构天然适合构造自监督任务。

可以遮住 patch,然后预测像素:MAE

可以遮住 patch,然后预测 visual token:BEiT

可以构造不同增强视图,然后做自蒸馏:DINO

这些方法虽然形式不同,但本质上都在利用图像自身构造监督信号。

自监督预训练的意义是:不依赖人工标签,也可以训练出强大的视觉表示。

这对大规模视觉模型非常重要,因为人工标注永远昂贵且有限。

ViT 发展的第三条主线:从固定类别到开放语义

传统分类模型通常有固定类别空间。

例如 ImageNet 分类器只能输出固定类别。

而 CLIP 改变了这一点。

CLIP 通过自然语言监督,让图像表示和文本表示对齐。

这样,类别不再是固定分类头中的一个索引,而是可以由自然语言 prompt 动态定义。

例如:

a photo of a dog
a satellite image of a city
a medical image of a tumor
a diagram of a neural network

这些文本都可以作为类别或检索条件。

这说明 ViT 的能力从 fixed-label classification 扩展到了 open-vocabulary recognition。

这条主线可以概括为:

从封闭类别识别走向开放语义理解。

ViT 发展的第四条主线:从图像级理解到像素级理解

ViT 最初主要用于图像分类。

分类任务只需要输出一个图像级标签。

但是视觉任务不只有分类,还有检测、分割、跟踪、交互式编辑等。

这些任务要求模型理解空间结构。

PVT 和 Swin 解决了多尺度特征和密集预测适配问题。

DINO 展示了 ViT 注意力图中会涌现目标区域。

SAM 则进一步把 ViT 用作 dense image encoder,根据 prompt 输出像素级 mask。

这说明 ViT 的角色发生了变化:

图像分类 backbone
  ↓
通用视觉表征学习器
  ↓
多模态视觉编码器
  ↓
分割基础模型编码器

因此,ViT 的发展不是停留在图像级分类,而是逐渐进入像素级空间理解。

ViT 发展的第五条主线:从结构创新到数据和任务定义创新

早期研究更关注模型结构。

例如:

如何切 patch?
如何设计位置编码?
如何降低 attention 计算量?
如何构建层级结构?

后来研究逐渐发现:模型结构固然重要,但数据和任务定义同样重要。

MAE 的成功不仅来自 ViT,还来自高比例 mask 的任务设计。

BEiT 的成功依赖 visual tokenizer 构造预测目标。

DINO 的成功依赖 teacher-student 自蒸馏和多视图一致性。

CLIP 的成功依赖大规模图文对和对比学习任务。

SAM 的成功依赖 promptable segmentation 任务和 SA-1B 数据引擎。

所以 ViT 的发展告诉我们:

基础模型的能力不只来自网络结构,还来自预训练任务、数据规模和任务定义。

这也是现代视觉模型发展的重要趋势。

为什么 ViT 适合成为视觉基础模型骨架?

ViT 之所以适合成为视觉基础模型骨架,主要有几个原因。

1. 统一的 token 化建模方式

ViT 把图像转换成 patch token。文本模型把文本转换成 word token 或 subword token。视频可以转换成时空 token。音频可以转换成频谱 token。这说明 Transformer 具有很强的模态统一能力。

2. 强大的可扩展性

Transformer 在参数规模、数据规模和计算规模增大时,通常具有较好的扩展潜力。这也是它能够成为大模型主干的重要原因。

3. 全局关系建模能力

Self-attention 能直接建模长距离依赖。这对图像理解、图文对齐、视频理解、分割任务都很重要。

4. 容易结合不同预训练目标

ViT 可以结合多种训练方式:

监督分类
知识蒸馏
masked image modeling
self-distillation
contrastive learning
promptable segmentation

这种灵活性使它非常适合作为基础模型骨架。

5. 容易扩展到多模态

CLIP 证明,ViT 可以和文本 Transformer 对齐。

后续很多多模态模型都可以把 ViT 作为视觉编码器,再接语言模型或跨模态模块。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐