深度学习论文: YOLOv10: Real-Time End-to-End Object Detection

深度学习论文: YOLOv10: Real-Time End-to-End Object Detection

YOLOv10: Real-Time End-to-End Object Detection

PDF: https://arxiv.org/pdf/2405.14458

PyTorch代码: https://github.com/shanglianlm0525/CvPytorch

PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks

1 概述

YOLO在实时物体检测领域因计算成本与检测性能的平衡而领先。尽管研究人员在架构、优化目标和数据增强方面取得显著进展,但YOLO对NMS的依赖影响了其端到端部署和推理速度。此外,YOLO组件设计的不足导致计算冗余和性能限制。为此,YOLOv10专注于后处理和模型架构,提出了无NMS训练的一致对偶分配方法,实现高性能和低延迟。同时,YOLOv10采用效率-准确度驱动的策略,全面优化YOLO组件,降低计算成本并提高性能。

2 YOLOv10

2-1 Consistent Dual Assignments for NMS-free Training

YOLO 算法在训练时通常使用 TAL 技术为每个实例分配多个正样本,这有助于优化并提升性能,但需要依赖 NMS 后处理,影响部署时的推理效率。先前研究尝试一对一匹配减少冗余预测,但可能增加推理开销或性能不佳。

本文提出了一种无需 NMS 的 YOLO 训练策略,采用双重标签分配和一致匹配度量,实现了高效和性能优异。

双重标签分配: 结合一对一和一对多匹配的优势,引入额外的一对一头部,与原有的一对多分支共享结构和优化目标,但在训练时采用一对一匹配获得标签。这样,训练时两个头部联合优化,享受一对多匹配的丰富监督,推理时只使用一对一头部,避免额外推理成本。

一致的匹配度量: 使用统一的匹配度量标准,结合分类得分、预测框和实例框的 IoU,以及空间先验,通过超参数平衡语义预测和位置回归任务。一致的匹配度量确保一对一头部在训练中与一对多头部对齐,优化方向一致。

通过这种策略,YOLO 可以在不牺牲性能的情况下,实现端到端部署,减少推理成本。研究还验证了监督对齐的改善,并提供了数学证明。

2-2 Holistic Efficiency-Accuracy Driven Model Design

YOLO模型在效率和准确性之间需要权衡,尽管之前的研究尝试了不同的设计策略,但对YOLO各组件的全面检查仍然不足。为了提升效率和性能,我们从效率和准确性两方面对YOLO模型进行了整体设计。

效率驱动的模型设计:

  • 轻量级分类头部:简化分类头部以减少计算负担,因为回归头部对YOLO性能的影响更大。因此,为分类头部采用了一个轻量级架构,由两个深度可分离卷积和1×1卷积组成。
  • 空间-通道解耦下采样:通过分离空间缩减和通道增加操作,使用逐点卷积和深度卷积实现更高效的下采样。
  • 等级引导的块设计:根据模型各阶段的内在等级分析冗余,采用紧凑的倒置块(CIB)结构,并通过等级引导的块分配策略优化效率。

准确性驱动的模型设计:

  • 大核心卷积:在深层阶段使用大核心深度卷积来扩大感受野,同时采用结构重参数化技术减轻优化问题。
  • 部分自注意力(PSA):为减少计算复杂性,仅在低分辨率阶段使用部分自注意力模块,通过合理分配查询和键的维度,并使用BatchNorm加速推理。

通过这些设计,YOLO模型在保持准确性的同时,能够实现更高的效率和性能。

3 Experiments

相关推荐
羊小猪~~2 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
软工菜鸡28 分钟前
预训练语言模型BERT——PaddleNLP中的预训练模型
大数据·人工智能·深度学习·算法·语言模型·自然语言处理·bert
deephub2 小时前
Tokenformer:基于参数标记化的高效可扩展Transformer架构
人工智能·python·深度学习·架构·transformer
___Dream2 小时前
【CTFN】基于耦合翻译融合网络的多模态情感分析的层次学习
人工智能·深度学习·机器学习·transformer·人机交互
极客代码2 小时前
【Python TensorFlow】入门到精通
开发语言·人工智能·python·深度学习·tensorflow
王哈哈^_^3 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
是瑶瑶子啦3 小时前
【深度学习】论文笔记:空间变换网络(Spatial Transformer Networks)
论文阅读·人工智能·深度学习·视觉检测·空间变换
wangyue45 小时前
c# 深度模型入门
深度学习
川石课堂软件测试5 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
985小水博一枚呀5 小时前
【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
人工智能·深度学习·神经网络·cnn·transformer