读论文——ViT(Transformer跨界CV)

第一遍

  • 标题

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

  • 作者

    Alexey Dosovitskiy 谷歌研究院 大脑团队

  • 摘要

    1. 目前位置,注意力机制在计算机视觉中使用得不够充分
    2. 在图片分类任务上,用于图片块序列的纯transformer框架可以表现更好
    3. 通过在大的数据集上进行预训练,可以迁移学习到多个中小型图像识别基准
  • 结论

    1. 不再是仅仅使用自注意力模块对视觉任务进行处理,而是在将图片变成patch序列后,直接使用transformer框架,在大的数据集上可以超过CNNs的表现。简单、可拓展、相对便宜。
    2. 展望:1. 将ViT用于目标检测和语义分割 2. 拓展自监督预训练方法 -
  • 介绍

    1. CV中之前的工作,局部使用注意力,在特征图中使用自注意力;全局使用注意力,local-attention(按照CNNs的想法,对图片局部使用attention),axis-attention(在宽和高两个维度上使用注意力)。

    2. 本文将16×16个像素作为一个patch,将一个patch看作是一个词,进行类似BERT的处理方式

    3. 由于ViT缺乏归纳偏置(先验知识),在较小数据集(ImageNet)上,ViT表现不如ResNet。1)translation equivariance(平移变化不变性,一层理解,由于卷积核在图片上滑动的特征提取器,那么无论特征出现在图像哪里,都可以提取出来;二层理解,由于特征图中的特征核图像中特征是相对应的,因此在上面继续进行卷积和池化操作,并不会破坏图像提取出来的信息,即卷积和池化操作是可以部分顺序的。) 2)locality。卷积核一次提取图像某个局部的信息,背后的含义是图像中相邻像素表达的是一个特征。

    4. ViT在大的数据集上(JFT 300M)表现超过了所有其他模型

第二遍

重要图表

  1. 图1

    读论文——ViT(Transformer跨界CV)

  2. 表1

    读论文——ViT(Transformer跨界CV)

  3. 表2

    读论文——ViT(Transformer跨界CV)

  4. 图2

    读论文——ViT(Transformer跨界CV)

  5. 图3

    读论文——ViT(Transformer跨界CV)

  6. 图4

    读论文——ViT(Transformer跨界CV)

  7. 图5

    读论文——ViT(Transformer跨界CV)

  8. 图6

    读论文——ViT(Transformer跨界CV)

  9. 图7

读论文——ViT(Transformer跨界CV)

第三遍

相关工作

方法

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 0 = x c l a s s z_0^0 = x_{class} z00​=xclass​,经过L个transformer后,输出为 z L 0 z_L^0 zL0​

整个流程公式表示为:
z 0 = [ x class  ; x p 1 E ; x p 2 E ; ⋯   ; x p N E ] + E pos  , E ∈ R ( P 2 ⋅ C ) × D , E pos  ∈ R ( N + 1 ) × D z ℓ ′ = MSA ⁡ ( LN ⁡ ( z ℓ − 1 ) ) + z ℓ − 1 , ℓ = 1 … L z ℓ = MLP ⁡ ( LN ⁡ ( z ′ ℓ ) ) + z ℓ ′ , ℓ = 1 … L y = LN ⁡ ( z L 0 ) \begin{array}{rll} \mathbf{z}_{0} & =\left[\mathbf{x}_{\text {class }} ; \mathbf{x}_{p}^{1} \mathbf{E} ; \mathbf{x}_{p}^{2} \mathbf{E} ; \cdots ; \mathbf{x}_{p}^{N} \mathbf{E}\right]+\mathbf{E}_{\text {pos }}, & \mathbf{E} \in \mathbb{R}^{\left(P^{2} \cdot C\right) \times D}, \mathbf{E}_{\text {pos }} \in \mathbb{R}^{(N+1) \times D} \\ \mathbf{z}_{\ell}^{\prime} & =\operatorname{MSA}\left(\operatorname{LN}\left(\mathbf{z}_{\ell-1}\right)\right)+\mathbf{z}_{\ell-1}, & \ell=1 \ldots L \\ \mathbf{z}_{\ell} & =\operatorname{MLP}\left(\operatorname{LN}\left(\mathbf{z}^{\prime} \ell\right)\right)+\mathbf{z}_{\ell}^{\prime}, & \ell=1 \ldots L \\ \mathbf{y} & =\operatorname{LN}\left(\mathbf{z}_{L}^{0}\right) & \end{array} z0​zℓ′​zℓ​y​=[xclass ​;xp1​E;xp2​E;⋯;xpN​E]+Epos ​,=MSA(LN(zℓ−1​))+zℓ−1​,=MLP(LN(z′ℓ))+zℓ′​,=LN(zL0​)​E∈R(P2⋅C)×D,Epos ​∈R(N+1)×Dℓ=1…Lℓ=1…L​

MSA表示多头自注意力层

  • 混合框架

    先通过ResNet等卷积神经网络得到14×14特征图,然后再利用transformer结构。这种结构在数据量较小时,相较于ResNet和纯transformer都要好,相当于结合了这两者的优点,一个具有归纳偏置,一种具有全局注意力。

3.2 微调和更大的分辨率

当预训练模型在一个具有更高分辨率的图像上微调,如果保持图像块大小不变,那么图像块序列长度必然会增加,虽然transformer可以允许序列变长,但是之前预训练的位置编码可能就失去了意义。因此,这里采用了二维插值,根据预先训练好的position embedding嵌入到原始图像中。

实验

4.1 模型训练

读论文——ViT(Transformer跨界CV)

训练了三种不同规模的ViT

4.2 模型比较

读论文——ViT(Transformer跨界CV)

模型全面刷榜,而且训练时间相对也减少了

4.3 预训练数据要求

读论文——ViT(Transformer跨界CV)

可以发现,随着数据的增加,卷积网络性能慢慢落后于ViT

4.5 ViT原理探究

读论文——ViT(Transformer跨界CV)

如图可以看出,在图片分类任务中,自注意力机制缺失让模型注意到图片中需要识别的物体。

读论文——ViT(Transformer跨界CV)

如左图可知,transformer结构也可以学习图片中,颜色或者纹理等信息。

中间图不同图像块的位置编码的余弦相似度,可以发现对应位置的行和列能够具有更高的关注度。

右图表示在特征图中,相互关联像素点之间的距离,可以发现在靠近图像的一些层,关注距离是有大有小的,随着网络层数加深,注意力机制开始关注距离较远的特征(由此可以假设,模型的深度建模能力增强了,能够表达更深的语义信息)。

4.6 自监督

BERT得益于MLM、NSP等无监督训练方法,具有很强的学习能力,因此作者希望找到一种针对图像的高效地无监督学习。

小结

  1. 本文是2020-2021期间的transformer跨界CV的重要论文,主要思想就是将图片变成图片块,然后变成类似token embedding形式,可以直接输入到类似BERT架构中,然后在大规模数据集上继续预训练可以得到很不错的效果。
  2. 表明着一方面transformer还没有达到性能的极限,另一方面也为CV和NLP大一统埋下了伏笔。
  3. 顺带一提,论文中还尝试多种不同的位置编码,但是对最终性能没有很大影响,因此论文中依然保留了一维的位置编码,侧面也表达了自注意力机制对位置的不敏感,可以对图片进行全局建模。
上一篇:001-centos6.5下安装jenkins


下一篇:CoAtNet:将卷积和注意力结合到所有数据大小上