社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

【深度学习】YOLOv10都来了!清华提出端到端YOLOv10:YOLO 无 NMS 训练的一致双重分配

深度学习基础与进阶 • 6 月前 • 365 次点击  
作者丨AI视界引擎     来源丨AI视界引擎    编辑丨极市平台

导读

 

与YOLOv9-C相比,YOLOv10-B在相同性能下延迟减少了46%,参数减少了25%。 


论文地址:https://arxiv.org/pdf/2405.14458

项目地址:https://github.com/THU-MIG/yolov10

在过去几年中,YOLO系列模型已成为实时目标检测领域的主导范式,这得益于它们在计算成本和检测性能之间的有效平衡。研究行人探索了YOLOs的架构设计、优化目标、数据增强策略等,取得了显著的进展。然而,对非最大值抑制(NMS)的后处理依赖阻碍了YOLOs的端到端部署,并不利影响推理延迟。此外,YOLOs中各种组件的设计缺乏全面彻底的检查,导致明显的计算冗余并限制了模型的能力。这导致了次优的效率,同时存在相当大的性能提升潜力。


在这项工作中,作者从后处理和模型架构两方面进一步推进了YOLOs的性能效率边界。为此,作者首先提出了无需NMS训练的YOLOs的一致性双重分配,这同时带来了有竞争力的性能和低推理延迟。此外,作者引入了针对YOLOs的整体效率精度驱动模型设计策略。作者从效率和精度角度全面优化了YOLOs的各种组件,大大减少了计算开销并增强了能力。作者努力的成果是新一代的实时端到端目标检测YOLO系列模型,命名为YOLOv10。


广泛的实验表明,YOLOv10在各种模型规模上均实现了最先进的性能和效率。例如,YOLOv10-S在COCO上的类似AP下比RT-DETR-R18快1.8倍,同时享受2.8倍更少的参数和FLOPs。与YOLOv9-C相比,YOLOv10-B在相同性能下延迟减少了46%,参数减少了25%。代码:https://github.com/THU-MIG/yolov10。

1. 引言

实时目标检测一直是计算机视觉研究领域的一个重点,旨在在低延迟下准确预测图像中物体的类别和位置。它被广泛应用于各种实际应用中,包括自动驾驶,机器人导航,物体跟踪等。近年来,研究行人一直致力于设计基于CNN的目标检测器以实现实时检测。其中,YOLOs因其性能和效率之间的巧妙平衡而越来越受欢迎。YOLOs的检测流程包括两部分:模型前向过程和NMS后处理。然而,这两者仍存在不足,导致次优的准确度-延迟边界。

具体来说,YOLO通常在训练过程中采用一对多的标签分配策略,其中一个 GT 物体对应于多个阳性样本。尽管这种方法取得了优越的性能,但它需要在推理过程中使用NMS来选择最佳的阳性预测。这降低了推理速度,并使性能对NMS的超参数敏感,从而阻碍了YOLO实现最优的端到端部署。解决这个问题的一条途径是采用最近引入的端到端DETR架构。例如,RT-DETR提出了一种有效的混合编码器和非确定性最小 Query 选择,将DETR推向了实时应用领域。然而,部署DETR的固有复杂性阻碍了它在准确性和速度之间达到最优平衡的能力。另一条途径是探索基于CNN的检测器的端到端检测,这通常利用一对一的分配策略来抑制冗余预测。然而,它们通常引入额外的推理开销或达到次优性能。

此外,模型架构设计对于YOLO来说仍然是一个基本挑战,它在准确性和速度上表现出重要影响。为了实现更高效和有效的模型架构,研究行人探索了不同的设计策略。为加强特征提取能力,提出了各种主要计算单元作为主干,包括DarkNet,CSPNet,EfficientRep和ELAN等。对于特征融合部分,研究了PAN,BiC,GD和RepGFPN等,以增强多尺度特征融合。此外,还研究了模型缩放策略和重参化技术。尽管这些努力取得了显著的进展,但从效率和准确性的角度来看,对YOLO中各个组件的全面检查仍然缺乏。因此,YOLO中仍然存在相当大的计算冗余,导致参数使用效率低下和次优效率。此外,由此产生的受限模型能力也导致了性能不佳,为准确性的提升留下了很大的空间。

在这项工作中,作者旨在解决这些问题,并进一步推进YOLO在准确性与速度边界上的发展。作者针对检测流程中的后处理和模型架构。为此,作者首先通过提出一种一致的二元分配策略来解决后处理中的冗余预测问题,该策略用于无需NMS的YOLO,具有双重标签分配和一致匹配度量。它允许模型在训练期间享受丰富且和谐的监督,同时在推理过程中省去NMS,以实现高效竞争力。其次,作者提出了一个整体效率-准确性驱动的模型设计策略,通过对YOLO中各个组件的全面检查来实现模型架构。为了提高效率,作者提出了轻量级分类头、空间通道解耦降采样和排名引导的块设计,以减少表现出的计算冗余并实现更高效的架构。对于准确性,作者探索了大型核卷积,并提出了有效的部分自注意力模块来增强模型能力,在低成本下挖掘性能提升的潜力。

基于这些方法,作者成功实现了一系列不同模型规模的实时端到端检测器的新家族,即YOLOv10-N / S / M / B / L / X。在标准的目标检测基准测试上的大量实验,例如COCO,证明了YOLOv10可以在各种模型规模上显著超越之前的最佳模型,在计算精度权衡方面表现出色。

如图1所示,在相似性能下,YOLOv10-S / X分别比RT-DETR-R18 / 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.  Methodology

2.1 Consistent Dual Assignments for NMS-free Training

在训练过程中,YOLO系列方法通常利用TAL为每个实例分配多个正样本。采用一对一多分配产生了丰富的监督信号,促进了优化并实现了卓越的性能。然而,这需要YOLO依赖于NMS后处理,这导致了部署时次优的推理效率。尽管之前的工作探索了一对一匹配以抑制冗余预测,但它们通常引入了额外的推理开销或导致次优性能。在本工作中,作者提出了一种无需NMS的YOLO训练策略,采用双重标签分配和一致的匹配度量,实现了高效率和有竞争力的性能。

双重标签分配

与一对一多分配不同,一对一匹配只为每个地面真相分配一个预测,避免了NMS后处理。然而,这导致了较弱的监督,导致次优的准确性和收敛速度。幸运的是,这种缺陷可以通过一对一多分配来弥补。为此,作者为YOLO引入了双重标签分配,以结合两种策略的优点。

具体来说,如图2.(a)所示,作者在YOLO中增加了一个一对一的 Head 。它与原始一对一多分支保持相同的结构和采用相同的优化目标,但利用一对一匹配来获得标签分配。在训练过程中,两个 Head 与模型联合优化,使得主干和 Neck 能够享受到一对一多分配提供的丰富监督。

在推理过程中,作者丢弃一对一多 Head ,并利用一对一 Head 进行预测。这使得YOLO能够端到端部署,而不会产生任何额外的推理成本。此外,在一对一匹配中,作者采用顶部选择,其性能与匈牙利匹配[4]相同,但额外的训练时间更少。

一致的匹配度量

在分配过程中,一对一和多对多方法都采用一种度量来定量评估预测与实例之间的一致性水平。为了实现两个分支的预测感知匹配,作者采用了一个统一的匹配度量,即:

其中 是分类得分, 分别表示预测和实例的边界框。 表示空间先验, 指示预测的 Anchor 点是否位于实例内。 是两个重要的超参数, 它们平衡语义预测任务和位置回归任务的影响。作者将一对多和一对一的度量分别表示为 。这些度量影响两个 Head 的标签分配和监督信息。

在双重标签分配中,一对多分支比一对一分支提供了更丰富的监督信号。直观地说,如果作者能将一对一 Head 的监督与一对多 Head 的监督协调起来,作者就可以优化一对一 Head 向一对多 Head 的优化方向。因此,一对一 Head 可以在推理过程中提供改进的样本质量,从而带来更好的性能。

为此, 作者首先分析了两个 Head 之间的监督差距。由于训练过程中的随机性, 作者从一开始就用相同的值初始化两个 Head, 并产生相同的预测, 即, 一对一 Head 和一对多 Head 为每个预测-实例对生成相同的 。作者注意到, 两个分支的回归目标并不冲突, 因为匹配的预测共享相同的目标,而不匹配的预测被忽略。因此,监督差距在于不同的分类目标。

给定一个实例, 作者将其与预测的最大 表示为 , 最大的一对多和一对一匹配分数分别为 。假设一对多分支产生了正样本 , 而一对一分支选择了使用度量 的第 个预测, 那么作者可以推导出一对多分支的分类目标 对于 和一对一任务的对齐损失 。因此, 可以通过不同分类目标的1Wasserstein距离来推导两个分支之间的监督差距, 即,

作者可以观察到, 随着 的增加, 差距在缩小, 即 中的排名更高。当 时, 差距达到最小, 即 中最佳的正样本, 如图2(a)所示。为了实现这一点, 作者提出了保持一致的匹配度量, 即 , 这意味着

因此, 对于一对多头来说最佳的阳性样本对于一对一头来说也是最佳的。因此,两个头可以一致和谐地优化。为了简单起见, 作者默认取 , 即 。为了验证改进的监督对齐, 作者在训练后统计了一对多结果前1/5/10中一对一匹配对的数量。如图2(b)所示, 在一致的匹配度量下, 对齐得到了改善。为了更全面地理解数学证明, 请参考附录。

2.2. Holistic Efficiency-Accuracy Driven Model Design

除了后处理之外,YOLOs的模型架构也对效率-准确度权衡提出了重大挑战[45; 7; 27]。尽管以前的工作探索了各种设计策略,但对YOLOs中各种组件的全面检查仍然缺乏。因此,模型架构展现出不可忽视的计算冗余和受限的能力,这阻碍了其实现高效率和性能的潜力。在这里,作者从效率和准确度两个方面全面进行YOLOs的模型设计。

以效率为导向的模型设计

YOLO中的组件包括Stem、下采样层、带有基本构建块的阶段和 Head 。Stem产生的计算成本很少,因此作者仅对其他三个部分进行以效率为导向的模型设计。

  1. 轻量级分类 Head . 在YOLOs中,分类 Head 和回归 Head 通常共享相同的架构。然而,它们在计算开销上表现出显著的差异。例如,在YOLOv8-S中,分类 Head 的FLOPs和参数数量(5.95G/1.51M)分别是回归 Head (2.34G/0.64M)的2.5倍和2.4倍。但是,在分析了分类误差和回归误差的影响(见表6)之后,作者发现回归 Head 对YOLOs的性能承担了更多的意义。因此,作者可以减少分类 Head 的开销,而不必担心对性能造成太大伤害。

    因此,作者为分类 Head 采用了简单的轻量级架构,该架构包括两个深度可分离卷积(核大小为3×3),后面跟着一个1×1卷积。

  2. 空间-通道解耦下采样. YOLOs通常使用常规的 标准卷积, 步长为 2 , 同时实现空间下采样(从 和通道转换(从 ) 。这引入了不可忽视的计算成本 和参数数量 。相反, 作者建议将空间缩小和通道增加操作解耦, 实现更高效的下采样。

    具体来说, 作者首先利用点状卷积调节通道维度, 然后使用深度卷积进行空间下采样。这减少了计算成本到 和参数数量到 。同时, 它最大化了下采样期间的信息保留, 以具有竞争力的性能降低延迟。

  3. 秩引导的块设计. YOLO通常为所有阶段采用相同的基本构建块,例如YOLOv8中的瓶颈块。为了彻底检查YOLO的这种同质设计,作者利用内在秩[31, 15]来分析每个阶段的冗余性。具体来说,作者计算每个阶段最后一个基本块中最后一个卷积的数值秩,这计算的是超过阈值的奇异值数量。图3(a)展示了YOLOv8的结果,表明深层阶段和大模型容易出现更多冗余。这个观察提示,为所有阶段简单地应用相同块设计并不是最佳容量效率权衡。

    为了解决这个问题,作者提出了一种秩引导的块设计方案,旨在通过紧凑型架构设计减少被显示为冗余的阶段的复杂性。作者首先提出了一个紧凑型倒置块(CIB)结构,它采用廉价的深度卷积进行空间混合和高效的一维卷积进行通道混合,如图3(b)所示。它可以作为高效的基本构建块,例如嵌入ELAN结构[58; 20](图3(b))。然后,作者提倡一种秩引导的块分配策略,在保持竞争力的同时实现最佳效率。

    具体来说,对于给定的模型,作者根据它们的内在秩将所有阶段升序排序。作者进一步检查用CIB替换领先阶段的基本块时性能的变化。如果没有与给定模型相比的性能退化,作者就继续替换下一个阶段,否则停止该过程。因此,作者可以在不同阶段和模型规模上实现自适应紧凑块设计,提高效率而不损害性能。由于篇幅限制,作者在附录中提供算法的细节。

准确度驱动的模型设计。作者进一步探索了大核卷积和自注意力用于准确度驱动的模型设计,旨在以最小的成本提升性能。

  1. 大核卷积. 采用大核深度卷积是扩大感受野和增强模型能力的一种有效方法。然而,在所有阶段简单地利用它们可能会在用于检测小物体的浅层特征中引入污染,同时也可能在高分辨率阶段引入显著的I/O开销和延迟。因此,作者提出在深层阶段的CIB中使用大核深度卷积。具体来说, 作者将 中的第二个 深度卷积的核大小增加到 。此外, 作者采用结构重参化技术带来另一个 深度卷积分支, 以减轻优化问题, 而无需推理开销。此外, 随着模型规模的增加, 其感受野自然扩大, 使用大核卷积的好处减弱。因此, 作者只对小型模型规模采用大核卷积。

  2. **部分自注意力(PSA)**。自注意力因其卓越的全局建模能力而被广泛应用于各种视觉任务中。然而,它表现出高计算复杂度和内存占用。为此,考虑到普遍存在的注意力头冗余,作者提出了一个高效的 partial self-attention (PSA) 模块设计,如图3(c)所示。

    具体来说,作者在11卷积后均匀地将特征在通道上划分为两部分。作者只将一部分输入到由多头自注意力模块(MHSA)和前馈网络(FFN)组成的块中。然后,两部分通过卷积进行拼接和融合。此外,作者遵循[21]将 Query 和键的维度设置为值维度的一半,并在MHSA中使用BatchNorm代替LayerNorm以便快速推理。而且,PSA只放置在具有最低分辨率的Stage 4之后,避免了自注意力二次计算复杂度过大的开销。通过这种方式,作者可以将全局表征学习能力以低计算成本融入到YOLOs中,这大大增强了模型的性能,并带来了性能的改进。

3. Experiments

3.1. Implementation Details

作者选择YOLOv8作为 Baseline 模型,因为它在延迟和准确度之间取得了令人称赞的平衡,并且有多种模型尺寸可供选择。作者采用了持续的二元分配以实现无需NMS的训练,并基于此进行了整体效率与准确度驱动的模型设计,从而推出了YOLOv10模型。YOLOv10与YOLOv8具有相同的变体,即N/S/M/L/X。

此外,作者通过简单增加YOLOv10-M的宽度扩展因子,导出了一个新变体YOLOv10-B。作者在与[20; 59; 56]相同的从头开始训练的设置下,在COCO数据集上验证了所提出的检测器。此外,所有模型的延迟都在T4 GPU上使用TensorRT FP16进行测试,遵循[71]的方法。

3.2 Comparison with state-of-the-arts

如表1所示,YOLOv10在各种模型规模上均取得了最先进的性能和端到端延迟。作者首先将YOLOv10与作者的 Baseline 模型进行比较,即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%。

与其他YOLO模型相比,YOLOv10在准确性和计算成本之间也显示出优越的权衡。特别是对于轻量和小型模型,YOLOv10-N / S比YOLOv6-3.0-N / S分别高出1.5 AP和2.0AP,参数减少了51% / 61%,计算量分别减少了41% / 52%。对于中型模型,与YOLOv9-C / YOLO-MS相比,YOLOv10-B / M在相同或更好的性能下,延迟分别降低了46% / 62%。

对于大型模型,与Gold-YOLO-L相比,YOLOv10-L具有68%的更少参数和32%的更低延迟,同时AP显著提高了1.4%。此外,与RT-DETR相比,YOLOv10在性能和延迟上均取得了显著提升。值得注意的是,在类似性能下,YOLOv10-S / X的推理速度分别是RT-DETR-R18 / R101的1.8和1.3。这些结果充分证明了YOLOv10作为实时端到端检测器的优越性。

作者还使用原始的一对多训练方法将YOLOv10与其他YOLO模型进行了比较。在这种情况下,作者考虑了模型的向前过程性能和延迟(Latency),遵循[56, 20, 54]。如表1所示,YOLOv10在不同模型规模上也展示了最先进的性能和效率,这表明了作者的架构设计是有效的。

3.3 Model Analyses

消融研究

作者在表2中基于YOLOv10-S和YOLOv10-M展示了消融实验结果。可以观察到,作者的无需NMS的训练与一致的双重分配显著降低了YOLOv10-S的端到端延迟4.63ms,同时保持了44.3% AP的竞争力表现。

此外,作者以效率为导向的模型设计导致YOLOv10-M减少了1180万参数和20.8 GFIOPs,延迟减少了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分支训练的 Baseline 。如表3所示,作者的双重标签分配实现了最佳的AP-延迟权衡。
  • 一致匹配度量。 作者引入了一致匹配度量, 使一对一Head 与一对多 Head 更加协调。作者基于YOLOv8-S验证了其好处, 即表 2 中的#1, 在不同的 下。如表4所示, 作者提出的一致匹配度量, 即 , 可以实现最优性能, 其中一对多 Head 中的 。这种改进可以归因于监督差距(方程(2))的减少, 这为两个分支之间提供了改进的监督对齐。此外,作者提出的一致匹配度量消除了在实践场景中进行大量超参数调整的需要, 这很有吸引力。

针对效率驱动的模型设计分析

作者基于YOLOv10-S/M进行了实验,逐步融入效率驱动的的设计元素。作者的 Baseline 模型是未采用效率-精度驱动的模型设计YOLOv10-S/M,即表2中的#2/#6。如表5所示,包括轻量级分类头、空间-通道解耦下采样和排序引导的块设计在内的每个设计组件都有助于减少参数数量、FLOPs和延迟。重要的是,这些改进是在保持竞争力性能的同时实现的。

  • 轻量级分类头。作者分析了预测的分类和定位误差对性能的影响, 基于表5中的#1和#2 的YOLOv10-S, 类似于[6]。具体来说, 作者通过一对一分配将预测与实例匹配。然后, 作者将预测的分类分数用实例标签替换, 得到没有分类错误的 。同样, 作者用实例的位置替换预测的位置, 得到没有回归错误的 。如表6所示, 远高于 , 表明消除回归误差能带来更大的改进。因此, 性能瓶颈更多在于回归任务。因此, 采用轻量级分类头可以在不牺牲性能的情况下实现更高的效率。
  • 空间-通道解耦下采样。作者为了效率而解耦下采样操作,先通过点卷积(PW)增加通道维度,然后通过深度卷积(DW)降低分辨率以保留最大信息量。作者将此方法与基于表5中#3的YOLOv10-S的 Baseline 下采样方式进行了比较,后者先通过DW进行空间缩减,然后通过PW进行通道调制。如表7所示,作者的下采样策略在享受下采样过程中较少信息丢失的同时,实现了0.7%的AP改进。
  • 紧凑型倒置块(CIB)。作者引入CIB作为紧凑的基本构建块。作者基于表5中的#4的YOLOv10-S验证了其有效性。具体来说,作者将倒置残差块[46](IRB)作为 Baseline ,它实现了次优的43.7% AP,如表8所示。然后作者在其后附加一个深度卷积(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阶段开始观察到性能退化。在内在排序较低且冗余更多的第8和第4阶段,作者可以采用高效的块设计而不牺牲性能。这些结果表明,排序引导的块设计可以作为提高模型效率的有效策略。

针对准确度驱动的模型设计分析

作者基于YOLOv10-S/M逐步集成准确度驱动设计元素的结果。作者的 Baseline 模型是融入了效率驱动设计的YOLOv10-S/M模型,即表2中的#3/#7。如表10所示,采用大核卷积和PSA模块使得YOLOv10-S的模型性能显著提升,分别提高了0.4% AP和1.4% AP,而延迟的增加最小,分别为0.03ms和0.15ms。需要注意的是,对于YOLOv10-M(见表12),作者没有采用大核卷积。

  • 大核卷积。作者首先基于表10中的#2的YOLOv10-S,研究不同核尺寸的效果。如表11所示, 随着核尺寸的增加, 性能有所提升, 在 的核尺寸附近趋于稳定, 这表明了大感知场的优势。此外, 在训练期间移除重新参数化分支会导致 AP的退化, 这显示了它在优化中的有效性。此外, 作者还基于YOLOv10-N / S / M检查大核卷积在不同模型规模上的好处。如表12所示, 对于大型模型, 即YOLOv10-M, 它并没有带来改进, 因为大型模型固有的感受野已经较广。因此, 作者仅在小型模型上采用大核卷积, 即YOLOv10-N / S。

  • 部分自注意力 (PSA) 。作者引入PSA以最小的代价增强性能, 通过融入全局建模能力。作者首先基于表10中的#3的YOLOv10-S验证其有效性。具体来说, 作者将 Transformer 块 (即MHSA后接FFN) 作为 Baseline, 记为"Trans."。如表13所示, 与它相比, PSA带来了 AP的改进, 同时减少了 的延迟。性能的提升可能归因于自注意力中的优化问题[62;9]的减轻, 通过减少注意力头中的冗余。此外, 作者还研究了不同 的影响。如表13所示, 将 增加到2可以获得 的改进, 但会带来 的延迟开销。因此,默认将 设置为 1 , 以在保持高效率的同时增强模型能力。

4 Implementation Details

遵循[20,56, 59], 所有YOLOv10模型都是从零开始使用SGD优化器训练500个周期。SGD动量和权重衰减分别设置为 0.937 和 。初始学习率为 , 并且线性衰减至 。对于数据增强, 作者采用了Mosaic, Mixup和copy-paste增强等方法,与[20,59]类似。表14 展示了详细的超参数设置。所有模型都在8个NVIDIA 3090 GPU上进行训练。

此外,作者将YOLOv10-M的宽度扩展因子增加到1.0以获得YOLOv10-B。对于PSA,作者在SPPF模块之后采用,并为FFN采用扩展因子为2。对于CIB,作者还为倒置瓶颈块结构采用2的扩展比率。[59, 56]在COCO数据集上报告了不同目标尺度和IoU阈值的标准平均精度(AP)。

此外,作者遵循[71]建立端到端的速度基准。由于NMS的执行时间受输入影响,因此作者在COCO验证集上测量延迟,与[71]一样。作者在验证期间采用了与检测器相同的NMS超参数。在后期处理中附加了TensorRT efficientNMSPlugin,并且省略了I/O开销。作者报告了所有图像的平均延迟。

5. 连贯匹配度量的详细推导

如论文所述, 作者假设一对多正样本为 , 而一对一分支选择了第 个预测。可以利用归一化度量来获得任务对齐学习的分类目标, 即 对于 。因此, 可以通过两个分支不同分类目标的1-瓦瑟斯坦距离来推导出两个分支之间的监督差距, 即:

其中 是指示函数。将 中预测的分类目标表示为 , 按降序排列, 即 。然后可以将 替换为 并得到:

进一步讨论了两种情况下的监督差距,即,

  1. 假设 , 可以得到:
  2. 假设 , 记 , 并得到: (6)

由于 , 第二种情况可能导致监督差距更小。此外, 可以观察到, 随着 的增加, 减少, 表明 减少, 中的排名提高。由于 , 因此当 时, 达到最小值, 即 中最好的正样本, 有

进一步地, 证明可以通过一致的匹配度量来实现最小的监督差距。

作者假设 , 这在 中很常见。同样, 假设 。作者可以得到 , 然后推导出 :

为了实现 , 作者可以通过赋值 来使 单调增加, 即,

假设 , 因此可以推导出一致性的匹配度量, 即, 。简单地将 , 得到

6. Details of Rank-Guided Block Design

作者展示了算法1中等级引导的块设计的算法细节。此外, 为了计算卷积的数值等级, 作者将它的权重 Reshape 为形状 , 其中 分别表示输出通道数和输入通道数,而 表示核大小。

7 More Results on COCO

作者报告了YOLOv10在COCO数据集上的详细性能, 包括在不同 阈值下的AP 和AP ,以及在不同尺度下的AP 、AP 和AP , 具体数据见表15。

8 More Analyses for Holistic Efficiency-Accuracy Driven Model Design

作者注意到,由于模型规模较小,降低YOLOv10-S(表2中第2个)的延迟尤为具有挑战性。然而,如表2所示,作者以效率为导向的模型设计仍然在不过度牺牲性能的情况下实现了5.3%的延迟降低。这为进一步的以准确度为导向的模型设计提供了有力支持。采用作者整体效率-准确度驱动的模型设计,YOLOv10-S在仅有0.05ms延迟开销的情况下,实现了更好的延迟-准确度权衡,显示出2.0%的AP提升。

此外,对于规模更大、冗余性更多的YOLOv10-M(表2中第6个),作者的效率驱动模型设计如表2所示,实现了相当可观的12.5%的延迟降低。当与准确度驱动的模型设计结合时,作者观察到YOLOv10-M的AP显著提升了0.8%,同时延迟也减少了0.48ms。这些结果充分证明了作者设计策略在不同模型规模上的有效性。

9 Visualization Results

图4展示了作者YOLOv10在复杂且具有挑战性的场景下的可视化结果。可以看出,YOLOv10在各种困难条件下都能实现精确检测,例如低光照、旋转等。它还展示了在检测多种且密集排列的物体(如瓶子、杯子和人)方面的强大能力。这些结果表明其性能卓越。

10 Contribution, Limitation, and Broader Impact

总的来说,作者的贡献主要体现在以下三个方面:

  1. 作者提出了一种新颖的一致性双重分配策略,用于无需NMS的YOLO。设计了一种双重标签分配方法,通过一对多分支在训练过程中提供丰富的监督信息,以及通过一对一分支在推理过程中实现高效率。此外,为了确保两个分支之间的和谐监督,作者创新性地提出了连贯匹配度量,这可以很好地减少理论上的监督差距,并带来性能的提升。
  2. 作者提出了一种整体效率-精度驱动的模型设计策略,用于YOLO的模型架构。作者展示了新型轻量级分类头、空间-通道解耦降采样和排名引导的块设计,这些设计大大减少了计算冗余并实现了高效率。作者进一步引入了大核卷积和创新的部分自注意力模块,这些模块在低成本的条件下有效地提升了性能。
  3. 基于上述方法,作者推出了YOLOv10,这是一个新的实时端到端目标检测器。广泛的实验表明,YOLOv10与其他先进检测器相比,在性能和效率权衡方面达到了最先进水平。

局限性:由于计算资源的限制,作者没有在大规模数据集上进行YOLOv10的预训练,例如Objects365 [47]。此外,尽管作者在无需NMS的训练下使用一对一 Head 可以获得具有竞争力的端到端性能,但与使用NMS的一对多训练相比,仍然存在性能差距,特别是在小型模型中更为明显。例如,在YOLOv10-N和YOLOv10-S中,使用NMS的一对多训练的性能比无需NMS的训练分别高出1.0% AP和0.5% AP。作者将在未来的工作中探索进一步缩小差距并实现更高性能的方法。

11 Conclusion

在本文中,作者针对YOLO系列检测 Pipeline 中的后处理和模型架构进行了研究。对于后处理,作者提出了持续的双重分配以实现无需NMS的训练,从而实现高效的端到端检测。对于模型架构,作者引入了整体效率-精度驱动的模型设计策略,改进了性能与效率之间的权衡。这些改进带来了YOLOv10,这是一个新的实时端到端目标检测器。大量实验表明,与其它先进检测器相比,YOLOv10在性能和延迟方面均达到了最先进水平,充分展示了其优越性。

参考

[1].YOLOv10: Real-Time End-to-End Object Detection.

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/170736
 
365 次点击