【文献学习】An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

简介: 本文介绍了如何使用纯Transformer模型进行图像识别,并讨论了模型的结构、训练策略及其在多个图像识别基准上的性能。

1 引言

所有版本的论文实现https://paperswithcode.com/paper/an-image-is-worth-16x16-words-transformers-1

提出用纯transformer去做图像识别,图像分类,在ImageNet, CIFAR-100, VTAB数据集上表现良好,最佳模型在ImageNet上达到88:55%,在ImageNet ReaL上达到90:72%,在CIFAR-100上达到94:55%,在VTAB套件19个任务上达到77:63%。

2 介绍

2.1 简介

2017年提出基于Self-attention的Transformer,由于Transformers的计算效率和可扩展性,它已经能够训练具有超过100B参数的空前规模的模型。

在计算机视觉中,CNN自从1989年以来一直占据主导地位,在2018年《Non-local neural networks》将CNN与Self-attention结合,2019年《Stand-alone self-attention in vision models.》直接用self-attention替代了卷积。但是在大规模的图片识别中,ResNet仍然是最好的。

作者思路是将图像分割成块,并提供这些块的线性嵌入序列作为Transformer的输入。在NLP应用程序中,图像块的处理方式与标记(单词)相同。以有监督的方式训练图像分类模型。

Transformer在中等规模的数据集(如ImageNet)上进行训练时,如果没有很强的正则化,这些模型的精确度会比同等规模的resnet低几个百分点。因为此时的Transformer缺乏一些归纳偏置,如翻译等效性和局部性,因此在数据量不足的情况下不能很好地概括。

然而,如果在更大的数据集(14M-300M图像)上训练模型,情况就会改变。我们发现,大规模的训练胜过归纳偏置。作者的模型(ViT)在足够规模的预训练和转移到数据点较少的任务中时,可以获得很好的效果。当在公共ImageNet-21k数据集或内部JFT-300M数据集上进行预训练时,ViT在多个图像识别基准上接近或超过了最新水平。特别是,最佳模型在ImageNet上达到88:55%,在ImageNet ReaL上达到90:72%,在CIFAR-100上达到94:55%,在VTAB套件19个任务上达到77:63%。

2.2 综述

  • 2017年《Attention is all you need》提出Transformer应用到NLP
  • 2019年《BERT: Pre-training of deep bidirectional transformers for language understanding》Bert,用于训练大量语料库,然后对特定的任务进行微调
  • 2018年《Improving language under standing with unsupervised learning. 》使用去噪自监督预训练任务,而GPT工作线使用语言建模作为其预训练任务
  • 2018年《Acceleration of stochastic approximation by averaging》只在每个查询像素的局部邻域应用self-attention,而不是全局应用。
  • 2019年《Local relation networks for image recognition》局部多头点积自self-attention块完全可以代替卷积
  • 2019年《Generating long sequences with sparse transformers》 Sparse Transformers 为了适用于图像,采用可伸缩的全局self-attention近似。
  • 2019年《Scaling autoregressive video models》衡量注意力的另一种方法是将注意力应用到大小不同的块中
  • 2020年《On the relationship between self attention and convolutional layers.》与VIta论文的工作相似,该模型提取大小为(2× 2) 从输入图像开始,并在顶部应用完全的self-attention。这个模型与ViT非常相似,但是VIt的工作进一步证明了大规模的预训练使vanilla transformers能够与最先进的CNNs竞争(甚至优于CNNs)。此外,该论文使用了2× 2像素,这使得模型只适用于小分辨率图像。而VIt可以处理中分辨率图像。
  • 2019年《Attention augmented convolutional networks》结合了CNN与self-attention增强特征映射做图像分类
  • 2018年《 Relation networks for object detection.》结合CNN与self-attention做目标检测
  • 2018年《 Non-local neural networks》结合CNN与self-attention视频处理
  • 2020年《Visual transformers: Token-based image representation and processing for computer vision》结合CNN与self-attention做图像分类
  • 2020年《Object-centric learning with slot attention》结合CNN与self-attention做非监督目标发现
  • 2020年《UNITER: UNiversal Image-TExt Representation Learning》结合CNN与self-attention做统一文本视觉任务
  • 2020年《Generative pretraining from pixels.》与VIt论文相似的论文,图像GPT(IGPT)图像分类,在降低图像分辨率和颜色空间后,对图像像素应用Transformer。该模型以无监督的方式作为生成模型进行训练,然后可以对结果表示进行微调或线性探测以提高分类性能,在ImageNet上达到72%的最大准确率。

3 系统模型

3.1 模型简介

1.png

图1 模型概述

将图像分割成固定大小的块,线性嵌入每个块,添加位置嵌入,并将生成的向量序列提供给标准的Transformer编码器。为了执行分类,使用标准方法向序列中添加一个额外的可学习的“分类令牌”。 Transformer 将文本中一系列单词作为输入,然后将其用于分类、翻译或其他 NLP 任务。 ViT 会将图像分为方块网格,通过连接一个方块中所有像素通道,然后将其线性投影到所需的输入维度,将每个方块展平为单个矢量。Transformer 与输入元素的结构无关,因此我们在每个方块中添加了可学习的一维位置 Embedding,使模型能够了解图像结构。按理说,ViT 并不知道图像中各方块的相对位置,甚至不知道图像具有 2D 结构,它必须从训练数据中学习这类相关信息,并在位置嵌入中编码结构信息。 在预训练和微调期间,一个分类头连接到$z_L^0$。分类头在预训练时由一个隐层MLP实现,在微调时由一个线性层实现。

3.2 对高分辨率的图像进行微调模型

通常,在大型数据集上预先训练ViT,并对(较小的)下游任务进行微调。为此,我们移除预先训练好的预测头,并附加一个初始化为零D× K的预测头前馈层,其中K是下游类的数量。与训练前相比,在更高分辨率下进行微调通常是有益的。在输入高分辨率图像时,我们保持块大小不变,从而获得更大的有效序列长度。VIT可以处理任意的序列长度(直到内存限制),但是,预先训练的位置嵌入可能不再有意义。因此,作者根据预训练位置嵌入在原始图像中的位置对其进行二维插值。注意,该分辨率调整和块提取是关于图像的2D结构的归纳偏置被手动注入到VIT中的唯一点。

4 实验分析

评估了ResNet, Vision Transformer (ViT)和混合的表示学习能力。为了理解每个模型的数据需求,对不同规模的数据集进行预处理,并评估许多基准任务。考虑到预训练模型的计算成本,ViT的表现非常好,以较低的预训练成本在大多数识别基准上达到了最新水平。最后,用自我监督的方法做了一个小实验,证明了自我监督的ViT具有未来的发展前景。

5 反思和疑问

  • 在此之前其实已经有两个相似的工作,一篇是《On the relationship between self attention and convolutional layers.》仅适用于小分辨率图像。第二篇,《Generative pretraining from pixels.》准确率相比VIT较低。
  • VIT可以处理任意长度序列,并且对高低分辨率图像都可以处理。
  • 论文中描述的模型结构和代码中的结构,似乎不一样,对应不上。还需要对代码进一步调试详细解读。
目录
相关文章
|
4月前
|
算法 BI 计算机视觉
[Initial Image Segmentation Generator]论文实现:Efficient Graph-Based Image Segmentation
[Initial Image Segmentation Generator]论文实现:Efficient Graph-Based Image Segmentation
49 1
|
机器学习/深度学习 编解码 人工智能
Text to image综述阅读(2)A Survey and Taxonomy of Adversarial Neural Networks for Text-to-Image Synthesis
这是一篇用GAN做文本生成图像(Text to Image)的综述阅读报告。 综述名为:《A Survey and Taxonomy of Adversarial Neural Networks for Text-to-Image Synthesis》,发表于2019年,其将文本生成图像分类为Semantic Enhancement GANs, Resolution Enhancement GANs, Diversity Enhancement GANs, Motion Enhancement GANs四类,并且介绍了代表性model。
Text to image综述阅读(2)A Survey and Taxonomy of Adversarial Neural Networks for Text-to-Image Synthesis
|
机器学习/深度学习 编解码 自然语言处理
DeIT:Training data-efficient image transformers & distillation through attention论文解读
最近,基于注意力的神经网络被证明可以解决图像理解任务,如图像分类。这些高性能的vision transformer使用大量的计算资源来预训练了数亿张图像,从而限制了它们的应用。
492 0
|
编解码 资源调度 自然语言处理
【计算机视觉】Open-Vocabulary Semantic Segmentation with Mask-adapted CLIP(OVSeg)
基于掩码的开放词汇语义分割。 从效果上来看,OVSeg 可以与 Segment Anything 结合,完成细粒度的开放语言分割。
|
机器学习/深度学习 传感器 自然语言处理
论文笔记:SpectralFormer Rethinking Hyperspectral Image Classification With Transformers_外文翻译
 高光谱(HS)图像具有近似连续的光谱信息,能够通过捕获细微的光谱差异来精确识别物质。卷积神经网络(CNNs)由于具有良好的局部上下文建模能力,在HS图像分类中是一种强有力的特征提取器。然而,由于其固有的网络骨干网的限制,CNN不能很好地挖掘和表示谱特征的序列属性。
155 0
|
机器学习/深度学习 自然语言处理 计算机视觉
论文总结与分析:“An Image is Worth 16x16 Words”
论文总结与分析:“An Image is Worth 16x16 Words”
156 0
论文总结与分析:“An Image is Worth 16x16 Words”
|
机器学习/深度学习 自然语言处理 计算机视觉
Text to image论文精读 MirrorGAN: Learning Text-to-image Generation by Redescription(通过重新描述学习从文本到图像的生成)
MirrorGAN通过学习文本-图像-文本,试图从生成的图像中重新生成文本描述,从而加强保证文本描述和视觉内容的一致性。文章被2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)会议录用。 论文地址:https://arxiv.org/abs/1903.05854 代码地址:https://github.com/qiaott/MirrorGAN
Text to image论文精读 MirrorGAN: Learning Text-to-image Generation by Redescription(通过重新描述学习从文本到图像的生成)
|
机器学习/深度学习 编解码 人工智能
Text to image论文精读CogView: Mastering Text-to-Image Generation via Transformers(通过Transformer控制文本生成图像)
CogView是清华大学和阿里巴巴达摩院共同研究开发的一款用Transformer来控制文本生成图像的模型。该论文已被NIPS(Conference and Workshop on Neural Information Processing Systems,计算机人工智能领域A类会议)录用,文章发表于2021年10月。 论文地址:https://arxiv.org/pdf/2105.13290v3.pdf 代码地址:https://github.com/THUDM/CogView 本博客是精读这篇论文的报告,包含一些个人理解、知识拓展和总结。
Text to image论文精读CogView: Mastering Text-to-Image Generation via Transformers(通过Transformer控制文本生成图像)
|
机器学习/深度学习 人工智能 自然语言处理
Text to image论文精读DF-GAN:A Simple and Effective Baseline for Text-to-Image Synthesis一种简单有效的文本生成图像基准模型
DF-GAN是南京邮电大学、苏黎世联邦理工学院、武汉大学等学者共同研究开发的一款简单且有效的文本生成图像模型。该论文已被CVPR 2022 Oral录用,文章最初发表于2020年8月,最后v3版本修订于22年3月 。 论文地址:https://arxiv.org/abs/2008.05865 代码地址:https://github.com/tobran/DF-GAN 本博客是精读这篇论文的报告,包含一些个人理解、知识拓展和总结。
Text to image论文精读DF-GAN:A Simple and Effective Baseline for Text-to-Image Synthesis一种简单有效的文本生成图像基准模型
|
机器学习/深度学习 编解码 计算机视觉
Text to image论文精读 StackGAN:Text to Photo-realistic Image Synthesis with Stacked GAN具有堆叠生成对抗网络文本到图像合成
本篇文章提出了叠加生成对抗网络(StackGAN)与条件增强,用于从文本合成现实图像,被2017年ICCV(International Conference on Computer Vision)会议录取。 论文地址: https://arxiv.org/pdf/1612.03242.pdf 代码地址: https://github.com/hanzhanggit/StackGAN 本篇是精读这篇论文的报告,包含一些个人理解、知识拓展和总结。
Text to image论文精读 StackGAN:Text to Photo-realistic Image Synthesis with Stacked GAN具有堆叠生成对抗网络文本到图像合成