论文笔记 - An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

1. Information

Title: An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
Link: ViT Paper
Source: International Conference on Learning Representations (ICLR)
Date: 2021

2. Summary

本文介绍了 Vision Transformer(ViT),这是一种将 Transformer 架构应用于图像识别任务的模型。主要贡献包括:

  • 证明 Transformer 架构可以直接用于图像分类,无需依赖卷积神经网络(CNNs)。
  • 展示当在大型数据集上预训练然后转移到小型基准测试时,ViT 能够达到与最先进的CNN相媲美甚至更优的结果。
  • 强调 ViT 在训练过程中需要的计算资源显著少于 CNNs,使其成为图像识别任务的高效替代方案。

3. Background

Transformer 模型在 NLP 任务中已取得了显著的成功,超越了传统的 LSTM 和 CNN 模型。然而,它在计算机视觉领域的应用却相对较少。在图像任务中,卷积神经网络(CNNs)由于其捕捉图像空间层次结构的能力,一直占据主导地位。ViT 挑战了这一传统,通过用 Transformer 架构替代卷积操作,Transformer 更灵活,能够建模长程依赖关系。

4. Research Objective

本研究的主要目标是证明变换器在图像识别任务中的可行性。具体目标包括:

  • 提出基于变换器架构的新型图像识别模型——视觉变换器(ViT)。
  • 探讨数据集大小在训练 ViT 中的作用,并表明变换器需要大规模的数据集来有效学习。
  • 研究预训练的 ViT 模型及其迁移学习的优点。

5. Method

5.1 图像分块(Patch Embedding)

  • 将输入图像划分为 16 x 16 像素的固定大小块,这些块被视为 Transformer 中的 “tokens”,类似于自然语言处理中的单词。
  • 每个图像块通过一个线性层映射到一个 D 维的空间,这个线性层的参数是可学习的。

5.2 位置编码

  • 在 ViT 中,位置编码使用一维的可学习向量,这些向量的长度与图像块嵌入向量的长度相同。
  • 每个位置(即每个图像块)都有一个对应的位置编码向量,这些向量被随机初始化并在训练过程中与图像块的嵌入一起学习。

5.3 Transformer Encoder

  • 输入序列(图像块嵌入加上位置编码)被送入的 Transformer 编码器。
  • 编码器由多个层组成,每层包括多头自注意力(Multi-Head Self-Attention,MSA)模块和多层感知机(Multilayer Perceptron,MLP)模块。
  • 在每个 MSA 和 MLP 模块前应用层归一化(Layer Normalization),并在每个模块后应用残差连接。

5.4 分类标记(Class Token)

  • 类似于 BERT 中的 [CLS] 标记,ViT 中引入了一个额外的可学习 “[class]” 标记,它被添加到序列的开始位置。
  • 在 Transformer 编码器的最后,“[class]” 标记的状态被用作整个图像的表示,用于图像分类任务。

5.5 微调

  • 在微调阶段,ViT 移除预训练时的分类头(即用于分类的全连接层),并用一个零初始化的新的全连接层替代,新的全连接层的输出维度是下游任务的类别数 \(K\)

6. Conclusion

Transformer 架构可以直接应用于图像识别任务,并且在大规模数据集上预训练后,ViT 能够在多个图像识别基准上达到或超过当时的最先进性能。此外,ViT 在训练过程中需要的计算资源显著少于传统的 CNNs,显示出其在效率上的优势。


论文笔记 - An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
http://hellochuanyang.github.io/2024/12/04/论文笔记-An-Image-is-Worth-16x16-Words-Transformers-for-Image-Recognition-at-Scale/
作者
阿阳
发布于
2024年12月4日
许可协议