探索/视觉

经典视觉arXiv:2010.11929

ViT:图像也是一串 token

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner, Mostafa Dehghani, Matthias Minderer, Georg Heigold, Sylvain Gelly, Jakob Uszkoreit, Neil Houlsby

ICLR · 2021

45k 引用 · 1.6k 阅读 · 0 收藏

摘要

把图像切成 patch 当 token,纯 Transformer 在大规模预训练后可以匹敌甚至超过 CNN。

Shows that a pure Transformer applied to image patches can match or exceed CNNs on image classification when pretrained at scale.

提要

ViT 表明卷积并非视觉识别的必要条件:当预训练规模足够时,纯注意力机制也能学到有效表征。它把图像切成 patch 当作 token,用标准 Transformer 编码器完成分类。

01背景与动机

卷积神经网络长期主导图像识别,因其内置的局部连接与平移等变等归纳偏置十分契合视觉数据。与此同时,Transformer 在自然语言处理中取得巨大成功,却很少被直接用于像素级视觉任务。作者希望检验:若仅做最小改动,纯 Transformer 能否胜任图像分类。

关键挑战在于,Transformer 缺少卷积所提供的局部结构先验,在中小规模数据上往往难以收敛到良好解。论文强调,当预训练数据规模足够大时,数据本身可以补偿归纳偏置的缺失,使注意力机制学会有效的视觉表征。这一动机直接推动了后续大规模视觉预训练范式。

02核心方法

图像被均匀切成固定大小的不重叠 patch,论文中常见设置为 16×16 像素。每个 patch 先展平为一维向量,再经线性投影映射到与 Transformer 隐层维度一致的 token,并附加可学习的一维位置嵌入以保留空间顺序。

序列最前端插入一个可学习的分类专用 token(称为 CLS),整段序列送入标准的多层 Transformer 编码器进行全局自注意力计算。最终只取出 CLS 对应的输出向量,通过一个多层感知机分类头得到类别预测。整体结构几乎与 BERT 式文本编码器一致,几乎没有为视觉任务额外设计的专用模块。

模型概览。将图像分割为固定大小图块,线性嵌入后加入位置嵌入,再输入标准Transformer编码器;分类时在序列中加入可学习的“分类标记”。Transformer编码器图示受Vaswani等人2017年工作启发。
1. 模型概览。将图像分割为固定大小图块,线性嵌入后加入位置嵌入,再输入标准Transformer编码器;分类时在序列中加入可学习的“分类标记”。Transformer编码器图示受Vaswani等人2017年工作启发。

03结果与证据

在足够大规模的数据集上完成预训练后,再迁移到标准图像分类基准,纯 Transformer 模型可以达到与当时主流卷积网络相当、甚至更好的识别表现。这一现象表明,卷积所提供的归纳偏置并非获得强视觉表征的必要条件。

结果同时显示,模型容量必须与数据规模相匹配:数据不足时 ViT 往往落后于带有更强局部先验的 CNN;随着预训练规模扩大,差距缩小并可能反超。patch 划分与位置编码的选择会影响表现,但整体架构保持简洁统一。

ImageNet线性少样本评估与预训练规模的关系。ResNet在较小预训练数据上更优但更早趋于平稳;ViT在更大规模预训练下表现更好。ViT-b为隐藏维度减半的ViT-B。
2. ImageNet线性少样本评估与预训练规模的关系。ResNet在较小预训练数据上更优但更早趋于平稳;ViT在更大规模预训练下表现更好。ViT-b为隐藏维度减半的ViT-B。

04影响与意义

ViT 把“图像即 token 序列”的接口固定下来,使视觉骨干可以与语言、音频等其他模态共享同一套 Transformer 工具链与训练基础设施。这种统一的序列化表示,为后续多模态对齐与联合建模提供了直接前提。

CLIP、MAE、DiT 以及几乎所有现代视觉骨干网络都以 ViT 或其变体作为起点。它证明了规模化预训练可以弥补架构先验的不足,深刻改变了计算机视觉从骨干设计到预训练范式的研究与工程路径。

输出标记到输入空间的注意力代表性示例。详见附录D.7。
3. 输出标记到输入空间的注意力代表性示例。详见附录D.7。

05局限

在中小规模数据集上从头训练时,ViT 通常不如精心设计的卷积神经网络,因为缺少局部性、平移等变性与层次化特征等有用先验。要发挥其潜力,往往需要更强的正则、更长的训练日程,或依赖大规模预训练再迁移。

对细粒度局部结构的建模主要依靠位置编码以及自注意力的全局交互,计算效率与归纳能力仍有改进空间。后续研究常通过引入卷积混合、层级下采样结构或更精细的相对位置编码等方式来补齐这些短板。

左:ViT-L/32初始RGB线性嵌入滤波器。中:ViT-L/32位置嵌入相似度,各格为指定图块与其余图块位置嵌入的余弦相似度。右:各头与网络深度下的关注区域大小;每点为一层中16个头之一的跨图像平均注意力距离。详见附录D.7。
4. 左:ViT-L/32初始RGB线性嵌入滤波器。中:ViT-L/32位置嵌入相似度,各格为指定图块与其余图块位置嵌入的余弦相似度。右:各头与网络深度下的关注区域大小;每点为一层中16个头之一的跨图像平均注意力距离。详见附录D.7。

06要点

  1. 01归纳偏置可以用足够规模的数据重新买回来。
  2. 02统一的 token 序列接口是通向多模态建模的前提。
  3. 03patch 大小是一个常被低估却影响显著的超参数。

为何入典

视觉与语言开始共用同一套骨架,多模态才成为架构问题而不是拼接问题。

标签

transformervision

相关论文

和这篇论文对话

开启对话后,本页的标题、摘要、导读和图注会装进上下文。模型是你自己接入的。

登录后可以接入自己的模型,向这篇论文提问。