本文回顾了Google Brain提出的NAS-FPN:面向对象检测的学习可扩展特征金字塔体系结构(NAS-FPN)。
- 模糊神经网络通过金字塔式的多尺度特征地图有效地搜索到小目标和大目标,在目标检测任务中得到了广泛的应用。
在本文中:
- 在已有技术搜索特征提取部分或主干的同时,这次使用神经结构搜索(NAS)来搜索FPN结构。
- 最后,发现的体系结构名为NAS-FPN,由自上而下和自下而上的连接组合组成,以跨规模融合功能。
- 此NAS-FPN可以堆叠N次以提高精度。与RetinanNet相结合,目标检测网络实现了更好的准确性和时延折衷。
这是一篇2019年CVPR的论文,引文超过400篇。(曾锡豪@Medium)Sik-Ho Tsang
大纲
1.NAS-FPN
- 该网络基于RetinaNet,由两部分组成:主干网和固定分组网。
- 该算法的目标是为Retinanet发现一种更好的FPN结构。
- 如在Nasnet中提出的,使用NAS使得存在RNN控制器来使用强化学习在给定搜索空间中选择最佳模型体系结构。
- RNN控制器使用子模型在搜索空间中的精度作为更新其参数的奖励。通过反复试验,RNN控制器学会了随着时间的推移生成更好的体系结构。
- 为了提高FPN的可扩展性,在搜索期间,FPN被强制重复N次,然后级联成一个大的体系结构。
- FPN将多比例要素图层作为输入,并生成相同比例的输出要素图层,如上图所示。
- FPN使用每组要素图层中的最后一个图层作为第一个棱锥体网络的输入。第一个金字塔网络的输出是下一个金字塔网络的输入。
- 输入特征具有5个尺度{C3,C4,C5,C6,C7},对应的特征步长为{8,16,32,64,128}像素。C6和C7是通过简单地将步幅2和步幅4最大值合并应用到C5来创建的。
- 然后,输入要素被传递到金字塔网络,该网络由一系列引入跨尺度连接的合并像元(见下文)组成。
- 然后,金字塔网络输出扩展的多尺度特征表示{P3,P4,P5,P6,P7}。
- 跨尺度连接允许模型将高层特征与强语义特征相结合,将低层特征与高分辨率特征相结合。
- 一个FPN由N个不同的合并单元组成,其中N是在搜索期间给定的。(此处的N与用于堆叠FPN数量的N不同。N再次被使用,只是因为我想用纸同步。)
- 在合并单元中,所有要素图层具有相同数量的过滤器。
2.2.合并单元格的搜索
- 如何构建合并单元的决定由控制器RNN做出。
- RNN控制器选择任意两个候选要素层和二元运算,以将它们组合成新的要素层。
- 具体步骤如下:
- 在步骤4中考虑两个二进制操作,SUM和全局池,因为这两个操作是无参数的。
- 全局池基于PAN中的思想,只是在原始设计中删除了卷积层。
2.3.一些进一步的搜索细节
- 在应用二进制运算之前,如果需要,通过最近邻上采样或最大池将输入要素图层调整为输出分辨率。
- 合并的要素图层后面始终跟随RELU、3×3卷积和批归一化图层。
- 为了减少发现的体系结构中的计算量,我们避免在步骤3中选择Stride 8特征。
- 最后,最后5个合并单元被设计为输出特征金字塔{P3,P4,P5,P6,P7}。
- 输出特征电平的顺序由控制器预测。然后,通过重复步骤1、2、4直到完全生成输出要素棱锥体来生成每个输出要素图层。
- 与Nasnet类似,所有尚未连接到任何输出层(即,未被RNN控制器选择)的输入特征层都被加到具有相应分辨率的输出层。
3.深度监控的随时随地目标检测
- 此属性支持随时检测,可以在提前退出的情况下生成检测结果。
- 分类器和盒回归头可以放置在所有中间金字塔网络之后,并可以在深度监督下进行训练。
- 在推理过程中,模型不需要完成所有金字塔网络的正向传递。
- 当需要考虑计算资源或等待时间时,这可能是所需的属性,并且提供了可以动态决定分配多少计算资源用于生成检测的解决方案。
4.实验结果
- 模型在一批64幅图像的TPU上进行训练。
- 对输出图像大小使用随机尺度在[0.8,1.2]之间的多尺度训练。
- 像Retinanet中使用的那样,焦散的α=0.2 5和γ=1.5。
- 该模型使用50个历元进行训练。
- 使用DropBlock,使用150个纪元的较长训练时间表。
- 在搜索过程中,代理任务仅训练10个纪元。
- 为了进一步加快训练代理任务的速度,使用了输入512×512图像大小的小型ResNet-10主干。
- 因此,TPU上的代理任务的培训时间为1小时。
- 从COCO TRAN2017集合中随机抽取7392张图片作为验证集,用于获取奖励。
- 实验中的工作队列由100个TPU组成。
- 如上所述,RL训练期间所有采样架构中AP最高的架构最终被挑选出来使用。
- GP和R-C-B代表全局池和REU-Conv-BatchNorm。
- 该结构首先在8000步进行采样,然后进行多次采样。
4.2.发现的特色金字塔建筑
- 上图显示了RL培训期间奖励逐渐增加的NAS-FPN架构。
- (A):香草FPN
- (B):从早期搜索阶段到后期搜索阶段的NAS-FPN。
- 例如,它发现高分辨率输入和输出要素图层之间的联系,生成用于检测小对象的高分辨率要素。
- 控制器发现同时具有自上而下和自下而上连接的体系结构,这与普通FPN不同。
- 随着控制器的收敛,使用了更好的功能重用。
- 控制器学习在新生成的图层上建立连接,以重用先前计算的特征表示。
4.3.可扩展的功能金字塔体系结构
- 这里使用了更简单的表示法。例如,R-50,5@256表示使用ResNet-50主干模型、5个堆叠NAS-FPN金字塔网络和256个功能维度的型号。
- (A):堆叠普通的FPN架构并不总是提高性能,而堆叠NAS-FPN则可显着提高准确性。
- (B):同时具有轻型和重型主干架构的NAS-FPN可从堆叠更多金字塔网络中获益。
- 在映像大小为640×640的情况下,使用MobileNetV2的NAS-FPN可获得160B Flops的36.6 AP。
- 当使用AmoebaNet-D作为主干时,它将FLOP增加到390B,但也增加了大约5AP。
- (A):NAS-FPN R-50 5@256型号的FLOP与R-101 FPN基线相当,但增益为2.5AP。
- NAS-FPN与最先进的Mask R-CNN模型一样精确,计算时间更短。
- 这表明使用NAS-FPN比用更高容量的模型替换主干更有效。
- (B):这里引入了NAS-FPNLite用于移动目标检测。
- 它搜索仅具有从P3到P6输出的金字塔网络。
- 模型用ResNet-50主干训练,图像大小为1024×1024。
- 在NASFPN层批量归一化层后应用挡路大小为3×3的DropBlock。
- 在金字塔网络中增加特征维数时,增加DropBlock就显得尤为重要。
参考文献
[2019 CVPR][NAS-FPN]NAS-FPN:学习用于目标检测的可伸缩特征金字塔体系结构NAS-FPN: Learning Scalable Feature Pyramid Architecture for Object Detection
目标检测
2014:[OverFeat][R-CNN]2015:[FAST R-CNN][FASTER R-CNN][MR-CNN&S-CNN][DeepID-NET]2016:[OHEM][Craft][R-FCN][ION][MultiPathNet][Hikvision][GBD-NET/GBD-v1&GBD-v2][SSD][YOLOv1]2017:[NOC][G-RMI][TDM][DSSD[FPN][RetinaNet][DCN/DCNv1][Light-Head R-CNN][DSOD][CoupleNet]2018:[YOLOv3][Cascade R-CNN][MegDet][StairNet][RefineDet][CornerNet]2019年:[DCNv2][Reink ImageNet预培训][GRF-DSOD&GRF-SSD][Centernet][GridOverFeat R-CNN Fast R-CNN Faster R-CNN MR-CNN & S-CNN DeepID-Net OHEM CRAFT R-FCN ION MultiPathNet Hikvision GBD-Net / GBD-v1 & GBD-v2 SSD YOLOv1 NoC G-RMI TDM DSSD YOLOv2 / YOLO9000 FPN RetinaNet DCN / DCNv1 Light-Head R-CNN DSOD CoupleNet YOLOv3 Cascade R-CNN MegDet StairNet RefineDet CornerNet DCNv2 Rethinking ImageNet Pre-training GRF-DSOD & GRF-SSD CenterNet Grid R-CNN NAS-FPN
我以前的其他论文阅读
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/07/29/%e2%80%8a-%e2%80%8a%e7%9b%ae%e6%a0%87%e6%a3%80%e6%b5%8b%e7%9a%84%e5%ad%a6%e4%b9%a0%e5%8f%af%e4%bc%b8%e7%bc%a9%e7%89%b9%e5%be%81%e9%87%91%e5%ad%97%e5%a1%94%e4%bd%93%e7%b3%bb%e7%bb%93%e6%9e%84-2/