第一遍
-
标题
An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
-
作者
Alexey Dosovitskiy 谷歌研究院 大脑团队
-
摘要
- 目前位置,注意力机制在计算机视觉中使用得不够充分
- 在图片分类任务上,用于图片块序列的纯transformer框架可以表现更好
- 通过在大的数据集上进行预训练,可以迁移学习到多个中小型图像识别基准
-
结论
- 不再是仅仅使用自注意力模块对视觉任务进行处理,而是在将图片变成patch序列后,直接使用transformer框架,在大的数据集上可以超过CNNs的表现。简单、可拓展、相对便宜。
- 展望:1. 将ViT用于目标检测和语义分割 2. 拓展自监督预训练方法 -
-
介绍
-
CV中之前的工作,局部使用注意力,在特征图中使用自注意力;全局使用注意力,local-attention(按照CNNs的想法,对图片局部使用attention),axis-attention(在宽和高两个维度上使用注意力)。
-
本文将16×16个像素作为一个patch,将一个patch看作是一个词,进行类似BERT的处理方式
-
由于ViT缺乏归纳偏置(先验知识),在较小数据集(ImageNet)上,ViT表现不如ResNet。1)translation equivariance(平移变化不变性,一层理解,由于卷积核在图片上滑动的特征提取器,那么无论特征出现在图像哪里,都可以提取出来;二层理解,由于特征图中的特征核图像中特征是相对应的,因此在上面继续进行卷积和池化操作,并不会破坏图像提取出来的信息,即卷积和池化操作是可以部分顺序的。) 2)locality。卷积核一次提取图像某个局部的信息,背后的含义是图像中相邻像素表达的是一个特征。
-
ViT在大的数据集上(JFT 300M)表现超过了所有其他模型
-
第二遍
重要图表
-
图1
-
表1
-
表2
-
图2
-
图3
-
图4
-
图5
-
图6
-
图7
第三遍
相关工作
方法
3.1 ViT
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JlYgfilV-1638429128961)(C:\Users\nabai\Documents\markdown图片\image-20211201215154137.png)]
将图片变成patch embedding,图片 x ∈ R H × W × C x \in \mathbb R^{H \times W \times C} x∈RH×W×C转换为图像块 x p ∈ R N × ( p 2 ⋅ C ) x_p \in \mathbb R^{N \times (p^2 \cdot C)} xp∈RN×(p2⋅C)
一般对于图像分类中224 × 224 × 3的图片,变成图像块就是196 × 768
为了保持和BERT更大的相似性,patch embedding中也加入了[class]token, z 0