点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

转载自丨极市平台   作者丨happy

导读

本文是FAIR的何恺明团队关于ViT在COCO检测任务上的迁移学习性能研究。它以Mask R-CNN作为基线框架,以ViT作为骨干网络,探索了不同初始化策略对于模型性能的影响。实验表明:masking机制的无监督学习机制(如MAE、BEiT)首次在COCO检测任务迁移学习中取得了令人信服的性能提升 。

Benchmarking Detection Transfer Learning with Vision Transformers

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

本文是FAIR的何恺明团队关于ViT在COCO检测任务上的迁移学习性能研究。它以Mask R-CNN作为基线框架,以ViT作为骨干网络,探索了不同初始化策略对于模型性能的影响;与此同时,为尽可能保证对比的公平性,还对不同超参数进行了大量的实验;此外,为将ViT作为多尺度模式,参考XCiT对ViT不同部分的特征进行尺度调整以达成多尺度特征输出;为使得ViT模型能处理大分辨率图像,还对ViT的架构进行了改进,引入了全局与局部自注意力机制,进一步提升了模型性能取得了更佳的均衡。该文的一系列实验表明:masking机制的无监督学习机制(如MAE、BEiT)首次在COCO检测任务迁移学习中取得了令人信服的性能提升

Abstract

为测试预训练模型能否带来性能增益(准确率提升或者训练速度提升),目标检测是一个常用的且非常重要的下游任务。面对新的ViT模型时,目标检测的复杂性使得该基线变得尤为重要(non-trivial )。然而架构不一致、缓慢训练、高内存占用以及未知训练机制等困难阻碍了标准ViT在目标检测任务上的迁移学习。

本文提出了训练技术以克服上述挑战,并采用标准ViT作为Mask R-CNN的骨干。这些工具构成了本文的主要目标:我们比较了五种ViT初始化,包含SOTA自监督学习方法、监督初始化、强随机初始化基线。

结果表明:近期提出的Masking无监督学习方法首次提供令人信服的迁移学习性能改善 。相比监督与其他自监督预训练方法,它可以提升 指标高达4% ;此外masking初始化具有更好的扩展性,能够随模型尺寸提升进一步提升其性能。

Method

因其在目标检测与迁移学习领域的无处不在性,我们采用Mask R-CNN作为基线方案。该选择也旨在对简洁性与复杂性进行均衡,同时提供具有竞争力(也许并非SOTA)的结果。相比原始版本,我们为Mask R-CNN提供了不同的改进模块与训练方案。

ViT Backbone

接下来,我们将解决如下两个ViT作为Mask R-CNN骨干的技术障碍

  • 如何与FPN适配;

  • 如何降低内存占用与推理耗时。

FPN Compatibility  Mask R-CNN可以与输出单尺度特征的骨干,也可与输出多尺度特征(多尺度特征将被送入FPN处理)的骨干协同工作。由于FPN能够提供更好的检测结果,故我们采用了FPN方案。

然而,采用FPN存在这样一个问题:ViT仅输出单尺度特征,而非CNN的多尺度特征 。为解决该问题,我们采用了XCiT中的技术对ViT中间特征进行上/下采样以提供四种不同分辨率的特征(可参见上面图示绿框部分)。

第一个模块采用两个stride=2的转置卷积进行4倍上采样;第二个模块采用一个stride=2的转置卷积进行2倍上采样;第三个模块不做任何处理;最后一个模块采用stride=2的MaxPool进行下采样。

假设块尺寸为16,这些模块将输出stride分别为4、8、16、32的特征并被送入到FPN中。

注:Swin与MViT通过修改VIT架构解决了ViT无法输出多尺度特征的问题。这种处理方式也是一个重要的研究方向,但它与ViT的简单设计相悖,会阻碍新的无监督学习(如MAE)探索。因此,本文仅聚焦于上述生成多尺度特征的改动方式。

Reducing Memory and Time Complexity  采用ViT作为Mask R-CNN的骨干会导致内存与耗时挑战。ViT中的每个自注意力操作会占用空间。

在预训练过程中,该复杂度是可控的()。而在目标检测中,标准图像尺寸为,这就需要近21倍多的像素和图像块,这种高分辨率用于检测小目标。由于自注意力的复杂度,哪怕基线ViT-B也需要占用20-30G GPU显存(batch=1,FP16)

为降低空间与时间复杂度,我们采用Windowed Self-attention,即局部自注意力,而非全局自注意力。我们将图像块拆分为非重叠窗口并在每个窗口独立计算自注意力。这种处理方式可以大幅降低空间复杂度与时间复杂度,我们默认设置。

Windowed Self-attention的一个缺陷在于:骨干不能跨窗口聚合信息。针对此,我们每模块添加一个全局自注意力模块

Upgraded Modules

相比原始Mask R-CNN,我们对其内置模块进行了如下改动:

  • FPN中的卷积后接BN;

  • RPN中采用两个卷积,而非一个卷积;

  • RoI分类与Box回归头采用四个卷积(带BN)并后接一个全连接,而非原始的两层MLP(无BN);

  • Mask头中的卷积后接BN

Training Formula

相比原始训练机制,我们采用了从头开始训练+更长训练周期的训练机制(如400epoch)。我们希望让超参尽可能的少,同时抵制采用额外的数据增广与正则技术。然而,我们发现:DropPath对于ViT骨干非常有效(性能提升达2),故我们采用了该技术。

总而言之,训练机制如下:

  • LSJ数据增广(分辨率,尺度范围[0.1,2.0]);

  • AdamW+Cosine学习率衰减+linear warmup

  • DropPath正则技术;

  • batch=64,混合精度训练。

当采用预训练初始时,微调100epoch;当从头开始训练时,训练400epoch。

Hyperparameter Tuning Protocol

为使上述训练机制适用于同模型,我对学习率lr、权值wd衰减以及drop path rate三个超参进行微调,同时保持其他不变。我们采用ViT-B+MoCoV3进行了大量实验以估计合理的超参范围,基于所得估计我们构建了如下调节机制:

  • 对每个初始化,我们固定dp=0.0,对lr与wd采用grid搜索,固定搜索中心为,以此为中心搜索;

  • 对于ViT-B,我们从中选择dp(预训练参数时,训练50epoch;从头开始时,则训练100epoch),dp=0.1为最优选择;

  • 对于ViT-L,我们采用了ViT-B的最后lr与wd,并发现dp=0.3是最佳选择。

注:在训练与推理过程中,图像将padding到尺寸。

Initialization Methods

在骨干初始化方面,我们比较了以下五种:

  • Random:即所有参数均随机初始化,无预训练;

  • Supervised:即ViT骨干在ImageNet上通过监督方式预训练,分别为300和200epoch;

  • MoCoV3:即在ImageNet上采用无监督方式预训练ViT-B与ViT-L,300epoch;

  • BEiT:即采用BEiT方式对ViT-B与ViT-L预训练,800epoch;

  • MAE:即采用MAE对ViT-B与ViT-L预训练,1600eoch;

Nuisance Factors in Pre-training

尽管我们尽可能进行公平比较,但仍存一些“令人讨厌”的不公因子:

  • 不同的预训练方法采用了不同的epoch;

  • BEiT采用可学习相对位置偏置,而非其他方法中的绝对位置嵌入;

  • BEiT在预训练过程中采用了layer scale,而其他方法没采用;

  • 我们尝试对与训练数据标准化,而BEiT额外采用了dVAE。

Experiments&Analysis

上表比较了不同初始化方案的性能,从中可以看到:

  • 无论何种初始化,采用ViT-B/L作为骨干的Mask R-CNN训练比较平滑,并无不稳定因素,也不需要额外的类似梯度裁剪的稳定技术

  • 相比监督训练,从头开始训练具有1.4指标提升(ViT-L)。也即是说:监督预训练并不一定比随机初始化更强;

  • MoCoV3具有与监督预训练相当的性能;

  • 对于ViT-B,BEiT与MAE均优于随机初始化与监督预训练;

  • 对于ViT-L,BEiT与MAE带来的性能提升进一步扩大,比监督预训练高达4.0.

上图给出了预训练是如何影响微调收敛的,可以看到:相比随机初始化,预训练初始化可以显著加速收敛过程,大约加速4倍

Discussion

对于迁移学习来说,COCO数据集极具挑战性。由于较大的训练集(约118K+0.9M标准目标),当随机初始化训练时可以取得非常好的结果。我们发现:

  • 现有的方法(如监督预训练、MoCoV3无监督预训练)的性能反而会弱于随机初始化基线方案

  • 已有的无监督迁移学习改进对比的均为监督预训练,并不包含随机初始化方案;

  • 此外,他们采用了较弱的模型,具有更低的结果(约40),这就导致:不确定如何将已有方法迁移到SOTA模型中。

我们发现:MAE与BEiT提供了首个令人信服的COCO数据集上的指标提升 。更重要的是:这些masking方案具有随模型大小提升进一步改善检测迁移学习能力的潜力 ,而监督预训练与MoCoV3等初始化方式并无该能力。

Ablations and Analysis

上表对比了单尺度与多尺度版本Mask R-CNN的性能,从中可以看到:多尺度FPN设计可以带来1.3-1.7指标提升 ,而耗时仅提升5-10%,多尺度内存占用提升小于1%。

上表对比了降低显存与时间复杂度的不同策略,可以看到:

  • 局部+全局的组合方式(即第二种)具有最佳的内存占用与耗时均衡;

  • 相比纯局部自注意力方式,全局自注意力可以带来2.6指标提升。

上表比较了不同位置信息的性能对比,从中可以看到:

  • 对于仅使用绝对位置嵌入的预训练模型,在微调阶段引入相对位置偏置可以带来0.2-0.3指标提升;

  • 预训练相对位置偏置可以带来0.1-0.3指标增益;

  • 相对位置偏置会引入额外的负载:训练与推理耗时分别增加25%和15%,内存占用提升15%。

上图对比了预训练周期对于性能的影响,可以看到:

  • 在100-800epoch预训练周期下,越多的预训练周期带来越高的迁移学习性能;

  • 在800-1600epoch下,仍可带来0.2指标的性能增益。

上图给出了TIDE工具生成的误差分析,可以看到:

  • 对于正确定位的目标,所有的初始化可以得到相似的分类性能;

  • 相比其他初始化,MAE与BEiT可以改善定位性能。

上表给出了不同骨干的复杂度对比(ViT-B与ResNet-101具有相同的性能:48.9),可以看到:

  • 在推理耗时方面,ResNet-101骨干更快;

  • 在训练方面,ViT-B仅需200epoch即可达到峰值性能,而ResNet-101需要400epoch。

ICCV和CVPR 2021论文和代码下载后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF
CVer-Transformer交流群成立
扫码添加CVer助手,可申请加入CVer-Transformer 微信交流群,方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲长按加小助手微信,进交流群
▲点击上方卡片,关注CVer公众号

整理不易,请点赞和在看

何恺明团队新作!Transformer遇见Mask R-CNN哪家强?相关推荐

  1. NeurIPS 2022 | 何恺明团队新作:MAE扩展到视频!学习时空表示,最优Mask比例高达90%!...

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 转载自:AIWalker 2021年末,何恺明团队提出MAE在CV届引起极大轰动,自上传到arxiv之后,各 ...

  2. 解决训练不稳定性,何恺明团队新作来了!自监督学习+Transformer=MoCoV3

    本文是FAIR的恺明团队针对自监督学习+Transformer的一篇实证研究.针对Transformer在自监督学习框架中存在的训练不稳定问题,提出了一种简单而有效的技巧:Random Patch P ...

  3. 何恺明团队新作:图像分割精细度空前,边缘自带抗锯齿,算力仅需Mask R-CNN的2.6%...

    鱼羊 乾明 发自 凹非寺  量子位 报道 | 公众号 QbitAI 又是何恺明超越何恺明. 其团队最新论文一出,图像分割又往前一大步: 消耗的资源变得更少,算力仅需Mask R-CNN的2.6%. 不 ...

  4. MoCoV3:何恺明团队新作!解决Transformer自监督训练不稳定问题!

    文 | happy 源 | 极市平台 论文链接: https://arxiv.org/abs/2104.02057 本文是FAIR的恺明团队针对自监督学习+Transformer的一篇实证研究.针对T ...

  5. 何恺明团队新作:只用普通ViT,不做分层设计也能搞定目标检测

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI 微软的Swin ...

  6. 何恺明团队新作ViTDet:用于目标检测的视觉Transformer主干网络

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 转载自:机器之心 | 编辑:张倩.小舟 做目标检测就一定需要 FPN 吗?昨天,来自 Facebook AI ...

  7. 何恺明团队新作FLIP:通过Masking扩展语言-图像预训练

    一句话总结 本文提出了Fast Language-Image Pre-training (FLIP),这是一种简单且更有效的训练CLIP的方法. 点击进入->Transformer微信技术交流群 ...

  8. 何恺明团队新作!深度学习网络架构新视角:通过相关图表达理解神经网络

    标题&作者团队 导语:恺明大神出品,必属精品.Facebook的研究员从一个新奇的角度对神经网络的表示与设计进行探索,提出了一种新颖的相关图表示方式.它有助于对现有网络架构进行更深层次的分析与 ...

  9. 【论文解读】深度学习网络架构新视角:通过相关图表达理解神经网络(何恺明团队新作)...

    文章来源于极市平台,作者Happy 标题&作者团队 导语:恺明大神出品,必属精品.Facebook的研究员从一个新奇的角度对神经网络的表示与设计进行探索,提出了一种新颖的相关图表示方式.它有助 ...

最新文章

  1. oracle表空间 unifor,Oracle 表空间的监控
  2. 删除数据库中所有存储过程和函数的sql语句
  3. DWZ-JUI 树形Checkbox组件 无法一次获取所有选中的值的解决方法
  4. Spring Boot教程(7) – 直观地理解Spring容器
  5. python 格式化字符串 模板字符串(五分钟读懂)
  6. 设置TeeChart的提示文本
  7. Atitit HTTP 认证机制基本验证 (Basic Authentication) 和摘要验证 (Digest Authentication)attilax总结Atitit HT
  8. Linux 三个强大的系统资源监控工具
  9. Java中直接输出一个类的对象
  10. 版本管理工具Git记录
  11. 合并两个有序数组——C语言
  12. Dreamweaver cs6 网页设计教程笔记
  13. 给出a-z,0-9,输出所有的3个字符的组合
  14. vue 如何做到图片预览
  15. 苹果电脑怎么自定义音频输出设备
  16. 爬取京东某商品评论并存入csv
  17. csv文件的格式---Comma Separate Values
  18. 基于python SMTP实现自动发送邮件教程解析
  19. 第五期送书来了,这次送的都是畅销书!
  20. 苹果Apple Pay优缺点全解析

热门文章

  1. 【免费分享】帝国CMS7.5仿《优优健康网》整站源码/带独立移动端手机版模板+数据采集
  2. BlinkCounter(眨眼计数器)
  3. SimpleDateFormat--时间处理
  4. java星座查询系统_星座运势查询示例代码
  5. oracle4052,ora-29740错误
  6. word去掉页眉横线方法
  7. 计算机科学与技术核心课程
  8. 微博/微信登录与分享、微信/支付宝支付
  9. 计算机机房布线的单价,机房综合布线价格贵吗
  10. java利用科大讯飞SDK实现语音转文字的功能