Meet YOLO26: next-gen vision AI.

Link to this section使用 Neural Magic 的 DeepSparse Engine 优化 YOLO26 推理#

在将 目标检测 模型(如 Ultralytics YOLO26)部署到各种硬件上时,你可能会遇到诸如优化之类的独特问题。这就是 YOLO26 与 Neural Magic 的 DeepSparse Engine 集成发挥作用的地方。它改变了 YOLO26 模型的执行方式,使 CPU 也能实现 GPU 级别的性能。

本指南将向你展示如何使用 Neural Magic 的 DeepSparse 部署 YOLO26、如何运行推理,以及如何通过基准测试来确保模型性能已得到优化。

SparseML 生命周期结束 (EOL)

Neural Magic 已于 2025 年 1 月被 Red Hat 收购,并将停止对其社区版 deepsparsesparsemlsparsezoosparsify 库的支持。更多信息,请参阅 sparsify GitHub 存储库的自述文件中发布的通知

Link to this sectionNeural Magic 的 DeepSparse#

Neural Magic's DeepSparse Overview

Neural Magic 的 DeepSparse 是一款推理运行时,专为优化神经网络在 CPU 上的执行而设计。它应用了诸如稀疏化、剪枝和量化等先进技术,在保持精度的同时大幅降低了计算需求。DeepSparse 为在各种设备上进行高效且可扩展的 神经网络 执行提供了一种灵活的解决方案。

Link to this section将 Neural Magic 的 DeepSparse 与 YOLO26 集成的优势#

在深入了解如何使用 DeepSparse 部署 YOLO26 之前,让我们先了解一下使用 DeepSparse 的优势。一些关键优势包括:

  • 增强的推理速度:最高可达 525 FPS(在 YOLO11n 上),与传统方法相比,显著提升了 YOLO 的推理能力。

Neural Magic DeepSparse inference acceleration

  • 优化的模型效率:利用剪枝和量化技术提升 YOLO26 的效率,在保持 精度 的同时减小了模型大小并降低了计算需求。

Neural Magic model optimization and pruning

  • 在标准 CPU 上实现高性能:在 CPU 上提供类 GPU 的性能,为各种应用场景提供了更易于获取且具有成本效益的选择。

  • 精简的集成与部署:提供易于使用的工具,可轻松将 YOLO26 集成到应用程序中,包括图像和视频标注功能。

  • 支持多种模型类型:兼容标准 YOLO26 模型和经过稀疏化优化的 YOLO26 模型,增加了部署的灵活性。

  • 经济高效且可扩展的解决方案:降低运营开支,并支持对先进的目标检测模型进行可扩展部署。

Link to this sectionNeural Magic 的 DeepSparse 技术是如何工作的?#

Neural Magic 的 DeepSparse 技术灵感源自人脑在神经网络计算中的高效性。它采用了大脑的两个关键原则,如下所示:

  • 稀疏性 (Sparsity):稀疏化过程涉及从 深度学习 网络中剪枝冗余信息,从而在不牺牲精度的情况下构建更小、更快的模型。此技术显著降低了网络规模和计算需求。

  • 引用局部性 (Locality of Reference):DeepSparse 使用一种独特的执行方法,将网络分解为 Tensor Columns(张量列)。这些列按深度执行,并完全适配在 CPU 缓存内。这种方法模仿了大脑的效率,最大限度地减少了数据移动并最大化了 CPU 缓存的使用。

How Neural Magic's DeepSparse Technology Works

Link to this section创建在自定义数据集上训练的 YOLO26 稀疏版本#

SparseZoo 是 Neural Magic 提供的一个开源模型存储库,其中包含 一系列预稀疏化的 YOLO26 模型检查点。借助与 Ultralytics 无缝集成的 SparseML,用户可以通过简单的命令行界面轻松地在自己的数据集上对这些稀疏检查点进行微调。

查看 Neural Magic 的 SparseML YOLO26 文档 以了解更多详细信息。

Link to this section用法:使用 DeepSparse 部署 YOLO26#

使用 Neural Magic 的 DeepSparse 部署 YOLO26 涉及几个简单的步骤。在深入了解使用说明之前,请务必查看 Ultralytics 提供的 YOLO26 模型系列。这将帮助你为项目需求选择最合适的模型。以下是你入门的方法。

Link to this section第 1 步:安装#

要安装所需的软件包,请运行:

安装
# Install the required packages
pip install deepsparse[yolov8]

Link to this section第 2 步:将 YOLO26 导出为 ONNX 格式#

DeepSparse Engine 要求 YOLO26 模型为 ONNX 格式。将模型导出为此格式对于与 DeepSparse 的兼容性至关重要。使用以下命令导出 YOLO26 模型:

模型导出
# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13

此命令会将 yolo26n.onnx 模型保存到你的磁盘。

Link to this section第 3 步:部署和运行推理#

在获得 ONNX 格式的 YOLO26 模型后,你可以使用 DeepSparse 部署并运行推理。通过其直观的 Python API 可以轻松完成:

部署和运行推理
from deepsparse import Pipeline

# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"

# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)

# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)

Link to this section第 4 步:性能基准测试#

务必检查你的 YOLO26 模型在 DeepSparse 上是否运行良好。你可以对模型性能进行 基准测试,以分析吞吐量和延迟:

基准测试
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Link to this section第 5 步:附加功能#

DeepSparse 提供了附加功能,用于在应用中实际集成 YOLO26,例如图像标注和数据集评估。

附加功能
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"

# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"

运行 annotate 命令可以处理你指定的图像,检测对象,并保存带有边界框和分类标注的图像。标注后的图像将存储在 annotation-results 文件夹中。这有助于直观地展示模型的检测能力。

Neural Magic annotation feature interface

在运行 eval 命令后,你将获得详细的输出指标,例如 精度 (precision)召回率 (recall)mAP(平均精度均值)。这提供了模型在数据集上性能的全面视图,对于微调和优化特定用例的 YOLO26 模型以确保高准确性和高效率特别有用。

Link to this section总结#

本指南探讨了将 Ultralytics 的 YOLO26 与 Neural Magic 的 DeepSparse Engine 集成的过程。它重点介绍了这种集成如何提升 YOLO26 在 CPU 平台上的性能,提供 GPU 级别的效率和先进的神经网络稀疏化技术。

有关更详细的信息和高级用法,请访问 Neural Magic 的 DeepSparse 文档。你还可以 探索 YOLO26 集成指南在 YouTube 上观看演示视频

此外,若要更广泛地了解各种 YOLO26 集成,请访问 Ultralytics 集成指南页面,在那里你可以发现其他一系列令人兴奋的集成可能性。

Link to this section常见问题解答#

Link to this section什么是 Neural Magic 的 DeepSparse Engine 以及它如何优化 YOLO26 性能?#

Neural Magic 的 DeepSparse Engine 是一款推理运行时,旨在通过稀疏化、剪枝和量化等先进技术来优化神经网络在 CPU 上的执行。通过将 DeepSparse 与 YOLO26 集成,你可以在标准 CPU 上实现类 GPU 的性能,从而显著提高推理速度、模型效率和整体性能,同时保持精度。更多详细信息,请查看 Neural Magic 的 DeepSparse 部分

Link to this section如何安装部署 YOLO26 所需的包以便使用 Neural Magic 的 DeepSparse?#

安装使用 Neural Magic 的 DeepSparse 部署 YOLO26 所需的包非常简单。你可以使用 CLI 轻松安装它们。以下是你需要运行的命令:

pip install deepsparse[yolov8]

安装后,请按照 安装部分 中提供的步骤设置你的环境并开始在 YOLO26 中使用 DeepSparse。

Link to this section如何将 YOLO26 模型转换为 ONNX 格式以供 DeepSparse 使用?#

要将 YOLO26 模型转换为 DeepSparse 所需的 ONNX 格式,你可以使用以下 CLI 命令:

yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13

此命令会将你的 YOLO26 模型 (yolo26n.pt) 导出为 DeepSparse Engine 可以使用的格式 (yolo26n.onnx)。有关模型导出的更多信息,请参阅 模型导出部分

Link to this section如何对 DeepSparse Engine 上的 YOLO26 性能进行基准测试?#

对 DeepSparse 上的 YOLO26 性能进行基准测试有助于你分析吞吐量和延迟,以确保你的模型已得到优化。你可以使用以下 CLI 命令运行基准测试:

deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

此命令将为你提供重要的性能指标。有关更多详细信息,请参阅 性能基准测试部分

Link to this section为什么我应该在目标检测任务中将 Neural Magic 的 DeepSparse 与 YOLO26 一起使用?#

将 Neural Magic 的 DeepSparse 与 YOLO26 集成具有多项优势:

  • 增强的推理速度: 最高可达 525 FPS(在 YOLO11n 上),展示了 DeepSparse 的优化能力。
  • 优化的模型效率: 使用稀疏化、剪枝和量化技术来降低模型规模和计算需求,同时保持精度。
  • 在标准 CPU 上实现高性能: 在经济高效的 CPU 硬件上提供类 GPU 的性能。
  • 精简的集成: 易于使用的工具,便于轻松部署和集成。
  • 灵活性: 支持标准 YOLO26 模型和经过稀疏化优化的 YOLO26 模型。
  • 经济高效: 通过高效的资源利用降低运营开支。

有关这些优势的深入了解,请访问 将 Neural Magic 的 DeepSparse 与 YOLO26 集成的优势部分

评论