Оптимизация выводов YOLO11 с помощью движка Neural Magic'DeepSparse Engine
При развертывании моделей обнаружения объектов, таких как Ultralytics YOLO11 на различных аппаратных средствах, вы можете столкнуться с такими уникальными проблемами, как оптимизация. Именно здесь на помощь приходит YOLO11'интеграция с Neural Magic'DeepSparse Engine. Она изменяет способ выполнения YOLO11 -моделей и обеспечивает GPU-уровень производительности непосредственно на центральных процессорах.
В этом руководстве показано, как развернуть YOLO11 с помощью Neural Magic'DeepSparse, как запустить выводы, а также как проверить производительность, чтобы убедиться, что она оптимизирована.
Neural Magic'DeepSparse
Neural MagicDeepSparse - это время выполнения вычислений, предназначенное для оптимизации работы нейронных сетей на центральных процессорах. В ней применяются такие передовые методы, как разреженность, обрезка и квантование, что позволяет значительно снизить вычислительные требования при сохранении точности. DeepSparse предлагает гибкое решение для эффективного и масштабируемого выполнения нейронных сетей на различных устройствах.
Преимущества интеграции Neural Magic'DeepSparse с YOLO11
Прежде чем перейти к рассмотрению того, как развернуть YOLOV8 с помощью DeepSparse, давайте разберемся в преимуществах использования DeepSparse. К ключевым преимуществам относятся:
- Повышенная скорость вычислений: Достигает 525 кадров в секунду (на YOLO11n), что значительно ускоряет работу YOLO11 с выводами по сравнению с традиционными методами.
- Оптимизированная эффективность модели: Использует обрезку и квантование для повышения эффективности YOLO11, уменьшая размер модели и вычислительные требования при сохранении точности.
-
Высокая производительность на стандартных процессорах: Обеспечивает производительность, подобную GPU, на центральных процессорах, предоставляя более доступный и экономичный вариант для различных приложений.
-
Оптимизированная интеграция и развертывание: Предлагает удобные инструменты для простой интеграции YOLO11 в приложения, включая функции аннотирования изображений и видео.
-
Поддержка различных типов моделей: Совместимость со стандартными и оптимизированными по разреженности моделями YOLO11 обеспечивает гибкость развертывания.
-
Экономически эффективное и масштабируемое решение: Сокращает эксплуатационные расходы и обеспечивает масштабируемое развертывание передовых моделей обнаружения объектов.
Как работает технология DeepSparse на сайте Neural Magic?
Neural MagicТехнология Deep Sparse вдохновлена эффективностью человеческого мозга в вычислениях нейронных сетей. Она использует два ключевых принципа работы мозга:
-
Разреженность: Процесс спарсификации заключается в удалении избыточной информации из сетей глубокого обучения, что приводит к созданию более компактных и быстрых моделей без ущерба для точности. Эта техника значительно уменьшает размер сети и вычислительные потребности.
-
Локальность ссылки: DeepSparse использует уникальный метод выполнения, разбивая сеть на Tensor колонки. Эти столбцы выполняются в глубину, полностью помещаясь в кэш CPU. Такой подход имитирует эффективность работы мозга, минимизируя перемещение данных и максимально используя кэш CPU.
Более подробную информацию о работе технологии DeepSparse, представленной на сайте Neural Magic, можно найти в их блоге.
Создание разреженной версии YOLO11 , обученной на пользовательском наборе данных
SparseZoo, репозиторий моделей с открытым исходным кодом Neural Magic, предлагает коллекцию предварительно спарсированных контрольных точек модели YOLO11 . С помощью SparseML, легко интегрированного с Ultralytics, пользователи могут без труда настраивать эти разреженные контрольные точки на своих конкретных наборах данных с помощью простого интерфейса командной строки.
Ознакомьтесь с документациейNeural Magic'SparseML YOLO11 для получения более подробной информации.
Использование: Развертывание YOLOV8 с помощью DeepSparse
Развертывание YOLO11 с помощью Neural Magic'DeepSparse включает в себя несколько простых шагов. Прежде чем погрузиться в инструкции по использованию, обязательно ознакомьтесь с ассортиментом моделейYOLO11 , предлагаемых сайтом Ultralytics. Это поможет вам выбрать наиболее подходящую модель, соответствующую требованиям вашего проекта. Вот как можно приступить к работе.
Шаг 1: Установка
Чтобы установить необходимые пакеты, выполните команду:
Шаг 2: Экспорт YOLO11 в формат ONNX
Для DeepSparse Engine требуются модели YOLO11 в формате ONNX . Экспорт модели в этот формат необходим для совместимости с DeepSparse. Используйте следующую команду для экспорта моделей в формат YOLO11 :
Экспорт моделей
Эта команда сохранит yolo11n.onnx
модель на ваш диск.
Шаг 3: Развертывание и запуск выводов
Получив модель YOLO11 в формате ONNX , вы можете развернуть и запустить выводы с помощью DeepSparse. Это легко сделать с помощью интуитивно понятного API Python :
Развертывание и запуск выводов
from deepsparse import Pipeline
# Specify the path to your YOLO11 ONNX model
model_path = "path/to/yolo11n.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: Сравнительный анализ производительности
Важно проверить, что ваша модель YOLO11 работает оптимально на DeepSparse. Вы можете провести сравнительный анализ производительности вашей модели, чтобы проанализировать пропускную способность и задержку:
Бенчмаркинг
Шаг 5: Дополнительные возможности
DeepSparse предоставляет дополнительные возможности для практической интеграции YOLO11 в такие приложения, как аннотирование изображений и оценка наборов данных.
Дополнительные функции
Выполнение команды annotate обрабатывает указанное изображение, обнаруживает объекты и сохраняет аннотированное изображение с ограничительными рамками и классификацией. Аннотированное изображение будет сохранено в папке annotation-results. Это позволяет получить наглядное представление о возможностях модели по обнаружению объектов.
После выполнения команды eval вы получите подробные выходные метрики, такие как точность, отзыв и mAP (средняя точность). Это дает полное представление о производительности вашей модели на наборе данных. Эта функция особенно полезна для тонкой настройки и оптимизации моделей YOLO11 для конкретных случаев использования, обеспечивая высокую точность и эффективность.
Резюме
В этом руководстве рассматривается интеграция Ultralytics' YOLO11 с Neural Magic'DeepSparse Engine. В нем рассказывается о том, как эта интеграция повышает производительность YOLO11 на платформах CPU , предлагая эффективность GPU-уровня и передовые методы разреженности нейронных сетей.
Для получения более подробной информации и расширенного использования посетите Neural Magic's DeepSparse documentation. Также ознакомьтесь с документацией Neural Magic по интеграции с YOLO11 здесь и посмотрите отличную сессию по этому вопросу здесь.
Кроме того, чтобы получить более полное представление о различных интеграциях YOLO11 , посетите страницу руководства по интеграцииUltralytics , где вы сможете открыть для себя ряд других интересных возможностей интеграции.
ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ
Что такое Neural Magic'DeepSparse Engine и как он оптимизирует производительность YOLO11 .
Neural MagicDeepSparse Engine - это среда выполнения вычислений, разработанная для оптимизации выполнения нейронных сетей на центральных процессорах с помощью таких передовых методов, как разреженность, обрезка и квантование. Интегрировав DeepSparse с YOLO11, вы сможете добиться производительности, подобной GPU, на стандартных процессорах, значительно увеличив скорость вычислений, эффективность моделей и общую производительность при сохранении точности. Более подробную информацию можно найти в разделеNeural Magic's DeepSparse.
Как установить пакеты, необходимые для развертывания YOLO11 с помощью Neural Magic'DeepSparse?
Установка пакетов, необходимых для развертывания YOLO11 с Neural Magic's DeepSparse, очень проста. Вы можете легко установить их с помощью CLI. Вот команда, которую вам нужно выполнить:
После установки выполните шаги, описанные в разделе "Установка", чтобы настроить среду и начать использовать DeepSparse с YOLO11.
Как преобразовать модели YOLO11 в формат ONNX для использования в DeepSparse?
Для преобразования моделей YOLO11 в формат ONNX , который необходим для совместимости с DeepSparse, можно использовать следующую команду CLI :
Эта команда экспортирует вашу модель YOLO11 (yolo11n.pt
) в формат (yolo11n.onnx
), которые могут быть использованы движком DeepSparse Engine. Более подробную информацию об экспорте моделей можно найти в разделе Раздел экспорта моделей.
Как проверить производительность YOLO11 на движке DeepSparse?
Бенчмаркинг производительности YOLO11 на DeepSparse поможет вам проанализировать пропускную способность и задержку, чтобы убедиться, что ваша модель оптимизирована. Для запуска бенчмарка можно использовать следующую команду CLI :
deepsparse.benchmark model_path="path/to/yolo11n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"
Эта команда предоставит вам важные показатели производительности. Для получения более подробной информации см. раздел "Бенчмаркинг производительности".
Почему я должен использовать Neural Magic'DeepSparse с YOLO11 для задач обнаружения объектов?
Интеграция Neural Magic'DeepSparse с YOLO11 дает несколько преимуществ:
- Повышенная скорость вывода: Достигает 525 кадров в секунду, значительно ускоряя возможности YOLO11.
- Оптимизированная эффективность модели: Используются методы разреженности, обрезки и квантования для уменьшения размера модели и вычислительных потребностей при сохранении точности.
- Высокая производительность на стандартных процессорах: Обеспечивает производительность, подобную GPU, на экономически эффективном CPU оборудовании.
- Оптимизированная интеграция: Удобные инструменты для простого развертывания и интеграции.
- Гибкость: Поддерживает как стандартные, так и оптимизированные по разреженности модели YOLO11 .
- Экономичность: Сокращение операционных расходов за счет эффективного использования ресурсов.
Более подробно об этих преимуществах читайте в разделе Преимущества интеграции Neural Magic'DeepSparse с YOLO11 .