Link to this sectionОптимизация инференса YOLO26 с помощью движка DeepSparse от Neural Magic#
При развертывании моделей обнаружения объектов, таких как Ultralytics YOLO26, на различном оборудовании ты можешь столкнуться с уникальными проблемами, например, с оптимизацией. Именно здесь на помощь приходит интеграция YOLO26 с движком DeepSparse от Neural Magic. Она меняет способ выполнения моделей YOLO26 и обеспечивает производительность уровня GPU непосредственно на CPU.
В этом руководстве показано, как развернуть YOLO26 с использованием DeepSparse от Neural Magic, как запускать инференс, а также как проводить бенчмаркинг производительности, чтобы убедиться в ее оптимизации.
Компания Neural Magic была приобретена Red Hat в январе 2025 года, и прекращает поддержку версий своих библиотек deepsparse, sparseml, sparsezoo и sparsify для сообщества. Дополнительную информацию смотри в уведомлении, опубликованном в Readme в репозитории sparsify на GitHub.
Link to this sectionDeepSparse от Neural Magic#
DeepSparse от Neural Magic — это среда выполнения инференса, предназначенная для оптимизации работы нейронных сетей на CPU. Она применяет передовые методы, такие как разреженность (sparsity), прунинг и квантование, чтобы кардинально снизить вычислительные требования при сохранении точности. DeepSparse предлагает гибкое решение для эффективного и масштабируемого выполнения нейронных сетей на различных устройствах.
Link to this sectionПреимущества интеграции DeepSparse от Neural Magic с YOLO26#
Прежде чем переходить к тому, как развернуть YOLO26 с помощью DeepSparse, давай разберемся в преимуществах использования DeepSparse. Вот некоторые ключевые плюсы:
- Увеличенная скорость инференса: достигает до 525 FPS (на YOLO11n), значительно ускоряя возможности инференса YOLO по сравнению с традиционными методами.
- Оптимизированная эффективность модели: использует прунинг и квантование для повышения эффективности YOLO26, уменьшая размер модели и вычислительные требования при сохранении точности.
-
Высокая производительность на стандартных CPU: обеспечивает производительность, сравнимую с GPU, на CPU, предоставляя более доступный и экономичный вариант для различных приложений.
-
Упрощенная интеграция и развертывание: предлагает удобные инструменты для легкой интеграции YOLO26 в приложения, включая функции аннотирования изображений и видео.
-
Поддержка различных типов моделей: совместима как со стандартными, так и с оптимизированными по разреженности моделями YOLO26, что добавляет гибкости при развертывании.
-
Экономичное и масштабируемое решение: снижает эксплуатационные расходы и обеспечивает масштабируемое развертывание современных моделей обнаружения объектов.
Link to this sectionКак работает технология DeepSparse от Neural Magic?#
Технология DeepSparse от Neural Magic вдохновлена эффективностью человеческого мозга при вычислениях в нейронных сетях. Она перенимает два ключевых принципа работы мозга:
-
Разреженность (Sparsity): процесс спарсификации включает в себя удаление избыточной информации из сетей глубокого обучения, что приводит к созданию более компактных и быстрых моделей без потери точности. Этот метод значительно снижает размер сети и вычислительные потребности.
-
Локальность ссылок (Locality of Reference): DeepSparse использует уникальный метод выполнения, разбивая сеть на Tensor Columns. Эти колонки выполняются по глубине, полностью помещаясь в кэш CPU. Такой подход имитирует эффективность мозга, минимизируя перемещение данных и максимизируя использование кэша CPU.
Link to this sectionСоздание разреженной версии YOLO26, обученной на собственном наборе данных#
SparseZoo, репозиторий моделей с открытым исходным кодом от Neural Magic, предлагает коллекцию предварительно разреженных чекпоинтов моделей YOLO26. С помощью SparseML, бесшовно интегрированного с Ultralytics, ты можешь легко дообучить эти разреженные чекпоинты на своих специфических наборах данных, используя простой интерфейс командной строки.
Ознакомься с документацией Neural Magic SparseML по YOLO26 для получения более подробной информации.
Link to this sectionИспользование: развертывание YOLO26 с помощью DeepSparse#
Развертывание YOLO26 с помощью DeepSparse от Neural Magic включает несколько простых шагов. Прежде чем переходить к инструкциям по использованию, обязательно изучи ассортимент моделей YOLO26, предлагаемых Ultralytics. Это поможет тебе выбрать наиболее подходящую модель для требований твоего проекта. Вот как ты можешь начать.
Link to this sectionШаг 1: Установка#
Чтобы установить необходимые пакеты, выполни:
# Install the required packages
pip install deepsparse[yolov8]Link to this sectionШаг 2: Экспорт YOLO26 в формат ONNX#
Движку DeepSparse требуются модели 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: Развертывание и запуск инференса#
Имея модель 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)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. Это помогает получить наглядное представление о возможностях обнаружения модели.
После запуска команды eval ты получишь подробные выходные метрики, такие как precision, recall и mAP (средняя точность). Это дает комплексное представление о производительности твоей модели на наборе данных и особенно полезно для дообучения и оптимизации твоих моделей YOLO26 под конкретные задачи, обеспечивая высокую точность и эффективность.
Link to this sectionРезюме#
В этом руководстве рассматривается интеграция Ultralytics YOLO26 с движком DeepSparse от Neural Magic. Оно подчеркивает, как эта интеграция повышает производительность YOLO26 на CPU-платформах, предлагая эффективность уровня GPU и передовые методы разреженности нейронных сетей.
Для получения более подробной информации и расширенного использования посети документацию DeepSparse от Neural Magic. Ты также можешь изучить руководство по интеграции YOLO26 и посмотреть пошаговое руководство на YouTube.
Кроме того, для более широкого понимания различных интеграций YOLO26, посети страницу руководства по интеграциям Ultralytics, где ты сможешь открыть для себя целый ряд других интересных возможностей интеграции.
Link to this sectionFAQ#
Link to this sectionЧто такое движок DeepSparse от Neural Magic и как он оптимизирует производительность YOLO26?#
Движок DeepSparse от Neural Magic — это среда выполнения инференса, предназначенная для оптимизации работы нейронных сетей на CPU с помощью передовых методов, таких как разреженность, прунинг и квантование. Интегрируя DeepSparse с YOLO26, ты можешь достичь производительности уровня GPU на стандартных CPU, значительно увеличивая скорость инференса, эффективность модели и общую производительность при сохранении точности. Для получения более подробной информации ознакомься с разделом DeepSparse от Neural Magic.
Link to this sectionКак мне установить необходимые пакеты для развертывания YOLO26 с использованием DeepSparse от Neural Magic?#
Установка необходимых пакетов для развертывания YOLO26 с помощью DeepSparse от Neural Magic очень проста. Ты можешь легко установить их с помощью CLI. Вот команда, которую тебе нужно запустить:
pip install deepsparse[yolov8]После установки следуй шагам, описанным в разделе Установка, чтобы настроить свое окружение и начать использовать DeepSparse с YOLO26.
Link to this sectionКак мне конвертировать модели YOLO26 в формат ONNX для использования с DeepSparse?#
Для конвертации моделей YOLO26 в формат ONNX, который требуется для совместимости с DeepSparse, ты можешь использовать следующую команду CLI:
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13Эта команда экспортирует твою модель YOLO26 (yolo26n.pt) в формат (yolo26n.onnx), который может использоваться движком DeepSparse. Более подробную информацию об экспорте моделей можно найти в разделе Экспорт модели.
Link to this sectionКак мне провести бенчмаркинг производительности YOLO26 на движке DeepSparse?#
Бенчмаркинг производительности YOLO26 на DeepSparse помогает тебе анализировать пропускную способность и задержку, чтобы убедиться, что твоя модель оптимизирована. Ты можешь использовать следующую команду CLI для запуска бенчмарка:
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"Эта команда предоставит тебе важные метрики производительности. Для получения более подробной информации смотри раздел Бенчмаркинг производительности.
Link to this sectionПочему мне стоит использовать DeepSparse от Neural Magic с YOLO26 для задач обнаружения объектов?#
Интеграция DeepSparse от Neural Magic с YOLO26 дает несколько преимуществ:
- Увеличенная скорость инференса: достигает до 525 FPS (на YOLO11n), демонстрируя возможности оптимизации DeepSparse.
- Оптимизированная эффективность модели: использует методы разреженности, прунинга и квантования для уменьшения размера модели и вычислительных потребностей при сохранении точности.
- Высокая производительность на стандартных CPU: предлагает производительность уровня GPU на экономичном CPU-оборудовании.
- Упрощенная интеграция: удобные инструменты для легкого развертывания и интеграции.
- Гибкость: поддерживает как стандартные, так и оптимизированные по разреженности модели YOLO26.
- Экономичность: снижает эксплуатационные расходы за счет эффективного использования ресурсов.
Чтобы углубиться в эти преимущества, посети раздел Преимущества интеграции DeepSparse от Neural Magic с YOLO26.