CBNet和DetectoRS:COCO数据集霸榜模型极市平台关注共 2876字,需浏览 6分钟 ·2020-08-07 20:09 点击蓝字 关注我们作者丨张佳程@知乎来源丨https://zhuanlan.zhihu.com/p/146447810CBNet和DetectoRS —— COCO数据集霸榜模型(至2020年6月6日)。它两先后刷新了COCO 数据集上的单模型目标检测精度的最高记录:单尺度测试CBNet——50.7AP和DetectoRS——53.3AP,多尺度测试CBNet——53.3AP和DetectoRS——54.7AP。下面扼要介绍一下这两个模型的关键点。《CBNet: A Novel Composite Backbone Network Architecture for Object Detection》(AAAI 2020)论文链接:https://arxiv.org/abs/1909.03625《DetectoRS: Detecting Objects with Recursive Feature Pyramid and Switchable Atrous Convolution》(3 Jun 2020 arXiv)论文链接:https://arxiv.org/abs/2006.02334CBNetCBNet的其结构图如下。CBNet通过复合连接来组合多个相同的主干网络,复合连接作用于相邻的主干网络的平行阶段(如ResNet中的stage i)。从图中可已看到,前一个主干网输出的特征会作为后续主干网输入特征的一部分。在并行的N个主干网络中,前N-1个称为Assistant Backbones,第N个称为Lead Backbone,Lead Backbone的输出用于后续子任务,如回归、分类,或者说检测模型的FPN、detection head等。下面这张图反映了CBNet和unrolled RCNN的区别。可以看到两者对于并行级之间的连接是不同的,另外其次,在RCNN中不同时间步长的平行阶段共享参数,而在CBNet中骨干网的平行阶段不共享参数。CBNet及其几种变种如下图所示。主要差异体现在:复合连接所作用的前一阶段主干网的输出特征层级 与 复合连接输出的特征在当前阶段主干网输入的特征层级 之间的关系。下图中的(a)(b)(c)(d)分别称为Adjacent Higher-Level Composition (AHLC)、Same Level Composition (SLC)、Adjacent Lower-Level Composition(ALLC)和Dense Higher-Level Composition (DHLC),其含义结合图示一目了然。注意复合连接在不同变种中都是相同的:上采样 -> 1*1 Conv -> BN。关于目标检测和实例分割的实验结果如下表。其中DB表示组合2个相同的主干网络,TB表示组合3个相同的主干网络。CBNet及其变种的对比实验结果如下表所示。使用Cascade Mask R-CNN作为baseline,组合2个和3个相同的backbone——ResNeXt152,结合多尺度测试,CBNet刷新了coco的检测记录。最后是关于并行的主干网络数目N与检测精度之间关系的消融实验结果,如下图。合情合理,N越大精度越高,但N>3之后精度趋于饱和。可以想见,N越大,参数量越大、计算复杂度越高、推理速度越慢。DetectoRSDetectoRS的思想来自looking and thinking twice ,作者将这一思想应用于主干网的改进上。宏观上,提出递归特征金字塔网络(Recursive Feature Pyramid ,RFP),添加反馈连接将FPN的特征图输入到主干网中。微观上,提出可切换空洞卷积(Switchable Atrous Convolution, SAC),用它替换主干网上所有的3*3标准卷积,使得模型可自适应选择感受野。DetectoRS的结构图如上图所示。上图中几个点:(1)展开的迭代次数(the number of unrolled iterations)设置为2,这是默认做法;(2)使用ASPP模块来转换RFP大的特征,注意作者使用的ASPP与原始的略有不同,具体细节参加论文;(3)利用Fusion Module来更新输出特征,其结构如下图,最新的特征图作为输入,利用一个1*1卷积层+ Sigmoid激活函数来计算attention map,attention map对最新的特征图进行重标定,1-attention map对上一层到来的特征图进行重标定,而后加和作为最终输出。下面来着重看一下作者提出的可切换空洞卷积(SAC),其内部结构如下图所示。中间主体部分即为SAC,它是一个两分支结构,分别使用扩张率为1和3的扩张卷积,此外,利用5*5自适应平均池化+1*1卷积层建模切换函数S。S对扩张率为1的分支输出的特征图进行重标定,1-S对扩张率为3的分支输出的特征图进行重标定,而后加和作为最终输出。图中的锁定机制的含义是:加载预处理模型时两分支加载的权重是相同的,这样一来便可以利用现成的、在ImageNet上预训练好的模型。此外作者在SAC的前后分别添加了一个全局上下文模块GCM (global context module),它作为一种注意力机制来帮助SAC捕获更大范围内的语义信息。与SENet存在两点主要的区别:一是内部只包含一个卷积层,且没有非线性层;二是将输出将被加回到主流,而不是将输入乘以由Sigmoid计算得到的校准值。作者称GCM对检测性能有积极的影响,它可以使得转换函数S更加稳定。首先是消融实验的实验结果,如下表所示。作者以HTC作为baseline,添加RFP和SAC,实验效果如下表所示。使用ResNeXt-101-32x4d作为backbone,结合测试数据增强,DetectoRS刷新了coco的检测记录。DetectoRS在全景分割、实例分割上实验的结果如下表,表现同样非常优异。推荐阅读ResNeSt 登顶COCO数据集后 ECCV2020 被拒,作者张航:只为推动领域发展表面缺陷检测数据集汇总及其相关项目推荐CVPR 2020|COCO 51.2mAP,商汤提出解偶检测分支新方法TSD添加极市小助手微信(ID : cv-mart),备注:研究方向-姓名-学校/公司-城市(如:目标检测-小极-北大-深圳),即可申请加入极市技术交流群,更有每月大咖直播分享、真实项目需求对接、求职内推、算法竞赛、干货资讯汇总、行业技术交流,一起来让思想之光照的更远吧~△长按添加极市小助手△长按关注极市平台,获取最新CV干货觉得有用麻烦给个在看啦~ 浏览 71点赞 评论 收藏 分享 手机扫一扫分享分享 举报 评论图片表情视频评价全部评论推荐 NLP模型BERT和经典数据集!Datawhale0【NLP】NLP模型BERT和经典数据集!机器学习初学者0如何正确使用COCO数据集小白学视觉0火灾火焰检测数据集和yolov4检测模型机器学习AI算法工程0一文总结微软研究院Transformer霸榜模型三部曲!阿泽的学习笔记0YOLOv7模型训练 | 附数据集AI算法与图像处理0数据方向有哪些经典的霸榜书?小数志0Augustus数据统计和挖掘模型Augustus 是一个基于PMML(PredictiveModelMarkupLanguage)的数据统计和挖掘模型谷歌发布视频全景分割数据集!顺带开发个模型屠榜 !七月在线实验室0目标检测CBNetpytorch玩转深度学习0点赞 评论 收藏 分享 手机扫一扫分享分享 举报