YOLO Vision 2026:

Оптимизация инференса YOLO26 с помощью движка DeepSparse от Neural Magic#

При развертывании моделей object detection, таких как Ultralytics YOLO26, на различном железе ты можешь столкнуться с уникальными проблемами, например с оптимизацией. Именно здесь на помощь приходит интеграция YOLO26 с движком DeepSparse от Neural Magic. Она меняет подход к выполнению моделей YOLO26 и обеспечивает производительность уровня GPU прямо на CPU.

В этом руководстве показано, как развернуть YOLO26 с использованием DeepSparse от Neural Magic, как запускать инференс, а также как проводить бенчмаркинг производительности, чтобы убедиться в ее оптимизации.

Окончание срока поддержки SparseML

Компания Neural Magic была acquired by Red Hat in January 2025 и прекращает поддержку сообщества для своих библиотек deepsparse, sparseml, sparsezoo и sparsify. Дополнительную информацию см. в уведомлении, опубликованном in the Readme on the sparsify GitHub repository.

DeepSparse от Neural Magic#

Neural Magic's DeepSparse Overview

Neural Magic's DeepSparse — это среда выполнения выводов, созданная для оптимизации работы нейросетей на CPU. Она применяет передовые методы, такие как разреженность (sparsity), прунинг и квантование, чтобы кардинально снизить требования к вычислительным ресурсам при сохранении точности. DeepSparse предлагает гибкое решение для эффективного и масштабируемого выполнения neural network на различных устройствах.

Преимущества интеграции DeepSparse от Neural Magic с YOLO26#

Прежде чем переходить к тому, как развернуть YOLO26 с помощью DeepSparse, давай разберемся в преимуществах использования DeepSparse. Вот некоторые ключевые плюсы:

  • Увеличенная скорость инференса: достигает до 525 FPS (на YOLO11n), значительно ускоряя возможности инференса YOLO по сравнению с традиционными методами.

Neural Magic DeepSparse inference acceleration

  • Оптимизированная эффективность модели: использует прунинг и квантование для повышения эффективности YOLO26, уменьшая размер модели и требования к вычислениям при сохранении accuracy.

Neural Magic model optimization and pruning

  • Высокая производительность на стандартных CPU: обеспечивает производительность, сравнимую с GPU, на CPU, предоставляя более доступный и экономичный вариант для различных приложений.

  • Упрощенная интеграция и развертывание: предлагает удобные инструменты для легкой интеграции YOLO26 в приложения, включая функции аннотирования изображений и видео.

  • Поддержка различных типов моделей: совместима как со стандартными, так и с оптимизированными по разреженности моделями YOLO26, что добавляет гибкости при развертывании.

  • Экономичное и масштабируемое решение: снижает эксплуатационные расходы и обеспечивает масштабируемое развертывание современных моделей обнаружения объектов.

Как работает технология DeepSparse от Neural Magic?#

Технология DeepSparse от Neural Magic вдохновлена эффективностью человеческого мозга при вычислениях в нейронных сетях. Она перенимает два ключевых принципа работы мозга:

  • Разреженность (Sparsity): процесс разреживания заключается в удалении избыточной информации из сетей deep learning, что приводит к созданию более компактных и быстрых моделей без ущерба для точности. Этот метод значительно уменьшает размер сети и её вычислительные потребности.

  • Локальность ссылок (Locality of Reference): DeepSparse использует уникальный метод выполнения, разбивая сеть на Tensor Columns. Эти колонки выполняются по глубине, полностью помещаясь в кэш CPU. Такой подход имитирует эффективность мозга, минимизируя перемещение данных и максимизируя использование кэша CPU.

How Neural Magic's DeepSparse Technology Works

Создание разреженной версии YOLO26, обученной на собственном наборе данных#

SparseZoo, репозиторий моделей с открытым исходным кодом от Neural Magic, предлагает a collection of pre-sparsified YOLO26 model checkpoints. С помощью SparseML, плавно интегрированного с Ultralytics, пользователи могут легко дообучать эти разреженные чекпоинты на своих датасетах с помощью простого интерфейса командной строки.

Ознакомься с Neural Magic's SparseML YOLO26 documentation для получения дополнительной информации.

Использование: развертывание YOLO26 с помощью DeepSparse#

Развертывание YOLO26 с использованием DeepSparse от Neural Magic состоит из нескольких простых шагов. Прежде чем переходить к инструкциям по использованию, обязательно изучи ассортимент YOLO26 models offered by Ultralytics. Это поможет тебе выбрать наиболее подходящую модель для требований твоего проекта. Вот как можно начать.

Шаг 1: Установка#

Чтобы установить необходимые пакеты, выполни:

Установка
# Install the required packages
pip install deepsparse[yolov8]

Шаг 2: Экспорт YOLO26 в формат ONNX#

Движок DeepSparse требует модели YOLO26 в ONNX format. Экспорт твоей модели в этот формат необходим для совместимости с DeepSparse. Используй следующую команду для экспорта моделей YOLO26:

Экспорт модели
# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13

Эта команда сохранит модель yolo26n.onnx на твой диск.

Шаг 3: Развертывание и запуск инференса#

Имея модель YOLO26 в формате ONNX, ты можешь развернуть и запустить инференс с помощью 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)

Шаг 4: Бенчмаркинг производительности#

Важно убедиться, что твоя модель YOLO26 работает оптимально на DeepSparse. Ты можешь benchmark производительность модели для анализа пропускной способности и задержки:

Бенчмаркинг
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Шаг 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

После запуска команды оценки ты получишь подробные метрики вывода, такие как precision, recall и mAP (средняя точность). Это дает полное представление о производительности модели на датасете и особенно полезно для точной настройки и оптимизации моделей YOLO26 под конкретные задачи, гарантируя высокую точность и эффективность.

Резюме#

В этом руководстве рассматривается интеграция Ultralytics YOLO26 с движком DeepSparse от Neural Magic. Оно подчеркивает, как эта интеграция повышает производительность YOLO26 на CPU-платформах, предлагая эффективность уровня GPU и передовые методы разреженности нейронных сетей.

Для получения более подробной информации и расширенного использования посети DeepSparse documentation by Neural Magic. Ты также можешь explore the YOLO26 integration guide и watch a walkthrough session on YouTube.

Кроме того, для более широкого понимания различных интеграций YOLO26 посети Ultralytics integration guide page, где ты сможешь найти множество других интересных возможностей интеграции.

FAQ#

  • Движок DeepSparse от Neural Magic — это среда выполнения выводов, созданная для оптимизации работы нейросетей на CPU с помощью передовых методов, таких как разреженность, прунинг и квантование. Интегрируя DeepSparse с YOLO26, ты получаешь производительность уровня GPU на стандартных CPU, значительно повышая скорость вывода, эффективность модели и общую производительность при сохранении точности. Для получения дополнительной информации загляни в Neural Magic's DeepSparse section.

  • Установка необходимых пакетов для развертывания YOLO26 с помощью DeepSparse от Neural Magic очень проста. Ты можешь легко установить их с помощью CLI. Вот команда, которую тебе нужно запустить:

    pip install deepsparse[yolov8]

    После установки следуй шагам из Installation section, чтобы настроить окружение и начать использовать DeepSparse с YOLO26.

  • Для конвертации моделей YOLO26 в формат ONNX, который требуется для совместимости с DeepSparse, ты можешь использовать следующую команду CLI:

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

    Эта команда экспортирует твою модель YOLO26 (yolo26n.pt) в формат (yolo26n.onnx), который может использоваться движком DeepSparse. Более подробную информацию об экспорте моделей можно найти в Model Export section.

  • Бенчмаркинг производительности YOLO26 на DeepSparse помогает тебе анализировать пропускную способность и задержку, чтобы убедиться, что твоя модель оптимизирована. Ты можешь использовать следующую команду CLI для запуска бенчмарка:

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

    Эта команда предоставит тебе важнейшие метрики производительности. Дополнительную информацию см. в Benchmarking Performance section.

  • Интеграция DeepSparse от Neural Magic с YOLO26 дает несколько преимуществ:

    • Увеличенная скорость инференса: достигает до 525 FPS (на YOLO11n), демонстрируя возможности оптимизации DeepSparse.
    • Оптимизированная эффективность модели: использует методы разреженности, прунинга и квантования для уменьшения размера модели и вычислительных потребностей при сохранении точности.
    • Высокая производительность на стандартных CPU: предлагает производительность уровня GPU на экономичном CPU-оборудовании.
    • Упрощенная интеграция: удобные инструменты для легкого развертывания и интеграции.
    • Гибкость: поддерживает как стандартные, так и оптимизированные по разреженности модели YOLO26.
    • Экономичность: снижает эксплуатационные расходы за счет эффективного использования ресурсов.

    Чтобы углубиться в эти преимущества, перейди в раздел Benefits of Integrating Neural Magic's DeepSparse with YOLO26 section.

Комментарии