关注公众号,发现CV技术之美
▊ 写在前面
目前,将基于视觉任务的Transformer结构正在快速发展。虽然一些研究人员已经证明了基于Transformer的模型具有良好的数据拟合能力,但仍有越来越多的证据表明这些模型存在过拟合,特别是在训练数据有限的情况下。
本文通过逐步改变模型结构,将基于Transformer的模型逐步过渡到基于卷积的模型。在过渡过程中获得的结果,为提高视觉识别能力提供了有用的信息。
基于这些观察结果,作者提出了一种名为Visformer(Vision-friendly Transformer)的新架构 。在相同的计算复杂度下,Visformer在ImageNet分类精度方面,优于基于Transformer和基于卷积的模型,当模型复杂度较低或训练集较小时,优势变得更加显著。
▊ 1. 论文和代码地址
Visformer: The Vision-friendly Transformer
论文:https://arxiv.org/abs/2104.12533v4
代码:https://github.com/danczs/Visformer
▊ 2. Motivation
在过去的十年里,卷积在视觉识别的深度学习模型中起着核心作用。当源自自然语言处理的Transformer被应用到视觉场景中时,这种情况就开始发生改变。ViT模型表明,一张图像可以被分割成多个patch网格,Transformer直接应用在网格上,每个patch都可以看做是一个视觉单词。
ViT需要大量的训练数据(ImageNet-21K或JFT-300M数据集),因为Transformer建模了长距离的注意和交互,因此容易发生过拟合。后面也有一些工作基于ViT继续做改进,但是效果依旧不佳,特别是在训练数据有限的情况下。
另一方面,在大量数据训练下,视觉Transformer可以获得比基于卷积的模型更好的性能。也就是说,视觉Transformer具有更高的性能“上限”,而基于卷积的模型性能“下界”更好。上界和下界都是神经网络的重要特性。上界是实现更高性能的潜力,下界使网络在有限数据训练或扩展到不同复杂性时表现更好。
基于对Transformer-based和基于卷积的网络的下界和上界的观察,本文的主要目的是探究差异背后的原因,从而设计出具有较高下界和上界的网络。基于Transformer的网络和基于卷积的网络之间的差距可以在ImageNet上通过两种不同的训练设置来揭示。
第一个是基本设置(base setting) 。它是基于卷积的模型的标准设置,即训练周期更短,数据增强只包含基本的操作,如random-size cropping、 flipping。将此设置下的性能称为基本性能(base performance) 。
另一个设置是精英设置(elite setting) ,它对基于Transformer的模型进行了专门的调整,即训练周期更长,数据增强更强( RandAugment、CutMix等)。将此设置下的性能称为精英性能(elite performance) 。
在本文中,作者以DeiT-S和ResNet-50作为基于Transformer和基于卷积的模型的代表。在不同数量训练数据和训练设置下的两个模型结果如上表所示。可以看出,Deit-S和ResNet-50采用了相近的FLOPs和参数。
然而,在这两种设置下,它们在完整数据上的表现非常不同。Deit-S具有更高的精英性能,但从精英到