深入探究ConvNets vs. Transformers,哪种预训练模型的可迁移性更好?
一文献给还在ConvNets和Transformer之间犹豫的小伙伴们:也许是时候倒向Vision Transformer预训练模型了!
Highlights
- 我们通过大量实验发现即使Vision Transformer在ImageNet上的预训练表现略弱于ConvNets,Vision Transformer仍然可以为下游的各种任务提供更有迁移能力(more transferable)的预训练特征。
- 通过在10个数据集上同时进行单任务和多任务评测,我们发现Vision Transformer在ImageNet上的预训练模型经过微调在15个下游任务中的13个任务上取得了较为显著的优势。这些任务包括但不限于:细粒度分类、场景识别(分类、分割和景深估计)、开放领域图片分类(比如医疗数据和艺术风格识别)、人脸识别、年龄估计等等。
- 传统的观点一般认为Transformer优于ConvNets的原因是在于其更加放松(relaxed)的inductive bias。通过系统的实验,我们认为使得Transformer的迁移性能优于ConvNets的另外一大原因是其在提供相近ImageNet预训练性能的情况下,具有更少的参数量,这有利于降低预训练模型在下游任务上过拟合的风险。
研究背景介绍
最近半年以来(准确来说应该是ViT出现之后),Vision Transformer逐渐开始席卷计算机视觉的各个领域。其中,以Swin Transformer为代表的各类网络在目标检测和分割两大任务上相较于传统的ConvNets取得了较为显著的进步。这使得我们更加好奇,在其它一些更加通用、更加一般的问题上,Vision Transformer是否还会具有类似的优势。在此背景下,我们第一次尝试较为全面地比较ConvNets和Vision Transformers,从中我们观察到了一些比较有意义的现象,希望可以为以后更加系统性的研究提供一些有益的启发。
文章:https://arxiv.org/abs/2108.05305
如上图所以,该研究由香港大学和上海科技大学合作完成。
代码语言:javascript复制@InProceedings{cnn_vs_trans,
title={{ConvNets vs. Transformers: Whose Visual Representations are More Transferable?}},
author={Zhou, Hong-Yu and Lu, Chixiang and Yang, Sibei and Yu, Yizhou},
booktitle={ICCV workshop on Multi-Task Learning in Computer Vision (DeepMTL)},
year={2021}
}
方法
如上图所示,我们的思路其实非常容易理解。在ImageNet预训练阶段,我们分别选择若干在ImageNet上具有相近性能(通常以top-1 error rates来衡量)的ConvNets和Vision Transformers模型。在此基础上,我们在各种下游任务上进行微调以评估预训练模型的迁移性能。
如上图所示,对于卷积网络,我们选择了R-101x3和R-152x4(x3和x4分别表示网络的宽度是正常ResNet-101和ResNet-152的三倍和四倍),以往的研究表明增加ResNet的宽度可以带来更好的迁移能力。对于Vision Transformer,我们选择了经典的ViT-B/16和ViT-L/16,以及在目标检测和分割上表现优异的Swin Transformer-B(简称Swin-B)。所有的模型都在ImageNet-22k上进行预训练,并在ImageNet-1k上进行测试。
除了IN(acc.),我们还引入了另外一个指标performance rank(上图中的灰色数字)来更好地区分不同网络的性能表现。比如R-152x4在ImageNet-1k上的性能最高,所以它的rank是1。Swin-B和ViT-L/16的性能一样,所以它们并列第二,R-101x3和ViT-B/16以此类推。我们发现ConvNet组两个模型的平均performance rank是2.5,略高于Vision Transformer组的3.0。按照以往的观点,ConvNet组的模型在各种下游任务上的性能应该至少与Vision Transformer组的模型相当。但是事实却并非如此。
实验结果
下面就到了展示我们实验结果的时候啦。首先是(a)细粒度分类,
我们可以看到Vision Transformer组在细粒度分类上具有较大的优势。具体在Flower102包揽了前三名,在CUB200上包揽了前两名。同时在平均performance rank上领先ConvNet组大约两个身位。
接着是(b)场景识别问题,
又是肉眼可见的大幅度领先。在NYU数据集的两个子任务上同时包揽前三名。
下一个是(c)跨领域识别问题,
这里我们选择了两个对模型迁移性能比较有挑战性的问题,即艺术风格和新冠肺炎识别。我们发现Vision Transformer组在两个问题上均包揽了前三名,同时平均performance rank大幅度领先ConvNet组。我们认为这个结果可以在某种程度上有力地说明Vision Transformer组的预训练模型可以提供更有迁移能力的预训练特征。
下一个是多任务学习上的评测,
这里我们在NYU数据集上同时进行Segmentation和Depth estimation的多任务学习。显而易见地,Transformer组又又又大幅度领先ConvNet组,同时又又一次包揽了前三名。我们在多任务学习上的评估结果表明即使Vision Transformer的模型参数量大大低于ConvNet,其model capacity在一些较为简单的多任务上并不会受到影响。
最后,给出一个Transformer组失败的例子:无监督图像检索(PS:也许是一个挺好的写paper的出发点:))。
我们看到ConvNet组在无监督的图像检索上还是有较大的优势的。对此我们的解释是Vision Transformer在迁移到下游任务时可能更依赖于模型的全局微调操作, 因为在这组实验里我们直接使用了预训练模型的特征,而没有对预训练模型进行微调。感兴趣的小伙伴可以在此问题上继续深挖,相信会有更多的收获!
最后的最后,更多的实验结果可以点这里https://arxiv.org/abs/2108.05305直接看我们的paper。
ICCV和CVPR 2021论文和代码下载
后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集
后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集
后台回复:Transformer综述,即可下载最新的两篇Transformer综述PDF
重磅!Transformer交流群成立
扫码添加CVer助手,可申请加入CVer-Transformer微信交流群,方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向 地点 学校/公司 昵称(如Transformer 上海 上交 卡卡),根据格式备注,可更快被通过且邀请进群
▲长按加小助手微信,进交流群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看