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

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

本文者:飞奔的啦啦啦   |  来源:知乎

https://zhuanlan.zhihu.com/p/313684358

UP-DETR: Unsupervised Pre-training for Object Detection with Transformers

论文:https://arxiv.org/abs/2011.09094

中cvpr oral啦!代码和预训练模型已经开源:

https://github.com/dddzg/up-detr

相信大家都有目共睹,无监督预训练模型无论是在nlp(BERT,GPT,XLNet)还是在cv(MoCo,SimCLR,BYOL)上都取得了突破性的进展。而对于无监督(自监督)预训练而言,最重要的就是设计一个合理的pretext,典型的像BERT的masked language model,MoCo的instance discrimination。他们都通过一定的方式,从样本中无监督的构造了一个"label",从而对模型进行预训练,提高下游任务的表现。

回到我们的UP-DETR,对于DETR而言,既然CNN可以是无监督预训练的,那么transformer能不能也无监督预训练一下呢。这就是我们的motivation。

当然啦,骚想法可以很丰满,可现实总是很骨感(T.T)。对于现有的pretext任务,似乎都不太适合于DETR里transformer的预训练。比如,你想搞个mask,可cv都是连续像素构成语义,没法像nlp天然有个离散的token的概念,最后还可能训成一个mask检测器(狗头。直接把MoCo那一套搬过也不太可行。我们认为主要的原因是DETR中的transformer主要是用来做空间信息上的定位而MoCo那一套主要是用来提高CNN的instance discrimination。

更重要的是,无监督预训练检测器,这听起来就很违背自觉,因为是不是object某种意义上明明就是人为定义的。所以,我们换了一个思路,提出了一个叫random query patch detection的pretext,具体而言就是从原图中,我们随机的框若干个patch下来,把这些patch输入到decoder,原图输入到encoder,然后整个任务就变成了给定patch找他们在原图中的位置。最后,对于一个无监督训好的DETR,只要输入patch,它天然就能做到如下图的无监督定位patch的功能(不需要额外的nms后处理),当然这个patch还能支持数据增强和尺度变换。从这个预训练任务的角度来说,一个patch是不是object本身没有任何先验。

idea其实就这么简单,但具体实现上,我们其实遇到了两个主要的问题,在paper里,我们把它们总结为:multi-task learning和multi-query localization。更多详细的内容大家可以参阅我们的论文,这里我们简单介绍一下:

  • 对于multi-task learning,主要是由于目标检测其实本身就带有定位和分类两个任务,这两个任务对特征其实有着不同的偏好。这其实在之前许许多多工作中都有大佬提到了,因此许多目标检测的工作通常会设计了两条不同的分支(带有额外卷积结构)分别对应于分类和回归。而detr其实完全共享了同一组特征,在实验中,我们发现如果只做patch的定位,不管分类的话,UP-DETR迁移到voc上效果会不好。这意味着定位和分类,特征偏好上确实是有冲突的。所以,为了在预训练中权衡这两个任务的偏好,我们固定了预训练好的CNN权重,新增了一个叫patch feature reconstruction的分支。motivation就是希望经过transformer的特征能保持和经过CNN后的特征一致的分类判别性。

  • 对于multi-query localization,主要是说对于DETR,decoder其实有100个object query,这100个object query其实是100个网络隐式学到的空间位置偏好的embedding。我们实际上是随机搞了M个query patch,因为patch可能会在任意位置,直觉上得一个patch加到多个object query上,所以我们讨论了一下如何在预训练过程中,把这M个query patch分配到100个embedding上去。我们从最简单的single-query开始介绍,把它拓展到了支持multi-query的预训练。对于multi-query,我们认为有两个要满足的条件,第一个是 query之间框的预测是独立的,所以我们提出了一个放在decoder上的attention mask,保证query之间彼此不可见。第二个是100个embedding和M个query patch应当是没有任何位置先验限制的,我们提出了object query shuffle的方法去达到这种随机性。

解决了这俩问题,UP-DETR的预训练过程如下图所示,除此之外,下游目标检测的微调是和训DETR一模一样的:

在实验中,通过在ImageNet上无监督预训练,UP-DETR在VOC和COCO上都取得了更快的收敛和更高的精度。即便在充足长的训练epoch下,VOC上仍然有3 AP以上的提升,而对于COCO,UP-DETR仍然可以获得0.7 AP的提升(42.8 AP)。要知道的是,对于在充足训练时间下的COCO,预训练CNN对于Faster R-CNN已经不重要了,但是对于DETR而言,预训练CNN和transformer仍然能提升其性能。

最后的话,怕大家误解,我先提前辩解一下,我们和DETR用的是一模一样的模型结构,都是没有FPN,以ResNet50最后一层作为encoder特征输入(当然,由于attention高昂的复杂度也做不了FPN),这导致了小物体依旧挺拉跨,所以AP的提升比起deformable DETR和sparse R-CNN自然会低一些(噗通)。我觉得吧,站在通用视觉表征的立场上,这锅怎么也得分给ResNet一半吧。希望知乎大佬们轻喷(害怕.jpg)。

上述论文和代码下载

后台回复:UP-DETR,即可下载上述论文PDF和项目源代码

后台回复:CVPR2021,即可下载CVPR 2021论文和开源代码合集

点击下方卡片并关注,了解CV最新动态

重磅!CVer-Transformer交流群成立

扫码添加CVer助手,可申请加入CVer-Transformer方向 微信交流群,可申请加入CVer大群,细分方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、Transformer、PyTorch和TensorFlow等群。

一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,才能通过且邀请进群

▲长按加微信群

▲点击上方卡片,关注CVer公众号

整理不易,请给CVer点赞和在看

CVPR 2021 Oral | Transformer再发力!华南理工和微信提出UP-DETR:无监督预训练检测器...相关推荐

  1. CVPR 2021 Oral | Transformer再发力!华南理工和微信提出UP-DETR

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨飞奔的啦啦啦@知乎(已授权) 来源丨知乎 编辑丨极市平台 UP ...

  2. CVPR 2021 Oral | Transformer!UP-DETR:无监督预训练检测器

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨飞奔的啦啦啦@知乎(已授权) 来源丨知乎  编辑丨极市平台 AI博士笔记系列推荐 周志华<机器学习 ...

  3. CVPR 2021 华南理工和微信的Transformer:UP-DETR无监督预训练检测器

    点击上方"机器学习与生成对抗网络",关注星标 获取有趣.好玩的前沿干货! 作者:飞奔的啦啦啦   知乎 https://www.zhihu.com/question/4323211 ...

  4. UP-DETR:收敛更快!精度更高!华南理工微信开源无监督预训练目标检测模型...

    关注公众号,发现CV技术之美 0 写在前面 基于Transformer编码器-解码器结构的DETR达到了与Faster R-CNN类似的性能.受预训练Transformer在自然语言处理方面取得巨大成 ...

  5. ICCV 2021 Oral | Transformer再下一城!百度南大提出神经绘画网络:Paint Transformer

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 杨净 发自 凹非寺 转载自:量子位(QbitAI) AI已经能教你画油画了. 随便给一张图,笔画序列秒秒钟呈 ...

  6. 只用静态图像,就能实时渲染出丝滑3D效果 | CVPR 2021 Oral

    鱼羊 发自 凹非寺  量子位 报道 | 公众号 QbitAI 这般丝滑的美食展示,是否让跟随镜头移动的你食指大动? 再看这放大镜里流畅变化的弹簧,你敢相信,这完全是用静态图像合成的吗? 没错,这样的动 ...

  7. CVPR 2021 Oral|只用静态图像,就能实时渲染出丝滑3D效果

    作者丨鱼羊 来源丨量子位 编辑丨极市平台 [导读] 入选CVPR2021 Oral,NeX的AI,能直接把每秒渲染帧数从0.02帧提升到60帧,渲染速度比NeRF要快1000倍以上. 这般丝滑的美食展 ...

  8. CVPR 2021 Oral | 我给大家表演一个无中生有!北航商汤耶鲁新作:DSG

    来源:量子位 量化,作为神经网络压缩和加速的重要手段,往往要依赖真实数据进行校准. 此前,一些无数据量化方法虽然解决了数据依赖问题,但是却存在数据分布和样本同质化问题,致使量化模型的精度下降. 现在, ...

  9. 再发力!Facebook AI何恺明等最新研究MoCo(动量对比学习)第二版,超越Hinton的SimCLR,刷新SOTA准确率...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]无监督学习再发力!Facebook AI 研究团队的陈鑫磊.樊昊棋.Ros ...

最新文章

  1. 一个推荐系统,实现完整的设计-在百度搜索关键词推荐案例
  2. java z注释过滤_如何编写一个java程序来过滤所有注释行并只打印java编码行?
  3. 小学信息技术计算机网络教学设计,《小学信息技术》教学设计
  4. 论文笔记:Hankel Matrix Factorization for Tagged Time Series to Recover Missing Values during Blackouts
  5. 华为云IoT提出泛在新联接,让万物皆可联
  6. 区块链BaaS云服务(7)微软Azure区块链服务
  7. phpcms v9的url优化
  8. 计算机博士论文答谢,这篇博士论文《致谢》刷屏,句句扎心
  9. C#发送Email邮件方法总结
  10. 对于python 作用域新的理解
  11. 懒惰的JSF Primefaces数据表分页–第2部分
  12. 异常的分类 java 1615309080
  13. Java虚拟机(十)——直接内存概述
  14. python rest api client_Python py-jama-rest-client包_程序模块 - PyPI - Python中文网
  15. 警察抓小偷打字游戏JAVA_警察抓小偷打字游戏金山打字通游戏
  16. 关于本公众号科研交流群(微信群)的说明
  17. excel多列多行堆叠成多列一行_如何将多行多列数据转置成列-Excel中如何将多行多列数据转置成列...
  18. 传统行业+互联网思维
  19. 微信订阅号发送模板消息
  20. 关于机器学习的面试题,你又了解多少呢?

热门文章

  1. circos 可视化手册-line plot 篇
  2. HTML <dfn> 标签
  3. 组成新数python_小组组名大全
  4. 微软服务器2016各版本区别,Win10各版本区别 最强的你绝对没猜到
  5. ubuntu系统损坏修复_修复损坏的ubuntu gui
  6. Android中Fragment的分屏显示处理横竖屏显示
  7. 还不清楚如何编辑图片上的文字的话,就看看这篇文章吧
  8. 二月,劝程序员不要跳槽!
  9. PHP抓取页面中a标签的href属性值以及a中间内容
  10. Java se-画出坦克