社区所有版块导航
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/11、RT-DETRv2/3!中科大D-FINE重新定义边界框回归任务

机器学习初学者 • 3 周前 • 18 次点击  

作者丨机器之心   来源丨机器之心     编辑丨极市平台

导读

 

D-FINE 在 COCO 数据集上以 78 FPS 的速度取得了 59.3% 的平均精度 (AP),远超 YOLOv10、YOLO11、RT-DETR v1/v2/v3 及 LW-DETR 等竞争对手,成为实时目标检测领域新的领跑者。目前,D-FINE 的所有代码、权重以及工具已开源,包含了详细的预训练教程和自定义数据集处理指南。 

D-FINE 的作者均来自中国科学技术大学。第一作者为中科大在读博士生彭岩松 (https://scholar.google.com/citations?user=CTidez8AAAAJ&hl=zh-CN),其研究方向为实时目标检测以及神经形态视觉,已在 AAAI、ICCV、CVPR 等国际顶级会议上以第一作者身份发表多篇论文。本文由吴枫教授、孙晓艳教授和张越一副研究员共同指导,其他作者包括中科大博士生李和倍及硕士生吴沛熹。

引言

在当前内卷严重的实时目标检测 (Real-time Object Detection) 领域,性能与效率始终是难以平衡的核心问题。绝大多数现有的 SOTA 方法仅依赖于更先进的模块替换或训练策略,导致性能逐渐趋于饱和。

为了打破这一瓶颈,来自中科大的研究团队提出了 D-FINE,重新定义了边界框回归任务。不同于传统的固定坐标预测,D-FINE 创新了两种方法:细粒度分布优化 (FDR) 和全局最优定位自蒸馏 (GO-LSD)。通过将回归任务转化为细粒度的分布优化任务,D-FINE 不仅显著简化了优化难度,还能够更精确地建模每条边界的不确定性。此外,D-FINE 将定位知识 (Localization Knowledge) 融入到模型输出,通过高效的自蒸馏策略在各层共享这些知识,因而在不增加额外训练成本的前提下,实现了性能的进一步显著提升。

  • 论文标题: D-FINE: Redefine Regression Task of DETRs as Fine-grained Distribution Refinement

  • 论文地址: https://arxiv.org/abs/2410.13842

  • 项目地址: https://github.com/Peterande/D-FINE

凭借这些创新,D-FINE 在 COCO 数据集上以 78 FPS 的速度取得了 59.3% 的平均精度 (AP),远超 YOLOv10、YOLO11、RT-DETR v1/v2/v3 及 LW-DETR 等竞争对手,成为实时目标检测领域新的领跑者。目前,D-FINE 的所有代码、权重以及工具已开源,包含了详细的预训练教程和自定义数据集处理指南。

研究团队分别使用 D-FINE 和 YOLO11 对 YouTube 上的一段复杂街景视频进行了目标检测。尽管存在逆光、虚化模糊和密集遮挡等不利因素,D-FINE-X 依然成功检测出几乎所有目标,包括背包、自行车和信号灯等难以察觉的小目标,其置信度、以及模糊边缘的定位准确度明显高于 YOLO11x。

细粒度分布优化 (FDR)

FDR (Fine-grained Distribution Refinement) 将检测框的生成过程分解为:

1. 初始框预测:与传统 DETR 方法类似,D-FINE 的解码器会在第一层将 Object Queries 转换为若干个初始边界框。这些边界框只用于初始化,不需要特别精确。

2. 细粒度的分布优化:与传统方法不同,D-FINE 的解码层不会直接预测新的边界框,而是基于初始边界框生成四组概率分布,并通过逐层优化对其进行调整。这些概率分布本质上是检测框的一种「细粒度中间表征」。D-FINE 可以通过微调这些表征,不同幅度地独立调整各边缘。

具体流程如图所示:

将边界框回归任务重新定义为 FDR 有以下优点:

1. 过程简化:在传统 L1 损失和 IoU 损失进行优化的基础上,模型还通过标签和预测结果之间的「残差」进一步约束这些中间态的概率分布。这使得每个解码层能够更有效地关注当前的定位误差。随着层数增加,优化的目标变得更加简单,从而简化了整体的优化过程。

2. 对复杂场景的鲁棒性更强:FDR 中概率的高低本质上反应了模型对边界微调的自信程度。这使得 D-FINE 能够在不同网络深度下对每条边的不确定性独立建模,从而使模型真正地理解定位的好坏。在遮挡、运动模糊和低光照等复杂的实际场景下,D-FINE 表现出了更强的鲁棒性,相比直接回归四个固定值的方法要更为稳健。

3. 灵活的优化机制:D-FINE 通过加权求和将概率分布转化为最终的边界框偏移值。指数型加权函数 W (n) 保证了能够在初始框准确时进行细微调整,在必要时提供大幅度修正。

4. 可扩展性:FDR 通过将回归任务定义为同分类任务一致的概率分布预测问题,这使得目标检测模型可以更好地受益于知识蒸馏、多任务学习和分布优化等更多领域的创新,从而更有效地适应和整合新的技术,突破传统方法的局限。

全局最优定位自蒸馏机制 GO-LSD

GO-LSD (Global Optimal Localization Self-Distillation) 可以将知识蒸馏无痛应用到 FDR 框架检测器。

基于 FDR 框架的目标检测器既可以实现知识传递,又可以保持一致的优化目标。

新任诺贝尔物理学奖得主 Geoffrey Hinton 在《Distilling the Knowledge in a Neural Network》一文中提到:概率即 「知识」。FDR 将概率分布变成了网络输出,并搭载了定位知识 (Localization Knowledge)。因此,仅计算 KL 散度损失就能将这些「知识」从深层传递到浅层。由于 FDR 架构中每一个解码层都共享一个共同目标,即减少初始边界框与真实边界框之间的残差。因此最后一层生成的精确概率分布可以作为前面每一层的最终目标,并通过蒸馏引导前几层。

由于 FDR 架构中每一个解码层都共享一个共同目标:减少初始边界框与真实边界框之间的残差;因此最后一层生成的精确概率分布可以作为前面每一层的最终目标,并通过蒸馏引导前几层。

研究团队在 FDR 的框架上进一步提出了全局最优定位自蒸馏 GO-LSD,在网络层间实现了定位知识蒸馏,进一步扩展了 D-FINE 的能力,具体流程如图:

FDR 与 GO-LSD 产生了一种双赢的「合力」:随着训练的进行,最后一层的预测将变得越来越准确,其生成的软标签也能够更好地帮助前几层提高预测准确性。反过来,前几层将更快地定位到准确位置。这相当于深层的优化任务得到了简化,从而进一步提高了整体准确性。

实验结果

在 COCO 数据集上,D-FINE-L 和 D-FINE-X 分别以 8.07 ms (124 FPS) 和 12.89 ms (78 FPS) 的时延取得了 54.0% 和 55.8% 的 AP,远超其余所有实时目标检测器,打败了 YOLOv10 (53.2%,54.4%)、YOLO11 (53.4%,54.7%) 及 RT-DETRv2 (53.4%,54.6%)。

在 Objects365 上进行了简单的有监督预训练后,D-FINE 的准确率达到了 59.3% AP。在 paperwithcode 网站的 Real-Time Object Detection on MS COCO benchmark 上,D-FINE 的速度和性能都远超其他方法,取得了 Top1 的成绩。

相比 baseline RT-DETR,D-FINE-L 和 D-FINE-X 大幅降低了参数量和计算复杂度。在推理速度显著提升的同时,分别取得了 1.8% 和 3.2% 的显著性能提升。

更轻量化的 D-FINE-S 和 D-FINE-M 在 T4 GPU 上分别以 3.49 ms (287 FPS) 和 5.62 ms (178 FPS) 的时延下取得了 48.5% 和 52.3% 的 AP,超过 YOLOv10 (46.3%,51.1%)、YOLO11 (46.6%,51.2%) 及 RT-DETRv2 (48.1%,49.9%)。预训练后,D-FINE-S 和 D-FINE-M 分别取得了 50.7% 和 55.1% 的 AP。

虽然 FDR 和 GO-LSD 能够显著提高性能,但不会直接让网络更快或更轻。为了解决这个问题,研究团队对 DETR 架构进行了轻量化处理。这些调整不可避免地让性能有所下降,但 D-FINE 方法最终实现了速度、参数、计算量与性能的平衡。下表展示了从 baseline 到 D-FINE 的逐步修改过程。每一步都含展示了模型在 AP 、参数量、时延以及 FLOPs 上的变化。

研究团队对一系列非实时的 DETR 检测模型应用了 FDR 和 GO-LSD。实验证明,在几乎没有额外参数量和算力的情况下,最高提升了 5.3% 的 AP,证明了方法的鲁棒性和泛化性。

根据消融实验,含有 FDR 的检测器和原始检测器在速度、参数量和计算复杂度上几乎没有区别,可以实现无缝替换。

研究团队分析了训练成本,发现额外的时间和显存消耗主要来自生成用于监督分布的 FGL Loss 标签。通过对 D-FINE 进行的进一步优化,这些额外的训练时间和显存占用被控制在 6% 和 2% 以内,对整体影响很小。

D-FINE 预测的可视化

以下是 D-FINE 在各种复杂检测场景中的预测结果。这些场景包括遮挡、低光照、运动模糊、景深效果和密集场景。可以看出,面对这些具有挑战性的场景,D-FINE 能够产生准确的定位结果。

下图展示了第一层和最后一层的预测结果、对应四条边的分布、以及加权后的分布。可以看出,预测框的定位会随着分布的优化而变得更加精准。

总结和局限

D-FINE 将边界框回归转化为逐层优化的概率分布预测,显著提升了模型在多任务场景中的兼容性。D-FINE 为目标检测模型的设计提供了一条新思路,后续可以考虑进一步挖掘 D-FINE 在跨任务学习和模型轻量化方面的潜力。

D-FINE 也有一些局限:相比于大模型, D-FINE 的轻量化版本对于性能提升不太明显。这可能是因为浅层解码器的预测精度不高,无法有效将定位信息传递给前几层。

未来的研究可以考虑在提高轻量化模型定位能力的同时,避免增加推理延迟。一种思路是继续改进架构设计,尝试在训练时引入额外的异构解码层,在推理时丢弃这些层,保持模型的轻量化。如果训练资源足够,还可以直接用大模型对小模型进行蒸馏,而不是依赖自蒸馏。

思考和展望

2024 年,实时目标检测领域经历了多次版本迭代,YOLO 系列先后推出了 YOLOv9、YOLOv10,以及 YOLO11。而 DETR 系列则在 RT-DETR 之后,陆续推出了 LW-DETR、RT-DETRv2 和 RT-DETRv3。

这两类模型的重要突破,实质上得益于相互借鉴和融合。RT-DETR 引入了 YOLO 的 RepNCSP 模块,以替代冗余的多尺度自注意力层,通过重新设计轻量化的混合编码器,实现了实时 DETR;而 YOLOv10 借鉴了 DETR 的匹配策略,通过训练额外的一对一检测头,对密集 anchor 预测进行自动筛选,避免了 NMS 后处理,显著提升了速度。此外,YOLOv10 和 YOLO11 也引入了自注意力机制,进一步增强了大尺度目标的检测性能。

尽管这些改进取得了显著的效果,但社区对未来的发展方向产生了疑问:在两类模型趋于一致的背景下,实时目标检测的下一步将如何发展?可以预见,在目标检测这一竞争激烈的领域,继续进行模块替换的收益将逐渐减少,可能很快遇到瓶颈。

而基于传统框架的训练策略改进,或许对一些旧的网络(如常用的 Deformable DETR)有效,但应用于最新的 SOTA 网络时,往往难以取得明显的提升,甚至可能产生负面影响。特别是对于计算资源有限的小型团队,即使是精妙的训练策略,若缺乏大规模的超参数搜索,也难以取得预期的效果。

D-FINE 的出现,为目标检测带来了全新的思路。通过引入 FDR 和 GO-LSD,D-FINE 重新定义了目标检测中的边界框回归任务。这种创新有望突破当前的瓶颈,为实时目标检测领域提供新的发展方向。


往期精彩回顾




  • 交流群

请备注:”昵称-学校/公司-研究方向“,例如:”张小明-浙大-CV“加群。

也可以加入机器学习交流qq群772479961


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