【论文笔记】CvT: Introducing Convolutions to Vision Transformers

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第1张图片

论文标题:

CvT: Introducing Convolutions to Vision Transformers

CvT:将卷积引入 Vision Transformer 中

论文链接:https://arxiv.org/abs/2103.15808

论文代码:https://github.com/microsoft/CvT

发表时间:2021年3月


创新点:

1、将卷积应用到 Vision Transformer 中,提升了空间信息

2、基于此,提出了一个新的架构卷积视觉变换器 CVT


Abstract

本文提出了一种新的结构,称为卷积视觉变换器(CvT),它通过在 ViT 中引入卷积来提高视觉变换器(ViT)的性能和效率。这是通过两个主要修改来实现的:包含新卷积令牌嵌入的 Transformer 层次结构,以及利用卷积投影的卷积 Transformer 块。这些变化将卷积神经网络(CNN)的理想特性引入 ViT 体系结构(即平移、缩放和失真不变性),同时保持 Transformer 的优点(即动态注意、全局上下文和更好的泛化)。

我们通过进行大量实验来验证 CvT,结果表明,与 ImageNet-1k 上的其他 ViT 和 Resnet 相比,该方法实现了最先进的性能,参数更少,触发器更少。此外,在对更大的数据集(例如ImageNet-22k)进行预训练并对下游任务进行微调时,可以保持性能提升。我们的 CvT-W24 在 ImageNet-22k 上进行了预训练,在 ImageNet-1k val 集上获得了 87.7% 的顶级精度。

最后,我们的结果表明,位置编码是现有 ViT 中的一个关键组件,可以在我们的模型中安全地删除,从而简化高分辨率视觉任务的设计。


Method

CvT架构

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第2张图片

总共使用了三个阶段。每个阶段有两个部分

步骤:

1)输入图像(或 2D 重构的令牌图)经过卷积令牌嵌入层

2)向量扁平化后,进入 Transformer

详解:

  • 卷积令牌嵌入层,本质就是一个二维卷积,每次卷积都能够实现减少 Transformer 令牌序列长度,并且具备空间信息
  • 这里的二维卷积,使用的是深度可分离卷积,作用是降低参数

(a) ViT 中的线性投影  (b) 卷积投影  (c) 压缩卷积投影

除非另有说明,我们默认使用 (c) 压缩卷积投影

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第3张图片

 详解:

  • 采用压缩卷积投影,实验证明,并不会降低效果,反而减少了参数量

Experiments

实验目标:

 (a) 在 ImageNet-22k 上进行预训练时,与基于 CNN 的模型 BiT 和基于 Transformer 的模型 ViT 进行比较

 (b) 与并行工作的比较:在 ImageNet-1k 上预训练时的 DeiT 、T2T 、PVT 、TNT 

实验结果:CvT 有明显优势

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第4张图片

实验目标:不同架构 CvT 的参数

实验结果:

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第5张图片

实验目标:在 ImageNet、ImageNet Real 和 ImageNet V2 设计架构的准确性

实验结果:CvT 效果最优

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第6张图片

实验目标:下游任务的 Top-1 准确度。所有模型都在 ImageNet-22k 数据上进行了预训练

实验结果: CvT-W24 效果最优

【论文笔记】CvT: Introducing Convolutions to Vision Transformers_第7张图片

写在最后

CNN + Transformer 的架构,是否会引领新的时代呢?

你可能感兴趣的:(论文笔记,Vision,Transformer,transformer,计算机视觉,人工智能,深度学习)