近来,Transformer在CV领域各种“搅局”,不断刷新其指标。但ViT存在先天的不足:优化难、依赖大尺度数据、依赖数据增强、超参敏感等等。关于这些因素背后根本原因一直尚未有学者进行探索。今天FAIR的Tete Xiao、Ross Girshick、Piotr Dollar等人对此进行了深入挖掘,找到了其背后的“根因”,也提出了一种Stem设计选择。
标题&作者团队
本文是FAIR的Ross Girshick团队关于ViT优化难问题的深度思考。从ViT对优化、超参、训练周期敏感性出发,揭示了其背后的根本原因
patchify stem
,并在此基础上提供了一种选择:轻量型堆叠卷积stem。虽然本文没有提出什么特别新的架构,但这篇文章的分析、实验、归因等做的非常到位,值得各位CVer一读。
Abstract
近来ViT在CV领域一篇火热,各个子领域不时会有新成果面世。然而,ViT存在严重的优化难问题。具体来说,ViT对优化器的选择、优化器超参、训练周期等极为敏感。相反,主流CNN非常易于优化。为什么会发生这种现象呢?
在本文中,我们认为:ViT模型的优化难主要在于patchify stem模块,它采用stride=p的
卷积实现(默认p=16)。这种大核 大步长卷积背离了主流CNN的卷积设置(小核)。为验证是否该非典型设计导致了该问题,我们通过替换stem分析了ViT的优化行为。我们发现:采用简单的堆叠卷积替换ViT的大尺度卷积可以引起完全不同的训练行为。也就是说,采用Convolutional stem可以极大提升ViT的优化稳定性,同时提升其峰值性能(提升~1-2%)。而且,这种改善跨数据集、跨模型大小。上述发现促使我们采用标准的、轻量型stem构建ViT模型的stem进而得到一个更鲁棒的ViT架构。
Vision Transformer Architectures
上图为我们在ViT基础上进行了架构微调,主要包含两点:
- 采用堆叠卷积替换原始的大核卷积;
- 为补偿堆叠卷积带来的计算量提升,我们移除了一个Transformer模块。
需要说明的是:混合CNN/ViT架构设计并非本文的目的,更高性能的ViT架构设计与探索也并非本文目的。本文旨在挖掘ViT优化难背后的原因并提出一种有效的解决方案用于构建鲁棒高性能ViT。
Vision Transformer ViT首先将图像块块化为非重叠块,然后将其投影为
维特征现象。一般来说,块尺寸为
,输入图像大小为
。所得块嵌入(加上位置嵌入、分类词嵌入)经由标准Transformer模块处理后送入分类头。采用标准网络命名法,我们将ViT中Transformer模块之前的视作stem
,即原始ViT的stem为大核卷积,我们暂且将其称之为patchify stem
。我们将CNN中的堆叠卷积形式称之为convolutional stem
。
models 之前的工作设计了不同大小的ViT模型,比如ViT-Tiny,ViT-Small,ViT-Base。为更方面与CNN进行对比,我们将其标准化为1GF、2GF、4GF、8GF形式,见下表。注:下角标p表示采用patchify stem
。
models 与
相对的,我们将采用convolutional stem
的ViT称之为
。配置同样见上表。
Experiments
已有研究表明:ViT在优化方面极具挑战,对训练数据大小、数据增强、优化器选择等均非常敏感。接下来,我们将从这样几个方面进行对比分析。在正式呈现结果之前,我们先对待评价的不稳定因子进行简单说明。
Training Length Stability
上表对比了不同大小、不同配置模型在不同训练周期下的性能对比,可以看到:
表现出了比
更快的收敛速度,且跨模型大小、跨训练周期;
- 训练周期为50epoch时,stem的调整改善最明显。比如
的误差为10%,而
则下降到了6%。
Optimizer Stability
上图对比了优化器的影响,其中上三角表示SGD优化器,下三角表示AdamW优化器。从中可以看到:
- 基线模型RegNetY对于优化器的选择非常不敏感,几乎没有明显性能差异;
- 相反的,
则存在严重的性能差异,最高甚至达到了10%;
- 当采用
convolutional stem
时,ViT采用SGD与AdamW优化的性能差异得到了显著缩小,小于0.2%; - 也就是说,RegNetY与
可以通过SGD或者AdamW进行轻易优化,而
却不行。
Learning Rate and Weight Decay Stability
上面两个图对比了优化器超参的影响性,可以看到:
对于学习率与权重衰减的稳定性敏感优于
。
Peak Performance
最后,我们再对比一下模型的峰值性能,见上图与表。从中可以看到:Convolutional Stem不仅可以改善优化稳定性,同时可以提升模型的峰值性能。
全文到此结束,更多消融实验与分析建议查看原文。