YOLOX:ExceedingYOLOSeriesin2021(原⽂翻译)
YOLOX: Exceeding YOLO Series in 2021
图1:YOLOX和其他最先进的物体检测器在移动设备上精确模型的速度-精度权衡(上)和精简模型的尺⼨-精度曲线(下)。
1、引⾔
随着⽬标检测的发展,YOLO系列[23,24,25,1,7]始终追求实时应⽤的最佳速度和精度平衡。他们提取当时可⽤的最先进的检测技术(例如,针对YOLOv2 [24]的锚[26]、针对YOLOv3 [25]的残差⽹络[9]),并针对最佳实践优化实施。⽬前,YOLOv5 [7]在13.7 ms的COCO 上以48.2%的AP保持了最佳的折衷性能。
然⽽,在过去的两年中,⽬标检测学术界的主要进展集中在⽆锚检测器[29,40,14],⾼级标签分配策略[37,36,12,41,22,4]和端到端(⽆NMS)检测器[2,32,39]。这些尚未融⼊YOLO家庭,如YOLOv4和YOLOv5仍然是基于锚的检测器,具有⼿⼯制作的训练分配规则。
这就是我们来到这⾥的原因,通过经验丰富的优化为YOLO系列带来了最新的进步。考虑到YOLOv4和YOLOv5对于基于锚点的通道可能有些过度优化,我们选择YOLOv3 [25]作为我们的起点(我们将YOLOv
3-SPP设置为默认的YOLOv3)。事实上,由于各种实际应⽤中的计算资源有限和软件⽀持不⾜,YOLOv3仍然是⾏业中使⽤最⼴泛的检测器之⼀。
如图1所⽰,随着上述技术的经验更新,我们在COCO上以640 × 640的分辨率将YOLOv3提升到47.3% AP (YOLOX-DarkNet53),⼤⼤超过了⽬前YOLOv3的最佳实践(44.3% AP,ultralytics版)。此外,当切换到采⽤先进CSPNet [31]主⼲和额外PAN [19]头的先进YOLOv5架构时,YOLOX-L在640 × 640分辨率的COCO上实现了50.0%的AP,⽐对应的YOLOv5-L⾼出1.8%的AP。我们也在⼩尺⼨的模型上测试我们的设计策略。YOLOX-Tiny和YOLOX-Nano(仅0.91M参数和1.08G FLOPs)的性能分别⽐对应的YOLOv4-Tiny和NanoDet3by⾼出10% AP和
1.8% AP。
2、YOLOX
2.1 YOLOX-DarkNet53
我们选择YOLOv3 [25],以Darknet53为基线。在接下来的部分,我们将⼀步⼀步地在YOLOX中遍历整个系统设计。
实现细节从基线到最终模型,我们的训练设置基本⼀致。我们在COCO train2017上对模型进⾏了总共
300个时期的训练,其中包括5个时期的预热[17]。我们使⽤随机梯度下降进⾏训练。我们使⽤的学习速率为lr×BatchSize/64(线性缩放[8]),初始化lr = 0.01,lr随着时间余弦变化。权重衰减为0.0005,SGD动量为0.9。默认情况下,典型的8-GPU设备的批处理⼤⼩为128。包括单个GPU训练在内的其他批处理⼤⼩也运⾏良好。输⼊⼤⼩从448到832均匀绘制,步长32。本报告中的FPS和延迟都是在单个特斯拉V100上⽤FP16-precision和 batch=1测量的。
表1:以AP (%)表⽰的端到端YOLO解耦头对COCO的影响。
YOLOv3基准线我们的基线采⽤了DarkNet53主⼲和SPP层的架构,在⼀些论⽂中被称为yolov3-SPP[1,7]。与最初的实现相⽐,我们稍微改变了⼀些训练策略[25],增加了均线权重更新、余弦lr调度、IoU损失和IoU感知分⽀。我们将BCE损失⽤于训练cls和obj分⽀,将IoU 损失⽤于训练reg分⽀。这些常规训练技巧与YOLOX的关键改进是正交的,因此我们将其放在基线上。我们只进⾏RandomHorizontalFlip、ColorJitter和多尺度数据增强,并放弃RandomResizedCrop策略,因为我们发现RandomResizedCrop与计划的镶嵌增强有点重叠。通过这些增强,我们的基线在COCO val上实现了38.5%的AP,如表2显⽰。
解耦头在⽬标检测中,分类和回归任务之间的冲突是⼀个众所周知的问题[27,34]。因此,⽤于分类和定位的解耦头⼴泛⽤于⼤多数单级和两级检测器[16,29,35,34]。然⽽,作为YOLO系列的主⼲和特征⾦字塔(例如,FPN [13],PAN[20])。)不断发展,它们的检测头保持耦合,如图2所⽰。
我们的两个分析实验表明,耦合探测头可能会损害性能。1).如图3所⽰,⽤解耦的头代替YOLO的头⼤⼤提⾼了收敛速度。2).解耦的头部对于端到端版本的YOLO是必不可少的(将在下⾯描述)。从表1就能看出来。端对端特性随着耦合头降低4.2%的AP,⽽对于解耦合头降低到0.8%的AP。因此,我们⽤如图2所⽰的lite去耦头代替YOLO检测头。具体来说,它包含⼀个1 × 1 卷积层以减⼩通道尺⼨,其后是两个平⾏分⽀,分别有两个3 × 3 卷积层。我们在表2的V100上报告batch=1的推断时间,lite去耦头带来额外的1.1 ms (11.6 ms v.s. 10.5 ms)
图2:说明YOLOv3头部和建议的去耦头部之间的差异。对于每⼀级FPN特征,我们⾸先采⽤1 × 1 卷积层将特征通道减少到256个,然后添加两个平⾏分⽀,每个分⽀有两个3 × 3 卷积层,分别⽤于分类和回归任务。在回归分⽀上增加了IoU分⽀。
图3:带有YOLOv3头或去耦头的检测器的训练曲线。我们每10个时代在COCO val上评估⼀次AP。解耦磁头⽐YOLOv3磁头收敛得更快,最
终获得更好的结果。
强数据增强我们将Mosaic和MixUp添加到我们的增强策略中,以提⾼YOLOX的性能。Mosaic是ultralytics-YOLOv3提出的⼀种有效的扩增策略。然后,它被⼴泛⽤于YOLOv4 [1]、YOLOv5 [7]和其他检测器[3]。MixUp [10]最初是为图像分类任务⽽设计的,但在对象检测训练中,MixUp[38]的任务是
很复杂的。我们在模型中采⽤了MixUp和Mosaic实现,并在过去15个时期关闭了它,在表2中实现了42.0%的AP。在使⽤强⼤的数据增强后,我们发现ImageNet预训练不再有任何益处,因此我们从头开始训练以下所有模型。
⽆锚框 YOLOv4 [1]和YOLOv5 [7]都遵循YOLOv3 [25]的基于锚的原始管道。然⽽,锚机制有许多已知的问题。⾸先,为了获得最佳检测性能,需要在训练之前进⾏聚类分析以确定⼀组最佳锚。这些集锚是特定于领域的,不太⼀般化。第⼆,锚机制增加了检测头的复杂性,以及每个图像的预测数量。在⼀些边缘⼈⼯智能系统中,在设备之间移动如此⼤量的预测(例如,从NPU到中央处理器)可能会成为总延迟的潜在瓶颈。
⽆锚探测器[29,40,14]在过去两年中发展迅速。这些⼯作表明,⽆锚探测器的性能可以与基于锚的探测器相媲美。⽆锚机制显著减少了需要启发式调整的设计参数数量和涉及的许多技巧(例如,锚聚类[24],⽹格敏感[11])。)为了获得良好的性能,使检测器,尤其是其训练和解码阶段变得相当简单[29]。
将YOLO切换到⽆锚模式⾮常简单。我们将每个位置的预测从3减少到1,并使它们直接预测四个值,即⽹格左上⾓的两个偏移量,以及预测框的⾼度和宽度。我们将指派每个对象的中⼼位置作为正样本,并预先定义⼀个标度范围,如[29]中所做的,以指定每个对象的FPN⽔平。这种修改减少了检测器的参数和GFLOPs,使其更快,但获得了更好的性能:42.9%的AP,如表2所⽰。
表2:YOLOX-Darknet 53在COCO val上的AP (%)路线图。所有模型均以640×640分辨率进⾏测试,在特斯拉V100上的FP16-precision和
batch=1。该表中的延迟和FPS是在没有后处理的情况下测量的。
多正样本为了与YOLOv3的分配规则保持⼀致,上述⽆锚点版本只为每个对象选择⼀个正样本(中⼼位置),同时忽略其他⾼质量预测。然⽽,优化那些⾼质量的预测也可能带来有益的梯度,这可能缓解训练期间正/负采样的极端不平衡。我们简单地将中⼼3×3区域指定为正样本,在FCOS也称为“中⼼采样”。检测器的性能提⾼到45.0% AP,如表2所⽰,已经超过了ultralytics-YOLOv3的当前最佳实践(44.3% AP)。      SimOTA ⾼级标签分配是近年来⽬标检测的⼜⼀重要进展。基于我们⾃⼰的研究OTA [4],我们总结了⾼级标签分配的四个关键见解:1)损失/质量意识,2)居中在先,3)每个真实地⾯的正锚点的动态数量4(缩写为动态top-k),4)全局视图。OTA满⾜上述四个规则,因此我们选择它作为候选标签分配策略。
具体⽽⾔,OTA [4]从全局⾓度分析标签分配,并将分配过程公式化为最优传输(OT)问题,产⽣当前分配策略中的SOTA性能
[12,41,36,22,37]。然⽽,在实践中我们发现通过sinkorn-Knopp算法解决OT问题会带来25%的额外训练时间,这对于训练300个纪元来说是相当昂贵的。因此,我们将其简化为动态top-k策略,命
名为SimOTA,以获得近似解。
我们在这⾥简单介绍⼀下SimOTA。SimOTA⾸先计算成对匹配度,由每个预测gt对的成本[4,5,12,2]或质量[33]表⽰。例如,在SimOTA中,gt gi和预测pj之间的成本计算如下:
其中λ是平衡系数。L_{ij}^{cls}和L_{ij}^{reg}是gt g_i和预测p_j之间的分类损失和回归损失。然后,对于gt g_i,我们选择固定中⼼区域内成本最⼩的前k个预测作为其正样本。最后,那些正预测的对应⽹格被指定为正,⽽其余⽹格为负。请注意,k值因不同的基本事实⽽异。详情请参考OTA [4]中的动态k估计策略。
SimOTA不仅减少了训练时间,⽽且避免了Sinkhorn-Knopp算法中额外的求解超参数。如表2所⽰,SimOTA将探测器从45.0% AP提⾼到47.3% AP,⽐SOTA ultralytics-YOLOv3⾼3.0% AP,展⽰了⾼级分配策略的威⼒。
端到端YOLO 我们按照[39]添加两个额外的conv层,⼀对⼀的标签分配和停⽌梯度。这些使检测器能够以端到端的⽅式执⾏,但会略微降低性能和推理速度,如表2中所列。因此,我们将其作为⼀个可选模块,不包含在最终模型中。
2.2 其他⾻⼲⽹络
除了DarkNet53,我们还在其他不同⼤⼩的主⼲上测试YOLOX,其中YOLOX相对于所有对应的主⼲实现了⼀致的改进。
表3:在COCO上⽤AP (%)⽐较YOLOX和YOLOv5。所有模型均以640 × 640分辨率进⾏测试,在特斯拉V100上的FP16-precision和
batch=1。
表4:YOLX-Tiny和YOLX-Nano与COCO val上对应的AP (%)的⽐较。所有模型均以416 × 416分辨率进⾏测试。
修改YOLOv5⾥的CSPNet 为了进⾏公平的⽐较,我们采⽤了精确的YOLOv5主⼲,包括修改的CSPNet [31]、路斯激活和PAN [19]头。我们也遵循其缩放规则来⽣产YOLOXS、YOLOX-M、YOLOX-L和YOLOX-X型号。与选项卡中的YOLOv5相⽐。3、我们的模型获得了⼀致的改进,从3.0%到1.0%,只有边际时间增加(来⾃解耦的头部)。
Tiny和Nano检测器我们将我们的模型进⼀步缩⼩为YOLOX-Tiny,以与YOLOv4-Tiny进⾏⽐较[30]。对于移动设备,我们采⽤深度⽅向卷积构建了⼀个YOLOX-Nano模型,该模型只有0.91M的参数和1.08G的FLOPs。如表4所⽰,YOLOX性能良好,模型尺⼨甚⾄⽐同类产品更⼩。
模型⼤⼩和数据增强在我们的实验中,所有的模型保持⼏乎相同的学习进度和优化参数,如2.1所⽰。然⽽,我们发现不同尺⼨的模型中,合适的增强策略是不同的。如表5显⽰,虽然对YOLOX-L应⽤MixUp可以提⾼0.9%的AP,但对YOLOX-Nano这样的⼩型号来说,削弱增强效果更好。具体来说,我们在训练⼩模型,即YOLOX-S、YOLOX-Tiny和YOLOX-Nano时,去掉了混叠增强,弱化了马赛克(将⽐例范围从[0.1,2.0]缩⼩到[0.5,1.5])。这样的修改将YOLOX-Nano的AP从24.0%提⾼到25.3%。
对于⼤型模型,我们还发现增强更强更有帮助。事实上,我们的MixUp实现是⽐[38]中的原始版本更重的⼀部分。受复制粘贴[6]的启发,我们在混合图像之前,通过随机采样的⽐例因⼦对两幅图像进⾏抖动。为了理解混合和缩放抖动的威⼒,我们将其与YOLOX-L上的复制粘贴进⾏⽐较。注意,复制粘贴需要额外的实例掩码注释,⽽混合不需要。但是如表5所⽰,这两种⽅法实现了有竞争⼒的性能,这表明当没有实例掩码注释可⽤时,带有⽐例抖动的MixUp是copy pastewhen的⼀个合格的位置。
表5:不同模型规模下数据扩充的效果。“规模准时。”代表镶嵌图像的⽐例抖动范围。当采⽤复制粘贴时,使⽤来⾃COCO trainval的实例掩码
注释。
3、和SOTA⽐较
有⼀个传统,显⽰SOTA⽐较表,如表6.但是,请记住,此表中模型的推断速度通常不受控制,因为速度因软件和硬件⽽异。因此,我们对图1中的所有YOLO系列使⽤相同的硬件和代码库,绘制了稍微受控的速度/精度曲线。
我们注意到有⼀些⾼性能的YOLO系列具有更⼤的模型尺⼨,如Scale-YOLOv4 [30]和YOLOv5-P6 [7]。基于电流互感器的检测器[21]将精度-SOTA推到了∨60ap。由于时间和资源的限制,我们没有探索那些重要的壮举。
4、流媒体感知挑战第⼀名(CVPR2021 WAD)
5、结论
在本报告中,我们介绍了YOLO系列的⼀些经验丰富的更新,它形成了⼀个⾼性能的⽆锚探测器,称为YOLOX。YOLOX配备了⼀些最新的先进检测技术,即去耦头、⽆锚和先进的标签分配策略,在速度和精度之间取得了⽐所有模型尺⼨的其他同类产品更好的平衡。值得注意的是,我们将YOLOv3的架构提升到COCO上的47.3% AP,⽐当前的最佳实践⾼出3.0% AP,yolov 3由于其⼴泛的兼容性,仍然是业界使⽤最⼴泛的检测器之⼀。我们希望这份报告能够帮助开发者和研究⼈员在实际场景中获得更好的体验。
参考
[1] Alexey Bochkovskiy, Chien-Yao Wang, and Hong-Y uan Mark Liao. Y olov4: Optimal speed and accuracy of object detection. arXiv preprint arXiv:2004.10934, 2020. 1,2, 3, 6
[2] Nicolas Carion, Francisco Massa, Gabriel Synnaeve, Nicolas Usunier, Alexander Kirillov, and Sergey Zagoruyko. End-to-end object detection with transformers. In ECCV, 2020. 1,4
[3] Qiang Chen, Yingming Wang, Tong Yang, Xiangyu Zhang,Jian Cheng, and Jian Sun. Y ou only look one-level feature.In CVPR, 2021. 3
[4] Zheng Ge, Songtao Liu, Zeming Li, Osamu Y oshie, and Jian Sun. Ota: Optimal transport assignment for object detection.In CVPR, 2021. 1, 4
[5] Zheng Ge, Jianfeng Wang, Xin Huang, Songtao Liu, and Os-amu Y oshie. Lla: Loss-aware label assignment for dense pedestrian detection. arXiv preprint arXiv:2101.04307,2021,4
[6] Golnaz Ghiasi, Yin Cui, Aravind Srinivas, Rui Qian, Tsung-Yi Lin, Ekin D Cubuk, Quoc V Le, and Barret Zoph. Simple copy-paste is a strong data augmentation method for instance segmentation. In CVPR, 2021. 5
[8] Priya Goyal, Piotr Dollár, Ross Girshick, Pieter Noord-huis, Lukasz Wesolowski, Aapo Kyrola, And
rew Tulloch,Yangqing Jia, and Kaiming He. Accurate, large mini-batch sgd: Training imagenet in 1 hour. arXiv preprint arXiv:1706.02677, 2017. 2
[9] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun.Deep residual learning for image recognition. In CVPR,2016.1
[10] Zhang Hongyi, Cisse Moustapha, N. Dauphin Yann, and David Lopez-Paz. mixup: Beyond empirical risk minimization. ICLR, 2018. 3
[11] Xin Huang, Xinxin Wang, Wenyu Lv, Xiaying Bai, Xiang Long, Kaipeng Deng, Qingqing Dang, Shumin Han, Qiwen Liu, Xiaoguang Hu, et al. Pp-yolov2: A practical object detector. arXiv preprint arXiv:2104.10419, 2021. 3, 6
[12] Kang Kim and Hee Seok Lee. Probabilistic anchor assignment with iou prediction for object detection. In ECCV,2020.1, 4
[13] Seung-Wook Kim, Hyong-Keun Kook, Jee-Y oung Sun,Mun-Cheon Kang, and Sung-Jea Ko. Parallel feature pyra-mid network for object detection. In ECCV, 2018. 2
[14] Hei Law and Jia Deng. Cornernet: Detecting objects aspaired keypoints. In ECCV, 2018. 1, 3
[15] Mengtian Li, Y uxiong Wang, and Deva Ramanan. Towards streaming perception. In ECCV, 2020. 5, 6
[16] Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár. Focal loss for dense object detection. In ICCV,2017,2
[17] Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays,Pietro Perona, Deva Ramanan, Piotr Dollár, and C Lawrence Zitnick. Microsoft coco: Common objects in context. In ECCV, 2014. 2
[18] Songtao Liu, Di Huang, and Y unhong Wang. Learning spatial fusion for single-shot object detection. arXiv preprintarXiv:1911.09516, 2019. 6
[19] Shu Liu, Lu Qi, Haifang Qin, Jianping Shi, and Jiaya Jia.Path aggregation network for instance segmentation. In CVPR, 2018. 2, 5
[20] Shu Liu, Lu Qi, Haifang Qin, Jianping Shi, and Jiaya Jia.Path aggregation network for instance segmentation. In CVPR, 2018. 2
[21] Ze Liu, Y utong Lin, Y ue Cao, Han Hu, Yixuan Wei,Zheng Zhang, Stephen Lin, and Baining Guo. Swin transformer: Hierarchical vision transformer using shifted windows. arXiv preprint arXiv:21
random翻译03.14030, 2021. 5
[22] Y uchen Ma, Songtao Liu, Zeming Li, and Jian Sun. Iqdet:Instance-wise quality distribution sampling for object detec-tion. In CVPR, 2021. 1, 4
[23] Joseph Redmon, Santosh Divvala, Ross Girshick, and AliFarhadi. Y ou only look once: Unified, real-time object de-tection. In CVPR, 2016. 1 [24] Joseph Redmon and Ali Farhadi. Y olo9000: Better, faster,stronger. In CVPR, 2017. 1, 3
[25] Joseph Redmon and Ali Farhadi. Y olov3: An incrementalimprovement. arXiv preprint arXiv:1804.02767, 2018. 1, 2,3 [26] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun.Faster r-cnn: Towards real-time object detection with region proposal networks. In NeurIPS, 2015. 1
[27] Guanglu Song, Y u Liu, and Xiaogang Wang. Revisiting the sibling head in object detector. In CVPR, 2020. 2
[28] Mingxing Tan, Ruoming Pang, and Quoc V Le. Efficientdet:Scalable and efficient object detection. In CVPR, 2020. 6
[29] Zhi Tian, Chunhua Shen, Hao Chen, and Tong He. Fcos:Fully convolutional one-stage object det
ection. In ICCV,2019.1, 2, 3, 4
[30] Chien-Yao Wang, Alexey Bochkovskiy, and HongY uan Mark Liao. Scaled-yolov4: Scaling cross stage partial network. arXiv preprint arXiv:2011.08036, 2020. 1, 5, 6
[31] Chien-Yao Wang, Hong-Y uan Mark Liao, Y ueh-Hua Wu,Ping-Yang Chen, Jun-Wei Hsieh, and I-Hau Yeh. Cspnet:A new backbone that can enhance learning capability of cnn.In CVPR workshops, 2020. 2, 5 [32] Jianfeng Wang, Lin Song, Zeming Li, Hongbin Sun, JianSun, and Nanning Zheng. End-to-end object detection with fully convolutional network. In CVPR, 2020. 1
[33] Jianfeng Wang, Lin Song, Zeming Li, Hongbin Sun, JianSun, and Nanning Zheng. End-to-end object detection withfully convolutional network. In CVPR, 2021. 4
[34] Y ue Wu, Yinpeng Chen, Lu Y uan, Zicheng Liu, LijuanWang, Hongzhi Li, and Y un Fu. Rethinking classificationand localization for object detection. In CVPR, 2020. 2
[35] Y ue Wu, Yinpeng Chen, Lu Y uan, Zicheng Liu, LijuanWang, Hongzhi Li, and Y un Fu. Rethinking classificationand localization for object detection. In CVPR, 2020. 2
[36] Shifeng Zhang, Cheng Chi, Y ongqiang Yao, Zhen Lei, and Stan Z Li. Bridging the gap between
anchor-based andanchor-free detection via adaptive training sample selection.In CVPR, 2020. 1, 4
[37] Xiaosong Zhang, Fang Wan, Chang Liu, Rongrong Ji, andQixiang Ye. Freeanchor: Learning to match anchors for visual object detection. In NeurIPS, 2019. 1, 4
[38] Zhi Zhang, Tong He, Hang Zhang, Zhongyuan Zhang, Jun-yuan Xie, and Mu Li. Bag of freebies for training object detection neural networks. arXiv preprint arXiv:1902.04103,2019.3, 5
[39] Qiang Zhou, Chaohui Y u, Chunhua Shen, Zhibin Wang,and Hao Li. Object detection made simpler by eliminating heuristic nms. arXiv preprint arXiv:2101.11782, 2021. 1, 4
[40] Xingyi Zhou, Dequan Wang, and Philipp Krähenbühl. Objects as points. arXiv preprint arXiv:1904.07850, 2019. 1,3
[41] Benjin Zhu, Jianfeng Wang, Zhengkai Jiang, Fuhang Zong,Songtao Liu, Zeming Li, and Jian Sun. Autoassign: Differ-entiable label assignment for dense object detection. arXiv preprint arXiv:2007.03496, 2020. 1, 4

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。