Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
Ultralytics YOLO

如何对 YOLO11 等 Ultralytics YOLO 模型进行基准测试

了解如何对 Ultralytics YOLO11 进行基准测试、比较不同设备的性能,并探索各种导出格式,从而优化速度、准确率和效率。

Abirami VinaAbirami Vina6 分钟阅读
对 YOLO11 等 Ultralytics YOLO 模型进行基准测试

如今可用的 AI 模型越来越多,为特定 AI 应用选择最合适的模型,是获得准确可靠结果的关键。不同模型在速度、准确度和整体性能方面各不相同。那么,如何判断哪种模型最适合特定任务?这对于自动驾驶汽车、安全解决方案和机器人等实时系统尤为重要,因为这些系统需要快速且可靠地做出决策。

基准测试通过在不同条件下评估模型,帮助解答这个问题。它能让你了解模型在各种硬件配置和设置下的表现,从而帮助你做出更明智的决策。

例如,Ultralytics YOLO11(后继版本为 Ultralytics YOLO26)是一款计算机视觉模型,支持目标检测和实例分割等多种视觉数据分析任务。要全面了解它的能力,你可以在不同配置上对它进行基准测试,看看它在现实场景中的表现。

本文将介绍如何对 Ultralytics YOLO 模型(例如 YOLO11)进行基准测试,比较模型在各种硬件上的表现,并了解不同导出格式如何影响速度和效率。

什么是模型基准测试?#

在实际应用中使用视觉 AI 模型时,你如何判断它是否足够快速、准确且可靠?模型基准测试可以帮助你找到答案。模型基准测试是测试和比较不同 AI 模型、确定哪个模型表现最佳的过程。

基准测试需要设定比较基准、选择合适的性能指标(例如准确率或速度),并在相同条件下测试所有模型。结果有助于找出每个模型的优缺点,让你更容易判断哪个模型最适合特定的 AI 解决方案。特别是,基准测试数据集通常用于进行公平比较,并评估模型在不同现实场景中的表现。

为什么要对计算机视觉模型进行基准测试?

图 1. 为什么要对计算机视觉模型进行基准测试?图片由作者提供。

监控或机器人等实时应用很好地说明了基准测试为何至关重要,因为即使轻微延迟也可能影响决策。基准测试有助于评估模型能否快速处理图像,同时仍提供可靠的预测结果。

基准测试在识别性能瓶颈方面也发挥着重要作用。如果模型运行缓慢或资源消耗过多,基准测试可以揭示问题究竟源于硬件限制、模型配置还是导出格式。这些洞察对于选择最有效的配置至关重要。

模型基准测试与模型评估和测试的对比#

模型基准测试、评估和测试是常见的 AI 术语,通常会一起使用。虽然它们相似,但并不相同,各自的作用也不同。模型测试通过在测试数据集上运行单个模型,并测量准确度和速度等因素,检查模型的表现。模型评估则更进一步,分析结果以了解模型的优势、劣势,以及模型在真实场景中的表现。两者每次都只关注一个模型。

而模型基准测试则使用相同的测试和数据集,对多个模型进行并排比较。它通过突出不同模型在准确度、速度和效率方面的差异,帮助你找出最适合特定任务的模型。测试和评估关注单个模型,而基准测试通过公平比较不同选项,帮助你选出合适或最佳的模型。

模型基准测试与评估和测试的区别

图 2. 模型基准测试与评估和测试的区别。图片由作者提供。

Ultralytics YOLO11 概览#

Ultralytics YOLO11 是一种可靠的视觉 AI 模型,旨在准确执行各种计算机视觉任务。它在早期 YOLO 模型版本的基础上进行了改进,并提供了许多有助于解决实际问题的功能。例如,它可用于检测对象、分类图像、分割区域、跟踪移动等。它还适用于从安全到自动化和分析等众多行业领域。

使用 Ultralytics YOLO11 对图像中的人物进行分割

图 3. 使用 Ultralytics YOLO11 对图像中的人物进行分割的示例。

Ultralytics YOLO11 的一项主要优势是易于使用。只需几行代码,任何人都可以将它集成到 AI 项目中,无需处理复杂的设置,也不需要高深的技术知识。

它还可以在不同硬件上流畅运行,在 CPU(中央处理器)、GPU(图形处理器)和其他专用 AI 加速器上高效运行。无论部署在边缘设备还是云服务器上,它都能提供出色的性能。

Ultralytics YOLO11 提供多种模型尺寸,分别针对不同任务进行了优化。基准测试有助于确定哪个版本最符合你的特定需求。例如,基准测试可以揭示一个重要结论:Nano 或 Small 等较小的模型通常运行更快,但可能会牺牲一些准确率。

如何对 Ultralytics YOLO11 等 YOLO 模型进行基准测试#

现在我们已经了解了什么是基准测试以及它为何重要,接下来就来看看如何对 Ultralytics YOLO11 等 YOLO 模型进行基准测试并评估效率,从而获得有价值的见解。

要开始使用,请在终端或命令提示符中运行以下命令,安装 Ultralytics Python 包:“pip install ultralytics”。如果安装过程中遇到问题,请查看我们的常见问题指南,获取故障排查建议。

安装软件包后,只需几行 Python 代码,就可以轻松对 Ultralytics YOLO11 进行基准测试:

from ultralytics.utils.benchmarks import benchmark

# 在 GPU 上进行基准测试
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, device=0)

运行上方的代码后,它会计算模型处理图像的速度、每秒可处理的帧数,以及对象检测的准确度。

代码中的“coco8.yaml”指的是基于 COCO8(上下文中的常见对象)数据集的数据集配置文件。COCO8 是完整 COCO 数据集的精简示例版本,常用于测试和实验。

如果你要针对特定应用(例如交通监控或医学成像)测试 Ultralytics YOLO11,使用相关数据集(例如交通数据集或医学数据集)会得到更准确的洞察。使用 COCO 进行基准测试可以大致了解性能,但要获得最佳结果,你可以选择能够反映实际用例的数据集。

了解 Ultralytics YOLO11 基准测试输出#

完成 Ultralytics YOLO11 基准测试后,下一步是解读结果。运行基准测试后,你会在结果中看到各种数值。这些指标有助于评估 YOLO11 在准确度和速度方面的表现。

以下是一些值得关注的 Ultralytics YOLO11 基准测试指标:

  • mAP50-95:该指标用于衡量对象检测准确度。数值越高,说明模型识别对象的能力越强。
  • accuracy_top5:该指标常用于分类任务,表示正确标签出现在前五个预测结果中的频率。
  • 推理时间:处理单张图像所需的时间,以毫秒为单位。数值越低,处理速度越快。

显示 Ultralytics YOLO11 基准测试性能的图表

图 4. 显示 YOLO11 基准测试性能的图表。

对 Ultralytics YOLO11 进行基准测试时需要考虑的其他因素#

只看基准测试结果并不能了解全部情况。为了更全面地了解性能,比较不同设置和硬件选项会很有帮助。以下是一些需要关注的重要方面:

  • GPU 与 CPU:GPU 处理图像的速度远快于 CPU。基准测试有助于你判断 CPU 是否足以满足需求,或你是否能从使用 GPU 中获益。
  • 精度设置 (FP32、FP16、INT8):这些设置控制模型处理数值的方式,通过 quantize 参数指定(例如 quantize=16)。较低的精度(如 FP16 或 INT8)能让模型运行更快、占用更少内存,但可能会略微降低准确率。
  • 导出格式:将模型转换为 TensorRT 等格式,可使模型在某些硬件上运行得快得多。如果你要针对特定设备优化速度,这会很有用。

如何在不同硬件上对 Ultralytics YOLO11 进行基准测试#

Ultralytics Python 包可将 YOLO11 模型转换为不同格式,使其在特定硬件上运行得更高效,从而提升速度并减少内存使用量。每种导出格式都针对不同设备进行了优化。

一方面,ONNX 格式可以提升模型在各种环境中的性能。另一方面,OpenVINO 能提高模型在 Intel 硬件上的效率,CoreML 适用于 Apple 设备,而 LiteRT(前身为 TensorFlow Lite)则适用于移动应用。

下面来看看如何对特定格式下的 Ultralytics YOLO11 进行基准测试。以下代码对 ONNX 格式的 YOLO11 进行基准测试。该格式广泛用于在 CPU 和 GPU 上运行 AI 模型。

from ultralytics.utils.benchmarks import benchmark

# 对特定导出格式进行基准测试(例如 ONNX)
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")

除了基准测试结果,选择合适的格式还取决于系统规格和部署需求。例如,自动驾驶汽车需要快速的目标检测。如果你计划使用 NVIDIA GPU 来加速性能,那么 TensorRT 格式是让 Ultralytics YOLO11 在 NVIDIA GPU 上运行的理想选择。

在自动驾驶汽车中使用 Ultralytics YOLO11 进行对象检测

图 5. 在自动驾驶汽车中使用 YOLO11 进行对象检测。

要点#

Ultralytics Python 包提供了简单的命令,可代你完成性能测试,让 YOLO11 的基准测试变得轻松。只需几个步骤,你就能了解不同配置如何影响模型的速度和准确度,无需具备深厚的技术知识,也能做出明智的选择。

合适的硬件和设置也会带来显著影响。调整模型尺寸和数据集等参数,可以微调 Ultralytics YOLO11 以获得最佳性能,无论你是在高端 GPU 上运行,还是在边缘设备上本地运行。

加入我们的社区,并在我们的 GitHub 代码库中探索 AI 项目。通过我们的解决方案页面,了解 AI 在农业中的应用以及计算机视觉在制造业中的作用。查看我们的许可方案,现在就开启你的 AI 之旅!

作者

Abirami Vina
Abirami Vina

内容创作者 · Ultralytics

Abirami Vina 职业生涯始于计算机视觉工程师,由此在视觉 AI 和机器学习领域打下了坚实基础。她是 Ultralytics 的内容创作者,也是 Scribe of AI 的创始人兼首席撰稿人,为专注 AI 的公司撰写高质量技术内容。她热衷于让 AI 更易理解、更具吸引力,通过自己的作品连接前沿技术与现实影响。

评论

提出问题、分享你的结果,或帮助其他人。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来