【论文阅读】YOLOv10: Real-Time End-to-End Object Detection

2024-08-27 03:04

本文主要是介绍【论文阅读】YOLOv10: Real-Time End-to-End Object Detection,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 摘要
  • 一、介绍
  • 二、相关工作
  • 三、方法
    • 3.1无nms培训的一致性双重任务
    • 3.2 整体效率-精度驱动的模型设计
  • 四、实验
    • 4.1实现细节
    • 4.2与最先进水平的比较
    • 4.3模型分析
  • 五、结论


YOLOv10:实时端到端对象检测

摘要

在过去的几年里,由于在计算成本和检测性能之间取得了有效的平衡,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://arxiv.org/pdf/2405.14458
代码链接:https://github.com/THU-MIG/yolov10


一、介绍

实时目标检测一直是计算机视觉领域的研究热点,其目的是在低延迟下准确预测图像中目标的类别和位置。它被广泛应用于各种实际应用中,包括自动驾驶、机器人导航、目标跟踪等。近年来,研究人员致力于设计基于cnn的目标检测器来实现实时检测。其中,yolo因其在性能和效率之间的平衡而越来越受欢迎。yolo的检测流程由模型前处理和NMS后处理两部分组成。然而,这两种方法都有不足之处,导致精度-延迟边界不够理想。

具体来说,yolo在训练过程中通常采用一对多的标签分配策略,即一个真值对象对应多个正样本。尽管这种方法产生了优越的性能,但需要NMS在推理过程中选择最佳的正预测。这降低了推理速度,使性能对网管的超参数敏感,从而影响了YOLOs实现端到端最优部署。解决这个问题的一个方法是采用最近引入的端到端DETR体系结构。例如,RT-DETR提供了高效的混合编码器和最小不确定性查询选择,将DETRs推进到实时应用程序领域。然而,部署DETRs的固有复杂性阻碍了其在准确性和速度之间实现最佳平衡的能力。另一条路线是探索基于cnn的检测器的端到端检测,它通常利用一对一分配策略来抑制冗余预测。然而,它们通常会引入额外的推理开销或实现次优性能。

此外,模型架构设计仍然是YOLOs的一个基本挑战,它对精度和速度有重要影响。为了实现更高效的模型架构,研究人员探索了不同的设计策略。为了提高主干的特征提取能力,提出了不同的主计算单元,包括DarkNet、CSPNet、EfficientRep和ELAN等。对于颈部,探索了PAN、BiC、GD和RepGFPN等方法来增强多尺度特征融合。此外,还研究了模型缩放策略和再参数化技术。虽然这些努力取得了显著的进展,但从效率和精度的角度对YOLOs中各种组件的全面检查仍然缺乏。因此,yolo内部仍然存在相当大的计算冗余,导致参数利用率低,效率次优。此外,由此产生的受约束的模型能力也导致了较差的性能,为精度的提高留下了充足的空间。

在这项工作中,我们的目标是解决这些问题,并进一步推进YOLOs的精度-速度边界。我们的目标是整个检测管道的后处理和模型架构。为此,我们首先提出了一种具有双标签分配和一致匹配度量的无nms yolo的一致双分配策略,解决了后处理中的冗余预测问题。它使模型在训练过程中享受丰富和谐的监督,同时在推理过程中消除了对NMS的需要,从而实现了com高效的竞争性能。其次,通过对YOLOs中各部件的全面检测,提出了整体效率-精度驱动的模型体系结构设计策略;为了提高效率,我们提出了轻量化分类头、空间信道解耦下采样和秩引导块设计,以减少显式计算冗余,实现更高效的架构。为了提高准确性,我们探索了大核卷积,并提出了有效的部分自关注模块来增强模型能力,利用低成本下的性能改进潜力。

基于这些方法,我们成功地实现了一系列具有不同模型尺度的实时端到端检测器,即YOLOv10- n / S / M / B / L / x。在对象检测标准基准(即COCO)上进行的广泛实验表明,我们的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倍。与YOLOv9-M / YOLOv10-M相比,YOLOv10-M实现了相似的AP,参数分别减少了23% / 31%。我们希望我们的工作能够激发该领域的进一步研究和进步。

在这里插入图片描述
图1:在延迟精度(左)和大小精度(右)权衡方面与其他工具的比较。我们使用官方预训练模型测量端到端延迟。

二、相关工作

实时目标探测器。实时目标检测的目的是在低延迟的情况下对目标进行分类和定位,这对现实世界的应用至关重要。在过去几年中,为研制有效的探测器作出了大量努力。特别是YOLO系列,作为主流产品脱颖而出。YOLOv1、YOLOv2和YOLOv3识别了典型的检测架构,由脊柱、颈部和头部三部分组成。YOLOv4和YOLOv5引入CSPNet设计来取代DarkNet,再加上数据增强策略,增强PAN,以及更多样化的模型尺度等。YOLOv6分别为颈部和脊柱提供BiC和SimCSPSPPF,具有锚定辅助训练和自蒸馏策略。YOLOv7引入了E-ELAN丰富的梯度流路径,并探索了几种可训练的免费袋方法。YOLOv8为有效的特征提取和融合提供了C2f构建块。Gold-YOLO提供了先进的GD机制,以提高多尺度特征融合能力。YOLOv9提出了GELAN来改进体系结构和PGI来增强训练过程。

端到端对象检测器。端到端目标检测已经从传统的管道转变为提供流线型架构的范式。DETR引入变压器架构,采用匈牙利损耗实现一对一匹配预测,从而消除手工制作元器件和后处理。从那时起,各种各样的DETR变体被提出,以提高其性能和效率。deformable - detr利用多尺度可变形注意力模块加快收敛速度。DINO将对比去噪、混合查询选择和forward two scheme集成到der中。RT-DETR进一步设计了高效的混合编码器,并提出了最小不确定性查询选择,以提高精度和延迟。另一条实现端到端目标检测的线路是基于CNN检测器。可学习NMS和关系网络提供了另一种网络来消除检测器的重复预测。OneNet和DeFCN提出了一对一匹配策略,以实现完全卷积网络的端到端目标检测。FCOSpss引入了一个正样本选择器来选择p的最佳样本

三、方法

3.1无nms培训的一致性双重任务

在训练过程中,yolo通常利用TAL为每个实例分配多个阳性样本。采用一对多分配,可以产生丰富的监控信号,便于优化,实现更优的性能。但是,它需要yolo依赖NMS的后处理,导致部署的推理效率不够理想。虽然以前的工作探索一对一匹配来抑制冗余预测,但它们通常会引入额外的推理开销或产生次优性能。在这项工作中,我们提出了一种具有双标签分配和一致匹配度量的无nms的yolo训练策略,实现了高效率和竞争性的性能。

双标签分配。与一对多分配不同,一对一匹配只对每个基本事实分配一个预测,避免了NMS的后处理。然而,这种算法的监督能力较弱,导致算法的精度和收敛速度不理想。幸运的是,这种缺陷可以通过一对多赋值来弥补。为了实现这一目标,我们为yolo引入了双标签分配,以结合两种策略的优点。具体来说,如图2.(a)所示,我们为yolo加入了另一个一对一的头部。它保留了与原始一对多分支相同的结构和优化目标,但利用一对一匹配来获得标签分配。在训练过程中,两个头部与模型共同优化,让脊柱和颈部享受一对多分配提供的丰富监督。在推理过程中,我们抛弃了一对多头像,利用一对一头像进行预测。这使yolo能够进行端到端部署,而不会产生任何额外的推理成本。此外,在一对一匹配中,我们采用了top 1的选择,达到了与匈牙利匹配相同的效果,并且减少了额外的训练时间。

在这里插入图片描述
图2:(a)无nms培训的一致双重分配。(b)默认αo2m=0.5, βo2m=6的YOLOv8-S,一对多结果Top-1/5/10的一对一赋值频率。为一致性,αo2o=0.5;βo2o = 6。对于不一致,αo2o=0.5;βo2o = 2。

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

在这里插入图片描述
式中p为分类分数,φ b和φ b分别为预测和实例的边界框。S表示预测锚点是否在实例内的空间先验。α和β是平衡语义预测任务和位置回归任务影响的两个重要超参数。我们将一对多和一对一的度量分别表示为mo2m=m(αo2m, βo2m)和mo2o=m(αo2m, βo2m)。这些指标影响两个负责人的标签分配和监督信息。

在双标签分配中,一对多分支比一对一分支提供更丰富的监控信号。直观地说,如果我们能够将一对一头像的监督与一对多头像的监督协调起来,我们就可以朝着一对多头像优化的方向去优化一对一头像。因此,一对一头部可以在推理过程中提供更好的样本质量,从而获得更好的性能。为此,我们首先分析了两个头部之间的监管差距。由于训练过程中的随机性,我们在开始时用相同的值初始化两个头像并产生相同的预测,即一对一头像和一对多头像为每个预测实例对生成相同的p和IoU。我们注意到两个分支的回归目标不冲突,因为匹配的预测共享相同的目标,而不匹配的预测被忽略。因此,监管缺口在于分类目标的不同。给定一个实例,我们用u∗表示其最大的IoU,并将最大的一对多和一对一匹配分数分别表示为m∗o2m和m∗o2o。假设一对多分支产生正样本Ω,并且一对一分支选择了度量为mo2o,i=m∗o2o的第i个预测,那么对于j∈Ω和对于任务对齐损失to2o,i=u∗·mo2m,j/m∗o2m≤u∗,i /m∗o2o=u∗,如[20,59,27,64,14]中所示。因此,两个分支之间的监督差距可以由不同分类目标的1-Wasserstein距离[41]推导出来,即:

在这里插入图片描述
我们可以观察到,差距随着2m的增加而减小,i的增加,即i在Ω中的排名更高。在to2m,i=u *时达到最小值,即在Ω中i为最佳阳性样本,如图2 (a)所示。为此,我们提出了一致的匹配度量,即αo2o=r·αo2m, βo2o=r·βo2m,即mo2o=mro2m。因此,一对多正面的最佳正样本也是一对一正面的最佳正样本。因此,两个头部可以持续和谐地优化。为简单起见,我们默认取r=1,即αo2o=αo2m, βo2o=βo2m。为了验证改进后的监督一致性,我们在训练后的一对多结果的前1 / 5 / 10内计算一对一匹配对的数量。如图2 (b)所示,在一致的匹配度量下,对准得到了改善。要更全面地了解数学证明,请参阅附录。

3.2 整体效率-精度驱动的模型设计

除了后处理之外,yolo的模型架构也对效率和精度的权衡提出了很大的挑战。虽然以往的作品探索了各种设计策略,但对YOLOs中各个部件的全面检查仍然缺乏。因此,模型体系结构表现出不可忽略的计算冗余和约束能力,这阻碍了其实现高效率和高性能的潜力。在这里,我们的目标是从效率和准确性的角度全面执行YOLOs的模型设计。

效率驱动的模型设计。YOLO的组件包括阀杆、下采样层、具有基本构建块的级和封头。该系统的计算成本很少,因此我们对其他三个部分进行了效率驱动的模型设计。

(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通常利用常规3×3标准同时实现了空间下采样(从H ×W到H/2 ×W/2)和通道变换(从C到2C)。这引入了不可忽略的计算成本O(9/2HWC^ 2)和参数计数O(18C ^2)。相反,我们建议将空间缩减和信道增加操作解耦,从而实现更有效的下采样。具体来说,我们首先利用点向卷积来调制信道维度,然后利用深度卷积来执行空间下采样。这将计算成本降低到0 (2HWC ^2 +9/2HWC),参数计数降低到0 (2C ^2 + 18C)。同时,它最大限度地提高了下采样期间的信息保留,从而在降低延迟的情况下获得具有竞争力的性能。

(3)秩导块设计。yoloo通常在所有阶段使用相同的基本构建块,例如,YOLOv8中的瓶颈块。为了彻底检查这种同质设计的yolo,我们利用内在秩来分析每个阶段的冗余度2。具体来说,我们计算每个阶段最后一个基本块的最后一个卷积的数值秩,计算大于阈值的奇异值的个数。图3 (a)为YOLOv8的结果,表明深阶段和大模型容易表现出更多的冗余。这一观察结果表明,简单地在所有阶段采用相同的区块设计并不能达到最佳的产能效率平衡。为了解决这个问题,我们提出了一个等级引导的块设计方案,旨在减少使用紧凑的架构设计显示冗余的阶段的复杂性。我们首先提出了一种紧凑的倒块(CIB)结构,该结构采用廉价的深度卷积进行空间混合,采用高性价比的点卷积进行通道混合,如图3 (b)所示。它可以作为高效的基本构建块,例如嵌入ELAN结构中58,20。在此基础上,我们提出了一种排序引导的区块分配策略,以在保持竞争能力的同时达到最佳效率。具体来说,给定一个模型,我们根据其内在的升序排序其所有阶段。我们进一步检查用CIB替换先导阶段基本块的性能变化,如果与给定模型相比没有性能下降,我们继续更换下一阶段,否则停止该过程。因此,我们可以实现跨阶段和模型尺度的自适应紧凑块设计,在不影响性能的情况下实现更高的效率。由于篇幅限制,我们在附录中提供了算法的细节。

在这里插入图片描述
图3:(a) YOLOv8中不同阶段和模型的内在排名。在脊柱和颈部的阶段是按模型正演的顺序编号的。y轴的数值秩r归一化为r/Co,其阈值默认设置为λmax/2,其中Co表示输出通道数,λmax为最大奇异值。可以观察到,深阶段和大模型表现出较低的内在秩值。(b)紧凑倒块(CIB)。(c)部分自我注意模块。

精度驱动的模型设计。我们进一步探索了精度驱动设计的大核卷积和自关注,旨在以最小的成本提高性能。

(1)大核卷积。采用大核深度卷积是扩大接收野和增强模型性能的有效途径。然而,简单地在所有阶段利用它们可能会导致用于检测小物体的浅层特征受到污染,同时还会在高分辨率阶段引入显著的I/O开销和延迟。因此,我们建议在深度阶段利用CIB中的大核深度卷积。具体来说,我们将CIB中第二个3×3深度卷积的内核大小增加到7×7,如下所示。此外,我们采用结构重参数化技术引入另一个3×3深度卷积分支,以缓解优化问题,而不会产生推理开销。此外,随着模型大小的增加,其接受域自然会扩大,使用大核卷积的好处会减少。因此,我们只对小模型尺度采用大核卷积。

(2)部分自我注意(PSA)。自注意由于其卓越的全局建模能力而被广泛应用于各种视觉任务中。然而,它表现出很高的计算复杂度和内存占用。为了解决这个问题,鉴于普遍存在的注意头冗余,我们提出了一个有效的部分自我注意(PSA)模块设计,如图3 ©所示。具体来说,我们在1×1卷积后将跨通道的特征均匀地划分为两部分。我们只将其中一部分输入到由多头自注意模块(MHSA)和前馈网络(FFN)组成的NPSA模块中。然后通过1×1卷积将两个部分连接并融合。此外,我们将查询和键的维度分配为MHSA中值的一半,并将LayerNorm[1]替换为BatchNorm[26],以实现快速推理。此外,PSA仅放置在分辨率最低的阶段4之后,避免了自关注的二次计算复杂性带来的过多开销。这样可以将全局表示学习能力融入到yolo中,计算成本较低,很好地增强了模型的能力,从而提高了性能。

四、实验

4.1实现细节

我们选择YOLOv8作为我们的基线模型,因为它具有值得称赞的延迟-精度平衡以及它在各种模型大小中的可用性。我们采用一致的双重任务进行无nms训练,并在此基础上进行整体效率-精度驱动的模型设计,从而带来了YOLOv10模型。YOLOv10具有与YOLOv8相同的变种,即N / S / M / L / x。此外,我们通过简单地增加YOLOv10-M的宽度比例因子,推导出一个新的变种YOLOv10- b。在相同的从头开始训练设置下,我们在COCO上验证了所提出的检测器。此外,在T4 GPU上使用TensorRT FP16测试了所有模型的延迟,如下所示。

4.2与最先进水平的比较

如表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 - detr - r18 / R101分别快1.8倍和1.3倍。这些结果很好地证明了YOLOv10作为实时端到端检测器的优越性。

我们还使用原始的一对多训练方法将YOLOv10与其他YOLOv10进行了比较。在这种情况下,我们考虑模型转发过程(Latencyf)的性能和延迟,如下[56,20,54]。如表1所示,YOLOv10在不同的模型尺度上也表现出了最先进的性能和效率,表明了我们建筑设计的有效性。

表1:与最先进水平的比较。使用官方预训练模型测量延迟。Latencyf表示未经后处理的模型前向过程中的延迟时间。†表示使用NMS进行原始一对多训练的YOLOv10的结果。为了公平比较,下面的所有结果都没有额外的高级培训技术,如知识蒸馏或PGI。
在这里插入图片描述

4.3模型分析

消融实验。表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,充分证明了其优越性。

表2:YOLOv10-S和YOLOv10-M对COCO的消融研究。
在这里插入图片描述

无nms培训分析

  • 双标签分配。我们提出了对无nms的YOLOs进行双标签分配,既可以在训练过程中对一对多(o2m)分支进行丰富的监督,又可以提高效率
    推理时的一对一(o2o)分支。我们基于YOLOv8-S(即表2中的#1)验证了它的好处。具体来说,我们分别引入了仅o2m分支和仅o2o分支的培训基线。如表3所示,我们的双标签分配实现了最佳的ap -延迟权衡。

  • 一致的匹配度量。引入一致性匹配度量,使一对一头像与一对多头像更加和谐。我们基于YOLOv8-S,即表2中的#1,在不同的αo2o和βo2o下验证其效益。如表4所示,所提出的一致性匹配指标αo2o=r·αo2m, βo2o=r·βo2m,在一对多头部中αo2m=0.5, βo2m=6.0,可以达到最优的性能。这种改进可以归因于监管差距的减少(公式(2)),这在两个分支之间提供了改进的监管一致性。此外,所提出的一致匹配度量消除了详尽的超参数调优的需要,这在实际场景中很有吸引力。

在这里插入图片描述
分析效率驱动的模型设计。我们通过实验,逐步将基于YOLOv10-S/M的效率驱动设计元素纳入其中。我们的基线是没有效率-精度驱动模型设计的YOLOv10-S/M模型,即表2中的#2/#6。如表5所示,每个设计组件,包括轻量级分类头、空间通道解耦下采样和秩导块设计,都有助于减少参数计数、FLOPs和延迟。重要的是,这些改进是在保持竞争性能的同时实现的。

  • *轻量化分级头。*我们基于表5中#1和#2的YOLOv10-S,如[6],分析预测的类别和定位误差对性能的影响。具体来说,我们通过一对一的分配将预测与实例匹配。然后,我们用实例标签代替预测的类别得分,得到验证集AP w/o c,没有分类错误。类似地,我们用实例的位置替换预测的位置,得到验证集AP w/o r,没有回归误差。如表6所示,验证集AP w/o r远高于验证集AP w/o c,说明消除回归误差后得到的改善更大。因此,性能瓶颈更多地在于回归任务。因此,采用轻量化分级头可以在不影响性能的情况下提高效率。

  • 空间信道解耦下采样。为了提高效率,我们解耦了下采样操作,其中首先通过点向卷积(PW)增加通道尺寸,然后通过深度卷积(DW)降低分辨率以获得最大的信息保留。我们将其与基于表5中#3的YOLOv10-S的DW空间缩减后PW信道调制的基线方法进行比较。如表7所示,我们的降采样策略通过降低降采样过程中的信息损失,实现了0.7%的AP改进。

  • 紧凑倒块(CIB)。我们介绍CIB作为紧凑的基本构建块。我们根据表5中#4的YOLOv10-S验证其有效性。具体来说,我们引入了倒立残差块(IRB)作为基线,实现了次优的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的YOLOv10-S验证其有效性。具体来说,我们引入变压器块,即MHSA,然后是FFN,作为基线,表示为“Trans”。如表13所示,与PSA相比,PSA提高了0.3%的AP,降低了0.05ms的延迟。性能的提高可能是由于通过减少注意头的冗余来缓解自注意中的优化问题。此外,我们还研究了不同NPSA的影响。如表13所示,将NPSA增加到2可以获得0.2%的AP改进,但延迟开销为0.1ms。因此,我们将NPSA默认设置为1,以便在保持高效率的同时增强模型能力。

五、结论

在本文中,我们针对整个yolo检测管道的后处理和模型架构进行了研究。在后处理方面,我们提出了一致的双重任务用于NMS免费训练,实现了高效的端到端检测。对于模型架构,我们引入了整体效率-精度驱动的模型设计策略,改善了性能-效率权衡。这些带来了我们的YOLOv10,一种新的实时端到端目标探测器。大量实验表明,与其他先进探测器相比,YOLOv10的性能和延迟达到了最先进的水平,充分证明了它的优越性。

这篇关于【论文阅读】YOLOv10: Real-Time End-to-End Object Detection的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1110447

相关文章

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

软件架构模式:5 分钟阅读

原文: https://orkhanscience.medium.com/software-architecture-patterns-5-mins-read-e9e3c8eb47d2 软件架构模式:5 分钟阅读 当有人潜入软件工程世界时,有一天他需要学习软件架构模式的基础知识。当我刚接触编码时,我不知道从哪里获得简要介绍现有架构模式的资源,这样它就不会太详细和混乱,而是非常抽象和易

linux 下Time_wait过多问题解决

转自:http://blog.csdn.net/jaylong35/article/details/6605077 问题起因: 自己开发了一个服务器和客户端,通过短连接的方式来进行通讯,由于过于频繁的创建连接,导致系统连接数量被占用,不能及时释放。看了一下18888,当时吓到了。 现象: 1、外部机器不能正常连接SSH 2、内向外不能够正常的ping通过,域名也不能正常解析。

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想?哪些是 BERT 的创新? 1标题 + 作者 BERT: Pre-trainin

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At