YOLOv10: Real-Time End-to-End Object Detection
Abstract
在过去的几年里,由于在计算成本和检测性能之间取得了有效的平衡,YOLOs已经成为实时目标检测领域的主导范式。研究人员已经对yolo的架构设计、优化目标、数据增强策略等进行了探索,并取得了显著进展。然而,对非最大抑制(NMS)的后处理依赖阻碍了yolo的端到端部署,并对推理延迟产生不利影响。此外,YOLOs中各部件的设计缺乏全面彻底的检查,导致计算冗余明显,限制了模型的能力。它提供了次优的效率,以及相当大的性能改进潜力。在这项工作中,我们的目标是从后处理和模型架构两个方面进一步推进YOLOs的性能效率边界。为此,我们首先提出了一种一致的双任务方法,用于无nms训练的YOLOs,它同时带来了具有竞争力的性能和较低的推理延迟。此外,我们还介绍了整体效率-精度驱动的模型设计策略。我们从效率和精度两个角度对YOLOs的各个组成部分进行了全面优化,大大降低了计算开销,增强了性能。我们的努力成果是用于实时端到端目标检测的新一代YOLO系列,称为YOLOv10。大量的实验表明,YOLOv10在各种模型尺度上都达到了最先进的性能和效率。例如,我们的YOLOv10-S在COCO上类似的AP下比RT-DETR-R18快1.8倍,同时参数数量和FLOPs减少2.8倍。与YOLOv9-C相比,在相同性能下,YOLOv10-B的延迟减少了46%,参数减少了25%。代码:https://github.com/THU-MIG/yolov10。
1. Introduction
实时目标检测一直是计算机视觉领域的研究热点,其目的是在低延迟下准确预测图像中目标的类别和位置。它被广泛应用于各种实际应用,包括自动驾驶[3]、机器人导航[11]、目标跟踪[66]等。近年来,研究人员致力于设计基于cnn的目标检测器来实现实时检测[18,22,43,44,45,51,12]。其中,yolo因其在性能和效率之间的平衡而越来越受欢迎[2,19,27,19,20,59,54,64,7,65,16,27]。yolo的检测流程由模型前处理和NMS后处理两部分组成。然而,这两种方法都有不足之处,导致精度-延迟边界不够理想。
具体来说,yolo在训练过程中通常采用一对多的标签分配策略,即一个真值对象对应多个正样本。尽管这种方法产生了优越的性能,但需要NMS在推理过程中选择最佳的正预测。这降低了推理速度,使性能对NMS的超参数敏感,从而阻碍了YOLOs实现端到端最优部署[71]。解决这个问题的一个方法是采用最近引入的端到端DETR架构[4,74,67,28,34,40,61]。例如,RT-DETR[71]提出了一种高效的混合编码器和最小不确定性查询选择,将detr推进到实时应用领域。然而,部署der的固有复杂性阻碍了其在准确性和速度之间实现最佳平衡的能力。另一条路线是探索基于cnn的检测器的端到端检测,该检测器通常利用一对一分配策略来抑制冗余预测[5,49,60,73,16]。然而,它们通常会引入额外的推理开销或实现次优性能。
此外,模型架构设计仍然是YOLOs面临的一个基本挑战,它对精度和速度有重要影响[45,16,65,7]。为了实现更高效的模型架构,研究人员探索了不同的设计策略。为增强主干特征提取能力,提出了多种主计算单元,包括DarkNet[43,44,45]、CSPNet[2]、EfficientRep[27]和ELAN[56,58]等。对于颈部,研究了PAN[35]、BiC[27]、GD[54]、RepGFPN[65]等方法来增强多尺度特征融合。此外,还研究了模型缩放策略[56,55]和重新参数化[10,27]技术。虽然这些努力取得了显著的进展,但从效率和精度的角度对YOLOs中各种组件的全面检查仍然缺乏。因此,yolo内部仍然存在相当大的计算冗余,导致参数利用率低,效率次优。此外,由此产生的受约束的模型能力也导致了较差的性能,为精度的提高留下了充足的空间。
在这项工作中,我们的目标是解决这些问题,并进一步推进YOLOs的精度-速度边界。我们的目标是整个检测管道的后处理和模型架构。为此,我们首先提出了一种具有双标签分配和一致匹配度量的无nms yolo的一致双分配策略,解决了后处理中的冗余预测问题。它使模型在训练过程中得到丰富和谐的监督,而在推理过程中不需要NMS,从而获得高效率的竞争性能。其次,通过对YOLOs中各部件的全面检测,提出了整体效率-精度驱动的模型体系结构设计策略;为了提高效率,我们提出了轻量化分类头、空间信道解耦下采样和秩引导块设计,以减少显式计算冗余,实现更高效的架构。为了提高准确性,我们探索了大核卷积,并提出了有效的部分自关注模块来增强模型能力,利用低成本下的性能改进潜力。
基于这些方法,我们成功地实现了一系列具有不同模型尺度的实时端到端检测器,即YOLOv10- n / S / M / B / L / x。在目标检测的标准基准(即COCO)上进行的大量实验[33]表明,我们的YOLOv10在各种模型尺度的计算精度权衡方面可以显著优于以前最先进的模型。如图1所示,在相同性能下,我们的YOLOv10-S / X分别比RT-DETRR18 / R101快1.8倍/ 1.3倍。与YOLOv9-C相比,在相同的性能下,YOLOv10-B的延迟降低了46%。此外,YOLOv10具有高效的参数利用率。我们的YOLOv10-L / X比YOLOv8-L / X分别高出0.3 AP和0.5 AP,参数数量分别减少1.8倍和2.3倍,YOLOV10-M实现了和YOLOV9-M/YOLO-MS接近的AP,但是分别减少了23%和31%的参数。我们希望我们的研究能够促进该领域的进一步研究。
2. Related Work
实时目标探测器。实时目标检测的目的是在低延迟的情况下对目标进行分类和定位,这对现实世界的应用至关重要。在过去的几年里,大量的努力已经指向开发高效的探测器[18,51,43,32,72,69,30,29,39]。其中,YOLO系列[43、44、45、2、19、27、56、20、59]最为主流。YOLOv1、YOLOv2和YOLOv3识别了典型的检测架构,由脊柱、颈部和头部三部分组成[43,44,45]。YOLOv4[2]和YOLOv5[19]引入了CSPNet[57]设计来取代DarkNet[42],并结合了数据增强策略、增强的PAN和更多样化的模型尺度等。YOLOv6[27]分别为颈部和脊柱提供了BiC和SimCSPSPPF,并采用锚定辅助训练和自蒸馏策略。YOLOv7[56]引入了E-ELAN的富梯度流路径,并探索了几种可训练的免费袋方法。YOLOv8[20]提出了C2f构建块,用于有效的特征提取和融合。Gold-YOLO[54]提供了先进的GD机制来增强多尺度特征融合能力。YOLOv9[59]提出了GELAN来改进体系结构和PGI来增强训练过程。
端到端对象检测器。端到端目标检测已经成为传统管道的范式转变,提供了简化的架构[48]。DETR[4]引入变压器架构,采用匈牙利损耗实现一对一匹配预测,从而消除了手工制作元器件和后处理。此后,人们提出了各种各样的DETR变体来提高其性能和效率[40,61,50,28,34]。deformable - detr[74]利用多尺度可变形注意力模块加快收敛速度。DINO[67]将对比去噪、混合查询选择和前向两次方案集成到der中。
RT-DETR[71]进一步设计了高效的混合编码器,并提出了最小不确定性查询选择,以提高准确性和延迟。另一条实现端到端目标检测的线路是基于CNN检测器。可学习NMS[23]和关系网络[25]提供了另一种网络来消除检测器的重复预测。OneNet[49]和DeFCN[60]提出了一对一匹配策略,以实现完全卷积网络的端到端目标检测。FCOSpss[73]引入了一个正样本选择器来选择最优样本进行预测。
3. Methodology
3.1 Consistent Dual Assignments for NMS-free Training
在训练过程中,YOLOs[20,59,27,64]通常利用TAL[14]为每个实例分配多个阳性样本。采用一对多分配,可以产生丰富的监控信号,便于优化,实现更优的性能。但是,它需要yolo依赖NMS的后处理,导致部署的推理效率不够理想。虽然以前的研究[49,60,73,5]探索一对一匹配来抑制冗余预测,但它们通常会引入额外的推理开销或产生次优性能。在这项工作中,我们提出了一种具有双标签分配和一致匹配度量的无nms的yolo训练策略,实现了高效率和竞争性的性能。
Dual label assignments. 与一对多分配不同,一对一匹配只对每个基本事实分配一个预测,避免了NMS的后处理。然而,它导致弱监督,导致次优精度和收敛速度[75]。幸运的是,这个缺陷可以通过一对多赋值来弥补[5]。为了实现这一目标,我们为yolo引入了双标签分配,以结合两种策略的优点。具体来说,如图2.(a)所示,我们为yolo加入了另一个一对一的头部。它保留了与原始一对多分支相同的结构和优化目标,但利用一对一匹配来获得标签分配。在训练过程中,两个头部与模型共同优化,使backbone和neck享受到一对多分配所提供的丰富监督。在推理过程中,我们抛弃了一对多头像,利用一对一头像进行预测。这使yolo能够进行端到端部署,而不会产生任何额外的推理成本。此外,在一对一匹配中,我们采用了top 1的选择,达到了与匈牙利匹配[4]相同的效果,并且减少了额外的训练时间。
一致的匹配度量。在分配过程中,一对一和一对多方法都利用一个度量来定量地评估预测和实例之间的一致性水平。为了实现两个分支的预测感知匹配,我们采用统一的匹配度量,即:
式中p为分类分数,和b分别为预测和实例的边界框。S表示预测锚点是否在实例内的空间先验[20,59,27,64]。α和β是平衡语义预测任务和位置回归任务影响的两个重要超参数。我们将一对多和一对一的度量分别表示为。这些指标影响两个head的标签分配和监督信息。
在双标签分配中,一对多分支比一对一分支提供更丰富的监控信号。直观地说,如果我们能够将一对一头像的监督与一对多头像的监督协调起来,我们就可以朝着一对多头像优化的方向去优化一对一头像。因此,一对一头部可以在推理过程中提供更好的样本质量,从而获得更好的性能。为此,我们首先分析了两个头部之间的监管差距。由于训练过程中的随机性,我们在开始时用相同的值初始化两个头像并产生相同的预测,即一对一头像和一对多头像为每个预测实例对生成相同的p和IoU。我们注意到两个分支的回归目标不冲突,因为匹配的预测共享相同的目标,而不匹配的预测被忽略。因此,监管缺口在于分类目标的不同。给定一个例子,我们用u *表示其最大IoU,最大的一对多和一对一匹配分数表示为,分别地,假设一对多分支产生正样本Ω,一对一分支选择具有度量的第i个预测,然后我们可以导出分类目标对于并且对于任务对齐损失如[20,59,27,64,14]。因此,两个分支之间的监督差距可以由不同分类目标的1-Wasserstein距离[41]推导出来,即:
我们可以观察到,差距随着的增加而减小,i的增加,即i在Ω中的排名更高。当时达到最小值,即i为Ω中最佳正样本,如图2 (a)所示。为了实现这一点,我们提出了一致匹配度量,即,这意味着,因此,一对多头的最佳正样本也是一对一头的最佳正样本。因此,两个头部可以持续和谐地优化。为了简单起见,我们默认取r=1,也就是。为了验证改进后的监督一致性,我们在训练后的一对多结果的前1 / 5 / 10内计算一对一匹配对的数量。如图2 (b)所示,在一致的匹配度量下,对准得到了改善。要更全面地了解数学证明,请参阅附录。
3.2 Holistic Efficiency-Accuracy Driven Model Design
除了后处理之外,yolo的模型架构也对效率和精度的权衡提出了很大的挑战[45,7,27]。尽管之前的作品探索了各种设计策略,
对YOLOs各部件的全面检查仍显不足。因此,模型体系结构表现出不可忽略的计算冗余和约束能力,这阻碍了其实现高效率和高性能的潜力。在这里,我们的目标是从效率和准确性的角度全面执行YOLOs的模型设计。
效率驱动的模型设计。YOLO的组件包括Stem、下采样层、具有基本构建块的stage和head。该系统的计算成本很少,因此我们对其他三个部分进行了效率驱动的模型设计。
(1)分级头轻巧。在yolo中,分类和回归头通常共享相同的架构。然而,它们在计算开销方面表现出明显的差异。例如,在YOLOv8-S中,分类头(5.95G/1.51M)的FLOPs和参数数分别是回归头(2.34G/0.64M)的2.5倍和2.4倍。然而,在分析分类误差和回归误差的影响后(见表6),我们发现回归头对YOLOs的性能具有更重要的意义。因此,我们可以减少分类头的开销,而不必担心对性能造成很大的影响。因此,我们简单地对分类头采用轻量级架构,它由两个深度可分离的卷积组成[24,8],核大小为3×3,然后是一个1×1卷积。
(2)空间信道解耦下采样。yolo通常利用步长为2的规则3×3标准卷积,同时实现空间下采样(从H × W到H/2 × W/2)和通道变换(从C到2C)。这引入了不可忽略的计算成本和参数数O(18c2)。相反,我们建议将空间缩减和信道增加操作解耦,从而实现更有效的下采样。具体来说,我们首先利用点向卷积来调制信道维度,然后利用深度卷积来执行空间下采样。这将计算成本降低到(2HW C2 + 9 2HW C),参数计数降低到。同时,它最大限度地提高了下采样期间的信息保留,从而在降低延迟的情况下获得具有竞争力的性能。
(3)等级导向块设计。yolo通常在所有阶段使用相同的基本构建块[27,59],例如,YOLOv8中的瓶颈块[20]。为了彻底检验yolo的这种同质设计,我们利用内在秩[31,15]来分析每个阶段的冗余度2。具体来说,我们计算每个阶段最后一个基本块的最后一个卷积的数值秩,计算大于阈值的奇异值的个数。图3 (a)为YOLOv8的结果,表明深阶段和大模型容易表现出更多的冗余。这一观察结果表明,简单地在所有阶段采用相同的区块设计并不能达到最佳的产能效率平衡。为了解决这个问题,我们提出了一个等级引导的块设计方案,旨在减少使用紧凑的架构设计显示冗余的阶段的复杂性。首先提出了一种紧凑的倒块(CIB)结构,该结构采用低成本的深度卷积进行空间混合,采用高成本的点卷积进行信道混合,如图3 (b)所示。它可以作为高效的基本构建块,例如嵌入ELAN结构中58,20。在此基础上,我们提出了一种排序引导的区块分配策略,以在保持竞争能力的同时达到最佳效率。具体来说,给定一个模型,我们根据其内在的升序排序其所有阶段。我们进一步检查用CIB替换先导阶段基本块的性能变化,如果与给定模型相比没有性能下降,我们继续更换下一阶段,否则停止该过程。因此,我们可以实现跨阶段和模型尺度的自适应紧凑块设计,在不影响性能的情况下实现更高的效率。由于篇幅限制,我们在附录中提供了算法的细节。
精度驱动的模型设计。我们进一步探索了精度驱动设计的大核卷积和自关注,旨在以最小的成本提高性能。
(1)大核卷积。采用大核深度卷积是扩大接受野和增强模型能力的有效方法[9,38,37]。然而,在所有阶段简单地利用它们可能会导致用于检测小物体的浅层特征受到污染,同时在高分辨率阶段也会带来显著的I/O开销和延迟[7]。因此,我们建议在深度阶段利用CIB中的大核深度卷积。具体来说,我们将CIB中第二个3×3深度卷积的核大小增加到7×7,如下[37]。此外,我们采用结构重参数化技术[10,9,53]引入另一个3×3深度卷积分支来缓解优化问题,而不需要推理开销。此外,随着模型大小的增加,其接受域自然会扩大,使用大核卷积的好处会减少。因此,我们只对小模型尺度采用大核卷积。
(2)部分自我注意(PSA)。自注意[52]由于其卓越的全局建模能力而被广泛应用于各种视觉任务中[36,13,70]。然而,它表现出很高的计算复杂度和内存占用。为了解决这个问题,鉴于普遍存在的注意头冗余[63],我们提出了一种高效的部分自我注意(PSA)模块设计,如图3 (c)所示。具体来说,我们在1×1卷积后将跨通道的特征均匀地划分为两部分。我们只将其中一部分输入到由多头自注意模块(MHSA)和前馈网络(FFN)组成的NPSA模块中。然后通过1×1卷积将两个部分连接并融合。
此外,我们遵循[21]将查询和键的维度分配为MHSA中值的一半,并将LayerNorm[1]替换为BatchNorm[26]以进行快速推理。此外,PSA仅放置在分辨率最低的阶段4之后,避免了自关注的二次计算复杂性带来的过多开销。这样可以将全局表示学习能力融入到yolo中,计算成本较低,很好地增强了模型的能力,从而提高了性能。
4.Experiments
4.1 Implementation Details
我们选择YOLOv8[20]作为我们的基线模型,因为它具有值得称道的延迟-精度平衡以及在各种模型尺寸下的可用性。我们采用一致的双重任务进行无nms训练,并在此基础上进行整体效率-精度驱动的模型设计,从而带来了YOLOv10模型。YOLOv10具有与YOLOv8相同的变种,即N / S / M / L / x。此外,我们通过简单地增加YOLOv10-M的宽度比例因子,推导出一个新的变种YOLOv10- b。我们在相同的从头开始训练设置[20,59,56]下,在COCO[33]上验证了所提出的检测器。
此外,在T4 GPU上使用TensorRT FP16测试了所有模型的延迟,如下[71]。
4.2 Comparison with state-of-the-arts
如表1所示,我们的YOLOv10在各种模型尺度上实现了最先进的性能和端到端延迟。我们首先将YOLOv10与我们的基线模型(即YOLOv8)进行比较。
在N / S / M / L / X五种变体上,我们的YOLOv10实现了1.2% / 1.4% / 0.5% / 0.3% / 0.5% AP改进,参数减少28% / 36% / 41% / 44% / 57%,计算减少23% / 24% / 25% / 27% / 38%,延迟降低70% / 65% / 50% / 41% / 37%。与其他YOLOv10相比,YOLOv10在精度和计算成本之间也表现出更好的权衡。具体来说,对于轻量级和小型型号,YOLOv10-N / S比YOLOv6-3.0-N / S高出1.5 AP和2.0 AP,参数减少51% / 61%,计算量减少41% / 52%。对于中等型号,与YOLOv9-C / yolov - ms相比,在相同或更好的性能下,YOLOv10-B / M的延迟分别降低了46% / 62%。对于大型模型,与Gold-YOLO-L相比,我们的YOLOv10- l的参数减少了68%,延迟降低了32%,AP显著提高了1.4%。此外,与RT-DETR相比,YOLOv10的性能和延迟也得到了显著改善。值得注意的是,在相同性能下,YOLOv10-S / X的推理速度比rt - der - r18 / R101分别快1.8倍和1.3倍。这些结果很好地证明了YOLOv10作为实时端到端检测器的优越性。我们还使用原始的一对多训练方法将YOLOv10与其他YOLOv10进行了比较。在这种情况下,我们考虑模型转发过程(Latencyf)的性能和延迟,如下[56,20,54]。如表1所示,YOLOv10在不同的模型尺度上也表现出了最先进的性能和效率,表明了我们建筑设计的有效性。
4.3 Model Analyses
消融实验。表2给出了基于YOLOv10-S和YOLOv10-M的烧蚀结果。可以看到,我们的无nms训练和一致的双任务显著降低了YOLOv10-S的端到端延迟4.63ms,同时保持了44.3% AP的竞争性能。此外,我们的效率驱动模型设计导致减少11.8 M参数和20.8 GFlOPs,其中YOLOv10-M的延迟减少了0.65ms,很好地显示了它的有效性。此外,我们的精度驱动模型设计在YOLOv10-S和YOLOv10-M上分别实现了1.8 AP和0.7 AP的显著改进,延迟开销分别仅为0.18ms和0.17ms,充分证明了其优越性。
无nms训练分析
•双标签分配。我们提出了对无nms的yolo进行双标签分配,既可以在训练过程中对一对多(o2m)分支进行丰富的监督,又可以在推理过程中对一对一(o2o)分支进行高效的监督。我们基于YOLOv8-S(即表2中的#1)验证了它的好处。具体来说,我们分别引入了仅o2m分支和仅o2o分支的培训基线。如表3所示,我们的双标签分配实现了最佳的ap -延迟权衡。
•一致的匹配指标。引入一致性匹配度量,使一对一头像与一对多头像更加和谐。我们基于YOLOv8-S,即表2中的#1,在不同的αo2o和βo2o下验证其效益。如表4所示,所提出的一致性匹配指标可以达到最优的性能,其中一对多head中αo2m=0.5, βo2m=6.0[20]。这种改进可以归因于监管差距的减少(公式(2)),这在两个分支之间提供了改进的监管一致性。此外,所提出的一致匹配度量消除了详尽的超参数调优的需要,这在实际场景中很有吸引力。
分析效率驱动的模型设计。我们通过实验,逐步将基于YOLOv10-S/M的效率驱动设计元素纳入其中。我们的基线是没有效率-精度驱动模型设计的YOLOv10-S/M模型,即表2中的#2/#6。如表5所示,每个设计组件,包括轻量级分类头、空间通道解耦下采样和秩导块设计,都有助于减少参数计数、FLOPs和延迟。重要的是,这些改进是在保持竞争性能的同时实现的。
- 轻量化分级头。我们基于表5中#1和#2的YOLOv10-S,如[6],分析预测的类别和定位误差对性能的影响。
具体来说,我们通过一对一的分配将预测与实例匹配。然后,我们用实例标签代替预测的类别得分,得到,没有分类错误。类似地,我们用实例的位置替换预测的位置,得到,没有回归误差。如表6所示,远高于,说明消除回归误差后得到的改善更大。因此,性能瓶颈更多地在于回归任务。因此,采用轻量化分级头可以在不影响性能的情况下提高效率。
-
空间信道解耦下采样。为了提高效率,我们解耦了下采样操作,其中首先通过点向卷积(PW)增加通道尺寸,然后通过深度卷积(DW)降低分辨率以获得最大的信息保留。我们将其与基于表5中#3的YOLOv10-S的DW空间缩减后PW信道调制的基线方法进行比较。如表7所示,我们的降采样策略通过降低降采样过程中的信息损失,实现了0.7%的AP改进。
-
紧凑倒块(CIB)。我们介绍CIB作为紧凑的基本构建块。我们根据表5中#4的YOLOv10-S验证其有效性。具体来说,我们引入了倒立残差块46作为基线,实现了43.7%的次优AP,如表8所示。然后我们在它之后附加一个3×3深度卷积(DW),表示为“IRB-DW”,这带来了0.5%AP提高,与“IRB-DW”相比,我们的CIB以最小的开销增加了另一个DW,从而进一步提高了0.3%的AP,表明了它的优越性。
-
排名导向块设计。引入秩导块设计,自适应集成紧凑块设计,提高模型效率。我们根据表5中#3的YOLOv10-S验证了它的好处。按内禀等级升序排列的阶段为阶段8-4-7-3-5-1-6-2,如图3 (a)所示。如表9所示,当逐步用高效CIB替换每个阶段的瓶颈块时,我们观察到从第7阶段开始性能下降。在固有阶数较低、冗余较多的Stage 8和Stage 4中,我们可以在不影响性能的情况下采用高效的块设计。这些结果表明,等级导向块设计可以作为提高模型效率的有效策略。
精度驱动模型设计分析。介绍了基于YOLOv10-S/M的精度驱动设计要素逐步集成的结果。我们的基准是纳入效率驱动设计后的YOLOv10-S/M模型,即表2中的#3/#7。如表10所示,采用大内核卷积和PSA模块,在最小延迟增加0.03ms和0.15ms的情况下,YOLOv10-S的性能分别提高了0.4% AP和1.4% AP。注意,YOLOv10-M没有使用大核卷积(见表12)。
-
大核卷积。我们首先基于表10中#2的YOLOv10-S研究不同内核大小的影响。如表11所示,性能随着内核大小的增加而提高,并在内核大小7×7附近停滞不前,这说明了大感知场的好处。此外,在训练过程中去除重参数化分支可以达到0.1%的AP退化,显示了其优化的有效性。此外,我们还考察了基于YOLOv10-N / S / m的跨模型尺度的大核卷积的好处。如表12所示,由于其固有的广泛的接受域,对于大型模型,即YOLOv10-M,它没有带来任何改进。因此,我们只对小模型采用大核卷积,即YOLOv10-N / S。
-
部分自我关注(PSA)。我们引入PSA,在最小的成本下结合全局建模能力来提高性能。我们首先根据表10中#3的YOLOv10S验证其有效性。具体来说,我们引入变压器块,即MHSA,然后是FFN,作为基线,表示为“Trans”。如表13所示,与PSA相比,PSA提高了0.3%的AP,降低了0.05ms的延迟。性能的提高可能是由于通过减少注意头的冗余,减轻了自我注意中的优化问题[62,9]。此外,我们还研究了不同NPSA的影响。如表13所示,将NPSA增加到2可以获得0.2%的AP改进,但延迟开销为0.1ms。因此,我们将NPSA默认设置为1,以便在保持高效率的同时增强模型能力。
5. Conclusion
在本文中,我们针对整个yolo检测管道的后处理和模型架构进行了研究。对于后处理,我们提出了一致的双赋值方法进行NMSfree训练,实现了高效的端到端检测。在模型架构方面,我们引入了整体效率-精度驱动的模型设计策略,改善了性能-效率的权衡。这些带来了我们的YOLOv10,一种新的实时端到端目标探测器。大量实验表明,与其他先进探测器相比,YOLOv10的性能和延迟达到了最先进的水平,充分证明了它的优越性。