专栏首页CVerICLR2020|商汤提出新目标检测NAS方法:算力重分配(CRNAS)

ICLR2020|商汤提出新目标检测NAS方法:算力重分配(CRNAS)

作者:Jeff Liang(梁丰)

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

本文已由作者授权,未经允许,不得二次转载

介绍一下我在商汤科技&悉尼大学AutoML组ICLR2020最新文章,文章也会分享一些我对NAS的一些浅显的个人看法,希望能够对大家有所启发。

《Computation Reallocation for Object Detection》(CRNAS)

Author: Feng Liang, Chen Lin, Ronghao Guo, Ming Sun, Wei Wu, Junjie Yan, Wanli Ouyang

链接:https://arxiv.org/abs/1912.11234

Why is CRNAS ? (Motivation)

在今年7月正式决定要做检测NAS时,当时学界已经有了一些很不错的检测NAS文章,如DetNAS[1],NAS-FPN[2],NAS-FCOS[3],对于检测的各个组件(backbone, neck, head)都已经有相关的研究。既然占坑是没有机会了,那不如就去思考已有的工作还有上面可以改进的,为此,我们换了一个研究的视角,从检测这个问题本身去考虑NAS。

那检测的问题在哪呢?做过检测的应该都会想到一个重要方面物体的尺度(Scale),关于检测的尺度有非常多优秀的工作,详细了解可以参考[4]。在检测中,往往会直接将分类网络,如Res50拿过来做提取特征的主干网络(backbone),但是这么直接应用过来是不合适的,参考DetNet[5]。我们更进一步分析了这个Gap的可能的一大原因是两个任务的data相差太大。对Res50分类而言,ImageNet输入大小是224*224,但是对于检测而言,拿COCO为例,输入可能到800*1333,而且还需要去handle各个尺度的物体。那么我们如何才能设计(搜索)一个适合于检测的backbone呢?

这个时候,我们将网络的有效感受野ERF[6]与网络算力分配模式联系了起来。在Faster RCNN + FPN这一经典baseline中,我们希望FPN的各层有合适能力去检测对应大小的物体(Anchor Size)。当我们画出R50-FPN的各层的ERF时,发现对于P3而言(小物体),ERF挺大有冗余,但对于P5而言(大物体),ERF又不够有点稀疏,见下图Figure 1右上角。这也就是直接应用Res50作为backbone的问题,经过我们的stage的重分配之后,可以明显看到各层FPN有更加平衡的ERF,保证了最后的性能。

那通过什么方式可能改变算力分配,进而改变ERF影响最后结果呢?我们提出了两种方向,在不同分辨率(feature resolution)和不同的采样位置(spatial position)进行算力分配。我们做了大量的试验,从轻量级的MobileNetV2到重量级的ResNeXt101,都获得了稳定的涨点。我们搜索出来的模型也有非常好的可迁移性,可以迁移到其他的neck(NAS-FPN),其他的数据VOC,其他的任务实例分割(Mask RCNN)。

What is CRNAS ? (Approach)

为了进行算力重分配,我们构建了一个两级搜索来配合这个庞大的搜索空间。我们先进行stage的搜索,然后进行spatial的搜索。简单来说,先搜索各个stage的block number,再搜索各个位置的dilated conv的rate,因为dilated conv通过改变采样点的稀疏程度,可以改变网络的感受野。

1.Stage reallocation across different feature resolution

考虑到不同stage的block计算量大部分情况是一样的(因为downsample往往会带来channel数的翻倍),我们利用One-shot NAS[7]的方式构建超图,当超图训练完成后,我们去测试各种组合的性能,从其中挑选中最好的组合。我们也设计了可以重复利用的超图,也就是你训练了一个超图之后,我们可以从中挑选出这个系列中任何计算量下最好的模型,如Res18到Res101。

2. Operation reallocation across spatial position

在得到stage的结果之后,我们利用dilated conv来完成不同位置稀疏的采样。与第1步一样,我们也是利用One-shot NAS[7]的方式构建超图,但是最后evaluate的方式不是EA,而是一种贪心的算法,具体的可以参考本文和本组另外一篇文章PCNAS[8]。

How is CRNAS ? (Experiments & Results)

从结果上面来看,经过我们的CRNAS,所有的模型在COCO上均有1.5-1.9 mAP左右的提升,而且这些提升都没有带来任何的计算量增长,在文章中也有很多的analysis和ablation study,在这就不再赘述。

我们搜索出的模型有非常好的可迁移性,可以迁移到其他的neck(NAS-FPN),其他的数据VOC,其他的任务实例分割(Mask RCNN)。

最后来理解一下搜索出的模型,在我们搜索的不同类型的网络结构中,我们都发现了一个有趣的趋势,就是CRNAS趋向于将更多的block以及更多的dilated conv堆叠在网络的deep stage。这与主图Figure 1是遥相呼应的,更一步验证了直接的采用分类网络作为backbone不太合适。并且这与结果中,APl的增长远大于APs的现象也是一致的。

Future NAS.

去年的ICLR2019,有DARTS[9],ProxylessNAS[10]这些非常不错搜索方法的文章。今年的则更多的是对NAS的诠释与理解,以及在各个task上的应用,参考 ICLR2020 NAS收录。个人拙见,对NAS的研究一方面可以去研究NAS的核心问题,比如结构与参数,参数与性能的关系,这个可能涉及到神经网络或者优化的本质问题。一方面可以将NAS看成一个booster,去对各个任务进行具体任务痛点的分析,采用NAS方法进一步利用已有的资源提升性能。

最后的最后,给我们组打一个广告(重要)

商汤研究院AutoML组,在NAS网络结构搜索,自动化训练策略等方面均有不错的研究。两年时间里,团队发表18NIPS一篇,19CVPR一篇,19ICCV两篇,19NIPS一篇,20ICLR一篇,20CVPR三篇在投,在工程侧,团队维护automl相关的工具链,对各个业务算法进行automl赋能。本组长期招聘优秀实习生与全职员工,大组长的主页在这Ming sun(https://msunming.github.io/),指导老师是悉尼大学的欧阳万里老师,欢迎联系组长Chen Lin(linchen@sensetime.com),也可以联系我liangfeng@sensetime.com

谢谢大家!

[1] Chen, Yukang, et al. "Detnas: Neural architecture search on object detection."arXiv preprint arXiv:1903.10979(2019).

[2] Ghiasi, Golnaz, Tsung-Yi Lin, and Quoc V. Le. "Nas-fpn: Learning scalable feature pyramid architecture for object detection." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019.

[3] Wang, Ning, et al. "NAS-FCOS: Fast Neural Architecture Search for Object Detection."arXiv preprint arXiv:1906.04423(2019).

[4] Zou, Zhengxia, et al. "Object Detection in 20 Years: A Survey."arXiv preprint arXiv:1905.05055(2019).

[5] Li, Zeming, et al. "Detnet: A backbone network for object detection."arXiv preprint arXiv:1804.06215(2018).

[6] Luo, Wenjie, et al. "Understanding the effective receptive field in deep convolutional neural networks."Advances in neural information processing systems. 2016.

[7] Guo, Zichao, et al. "Single path one-shot neural architecture search with uniform sampling."arXiv preprint arXiv:1904.00420(2019).

[8] Li, Xiang, et al. "Improving One-shot NAS by Suppressing the Posterior Fading."arXiv preprint arXiv:1910.02543(2019).

[9] Liu, Hanxiao, Karen Simonyan, and Yiming Yang. "Darts: Differentiable architecture search." arXiv preprint arXiv:1806.09055 (2018).

[10] Cai, Han, Ligeng Zhu, and Song Han. "Proxylessnas: Direct neural architecture search on target task and hardware."arXiv preprint arXiv:1812.00332(2018).

本文分享自微信公众号 - CVer(CVerNews),作者:Jeff Liang(梁丰)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-01-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [计算机视觉论文速递] 2018-06-06

    这篇文章有4篇论文速递信息,涉及目标跟踪、GAN、Zero-Shot Learning、视频分类和行人重识别等方向(含一篇IJCAI 2018和一篇IROS 2...

    Amusi
  • [计算机视觉论文速递] 2018-06-19 目标检测专场

    这篇文章有 4篇论文速递,都是目标检测方向,包括行人检测、车辆检测、指纹检测和目标跟踪等。

    Amusi
  • 大盘点 | 性能最强的目标检测算法

    趁最近目标检测(Object Detection)方向的论文更新较少,Amusi 赶紧做个"最强目标检测算法"大盘点。

    Amusi
  • 微博大V@爱可可:arXiv论文怎么读?

    用户1737318
  • arXiv的优缺点如此明显,未来是否应该引入评论与同行评议?

    选自Authorea 机器之心编译 参与:路雪、刘晓坤、李亚洲 arXiv 是当前最流行的预印本库。自 1991 年创办以来,arXiv 为研究者提供了一个在正...

    机器之心
  • 科普:论文上附有的 arXiv 是干嘛的

    简单来说,为了防止自己的idea在论文被收录前被别人剽窃,我们会将预稿上传到arvix作为预收录,因此这就是个可以证明论文原创性(上传时间戳)的文档收录网站 。

    JNingWei
  • 使用Jenkins pipeline流水线构建docker镜像和发布

    对于Pipeline, Definition选择 "Pipeline script from SCM".

    Ryan-Miao
  • SFFAI分享 | 方杰民:Recent Advances and Highlights of NAS【附PPT与视频资料】

    方杰民,华中科技大学电子信息与通信学院媒体与通信实验室研究生在读,师从王兴刚副教授,地平线平台与技术部算法实习生,主要研究方向为网络结构搜索、模型结构优化。

    马上科普尚尚
  • Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Neural Networks论文笔记(1)

    如今一些深度神经网络对于一些对抗性样本(Adversarial sample)是弱势的, 对抗性样本就是指我们对输入进行特定的改变, 通过原有的学习算法最终导致...

    Mezereon
  • NAS 服务器的上搭建 huginn

    最近为了安装 huginn,在aws和 aliyun 上都尝试部署了,发现性能过差,服务很不稳定,就有了自己搭一台服务器的想法,恰好金华老师向我安利了一把 na...

    huginn 中文网

扫码关注云+社区

领取腾讯云代金券