本文提出了一种简单但功能强大的用于密集预测任务的VIT适配器,借鉴NLP领域的Adapter思想,使用Adapter减小Plain VIT与视觉特定任务Transformer在密集预测任务上的性能差异。 >>加入极市CV技术交流群,走在计算机视觉的最前沿
论文链接:https://arxiv.org/pdf/2205.08534v4.pdf
源码链接:https://github.com/czczup/vit-adapter
简介
本文研究了一种简单但功能强大的用于密集预测任务的VIT适配器。与最近将视觉特定的归纳偏差纳入其架构的先进变体不同,由于先验较弱,普通ViT(Vanilla VIT)在密集预测上的性能较差。
然而普通VIT有一些不可忽视的优势。一个典型的例子是多模态预训练。自然语言处理里Transformer对数据没有假设条件。使用不同的Tokenizers,普通VIT(Plain VIT)能利用大量的多模态数据(包括图像视频本文)做预训练,并鼓励模型学习富含语义的信息。
Plain VIT有一个与视觉特定任务Transformer(Vision-specific Transformer)相比明显的缺陷:缺乏图像相关的先验知识可能导致模型收敛速度慢且性能较差。Plain VIT在密集预测任务上很难与视觉特定任务Transformer相比有竞争力。本文借鉴NLP领域的Adapter思想,使用Adapter减小Plain VIT与视觉特定任务Transformer在密集预测任务上的性能差异。
本文方法
整体框架
本文方法包括两部分,第一部分Plain VIT,由一个块嵌入层和
个Transformer编码器层组成。第二个部分是VIT Adapter,包含 1)空间先验(Spatial Prior)模块提取从输入图像的空间特征,2)空间特征注入器(Spatial Feature Injector),将空间先验注入VIT模型中,3)多尺度特征提取器。
对于VIT-Adapter,首先将输入图像传入空间先验模块。收集三种目标分辨率(1/8,1/16,1/32)的
维度空间特征。将这些特征图展开合并作为特征交互的输入。特殊地,当给定
次交互时,均匀的将Transformer编码器划分为
块,每一个包含
个编码器层。对于第
块,首先通过空间特征注入器注入空间先验
注入模块中,然后通过多尺度特征提取器从块的输出中提取分层特征。在N次交互后,获得了高质量的多尺度特征。划分并改变尺寸得到三个目标分辨率1/8,1/16,1/32。最后通过使用2×2转置卷积对1/8比例的特征图进行上采样来构建1/4比例的特征图。通过这种方式,获得了与ResNet有类似分辨率的特征金字塔。
空间先验模块
根据Pvtv2、 Cvt、How do vision transformers work? 等工作的研究,卷积能帮助Transformer更好的获取局部空间信息。空间先验模块被设计与块嵌入层并行地对图像局部空间上下文进行建模,且不改变VIT原始架构。
这里使用从ResNet借来的标准convolutional stem,包括三个卷积和一个最大池化层。之后使用一个
步长为2地卷积层将通道数量增加一倍,并减少特征图尺寸。最后若干
卷积最后用于投影特征图成
维度。
特征交互
这里使用两种特征交互模块建立SPM与VIT特征图间桥梁。这两种模块主要基于交叉注意力。
是可学习的向量用于平衡注意力层的输出和
。初始化为0。初始化策略确保输入分布
不会由于空间先验注入剧烈调整。
在注入空间先验后,
通过第
块Transformer编码器得到
,之后使用交叉注意力层和FFN层抽取多尺度特征:
实验
目标检测/ 实例分割任务
这里使用DeiT发布的权重作为 ViT-T/S/B的初始权重。如图1所示,当使用常规训练设置进行公平比较下,ViT和ViTDet的检测性能不如最近的视觉特定模型。本文方法ViT-Adapter-S比这两种方法有明显的优势,甚至比PVTv2-B2高0.4
。
表4给出了由多模态预训练取代ImageNet-22K预训练可以在
和
获得0.7性能提升。
语义分割任务
表3给出了在ADE20K数据集上的实验结果。这里使用Semantic FPN和UperNet作为基础架构。在相当的模型尺寸条件下,本文方法超过了ViT和很多代表性的特定视觉任务Transformer。ViT-Adapter-S与UperNet取得了47.1多尺度mIOU,超过了很多强大的对手,如Swin-T。ViT-Adapter-B获得了49.7%有竞争力的表现,超过Vit-B2.6,与Swin-B和Twins-SVT-L相当。

公众号后台回复“极市直播”获取100+期极市技术直播回放+PPT
