Как тестировать производительность моделей Ultralytics YOLO, например YOLO11
Узнай, как тестировать производительность Ultralytics YOLO11, сравнивать её на разных устройствах и изучать различные форматы экспорта, чтобы оптимизировать скорость, точность и эффективность.
Abirami Vina7 мин. чтения
Сегодня доступно всё больше моделей ИИ, поэтому для получения точных и надёжных результатов важно выбрать наиболее подходящую модель для конкретной задачи. Модели различаются по скорости, точности и общей производительности. Как же определить, какая модель лучше всего подходит для той или иной задачи? Это особенно важно для систем реального времени, например беспилотных автомобилей, решений для безопасности и робототехники, где критически важны быстрые и надёжные решения.
Бенчмаркинг помогает ответить на этот вопрос, оценивая модель в различных условиях. Он показывает, насколько хорошо модель работает на разных конфигурациях оборудования, и помогает принимать более обоснованные решения.
Например, Ultralytics YOLO11 (впоследствии её сменила Ultralytics YOLO26) — это модель компьютерного зрения, которая поддерживает различные задачи анализа визуальных данных, такие как обнаружение объектов и сегментация экземпляров. Чтобы полностью оценить её возможности, сравни модели на разных конфигурациях и проверь, как она справляется с реальными сценариями.
В этой статье мы расскажем, как сравнить производительность моделей Ultralytics YOLO, например YOLO11, на разном оборудовании и оценить влияние различных форматов экспорта на скорость и эффективность.
Что такое бенчмаркинг моделей?#
Как понять, будет ли модель компьютерного зрения достаточно быстрой, точной и надёжной для применения в реальных условиях? Ответ на этот вопрос может дать бенчмаркинг модели. Бенчмаркинг моделей — это процесс тестирования и сравнения разных моделей ИИ, позволяющий определить, какая из них работает лучше.
Для этого нужно задать базовый уровень для сравнения, выбрать подходящие показатели производительности (например, точность или скорость) и тестировать все модели в одинаковых условиях. Результаты помогают определить сильные и слабые стороны каждой модели и упростить выбор решения для конкретной задачи ИИ. В частности, для объективного сравнения и оценки производительности модели в разных реальных сценариях часто используют датасет для тестирования производительности.

Рис. 1. Зачем проводить бенчмаркинг моделей компьютерного зрения? Изображение предоставлено автором.
Наглядный пример важности бенчмаркинга — приложения реального времени, например системы видеонаблюдения или робототехника, где даже небольшие задержки могут повлиять на принятие решений. Бенчмаркинг помогает оценить, способна ли модель быстро обрабатывать изображения и при этом выдавать надёжные предсказания.
Бенчмаркинг также играет важную роль в выявлении узких мест производительности. Если модель работает медленно или потребляет слишком много ресурсов, бенчмаркинг поможет выяснить, связана ли проблема с ограничениями оборудования, настройками модели или форматами экспорта. Эти сведения важны для выбора наиболее эффективной конфигурации.
Чем бенчмаркинг модели отличается от оценки и тестирования модели#
Бенчмаркинг, оценка и тестирование модели — распространённые термины в сфере ИИ, которые часто употребляются вместе. Хотя они похожи, это разные процессы с разными задачами. Тестирование модели проверяет производительность одной модели на тестовом наборе данных, измеряя такие показатели, как точность и скорость. Оценка модели идёт дальше: она анализирует результаты, чтобы определить сильные и слабые стороны модели и понять, насколько хорошо она работает в реальных условиях. В обоих случаях рассматривается только одна модель за раз.
Бенчмаркинг модели, напротив, сравнивает несколько моделей, используя одни и те же тесты и наборы данных. Он помогает определить, какая модель лучше справляется с конкретной задачей, показывая различия между моделями по точности, скорости и эффективности. Если тестирование и оценка сосредоточены на одной модели, то бенчмаркинг помогает выбрать подходящую (или лучшую), обеспечивая справедливое сравнение разных вариантов.

Рис. 2. Чем бенчмаркинг модели отличается от оценки и тестирования. Изображение предоставлено автором.
Обзор Ultralytics YOLO11#
Ultralytics YOLO11 — надёжная модель компьютерного зрения на базе ИИ, предназначенная для точного выполнения различных задач компьютерного зрения. Она превосходит предыдущие версии YOLO и включает множество функций для решения реальных задач. Например, её можно использовать для обнаружения объектов, классификации изображений, сегментации областей, отслеживания перемещений и многого другого. Модель также применима во многих отраслях — от безопасности до автоматизации и аналитики.

Рис. 3. Пример сегментации людей на изображении с помощью Ultralytics YOLO11.
Одно из ключевых преимуществ Ultralytics YOLO11 — простота использования. Всего несколько строк кода позволяют интегрировать её в проекты с ИИ, не тратя время на сложную настройку и не обладая глубокими техническими знаниями.
Модель также без проблем работает на разном оборудовании: она эффективно использует CPU (центральные процессоры), GPU (графические процессоры) и другие специализированные ускорители ИИ. Она обеспечивает высокую производительность как на периферийных устройствах, так и на облачных серверах.
Ultralytics YOLO11 доступна в разных размерах моделей, каждый из которых оптимизирован для своих задач. Сравнение производительности помогает определить, какая версия лучше всего подходит для твоих потребностей. Например, такое сравнение может показать, что небольшие модели — nano или small — обычно работают быстрее, но иногда уступают в точности.
Как проводить бенчмаркинг моделей YOLO, таких как Ultralytics YOLO11#
Теперь, когда мы разобрались, что такое сравнение производительности и почему оно важно, давай посмотрим, как сравнить модели YOLO, например Ultralytics YOLO11, и оценить их эффективность, чтобы получить полезные выводы.
Для начала установи пакет Ultralytics для Python, выполнив в терминале или командной строке следующую команду: “pip install ultralytics”. Если при установке возникнут проблемы, загляни в наше руководство по распространённым проблемам, где есть советы по их устранению.
После установки пакета ты сможешь легко провести бенчмаркинг Ultralytics YOLO11 всего несколькими строками кода на Python:
from ultralytics.utils.benchmarks import benchmark
# Бенчмаркинг на GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, device=0)При запуске приведённого выше кода измеряется скорость обработки изображений моделью, количество кадров, которое она может обработать за секунду, и точность обнаружения объектов.
Упоминание “coco8.yaml” в коде означает файл конфигурации набора данных, основанный на наборе данных COCO8 (общие объекты в контексте) — небольшой демонстрационной версии полного набора данных COCO, которую часто используют для тестирования и экспериментов.
Если ты тестируешь Ultralytics YOLO11 для конкретного приложения, например мониторинга дорожного движения или медицинской визуализации, то релевантный набор данных (например, набор данных о дорожном движении или медицинский набор данных) даст более точные результаты. Бенчмаркинг на COCO даёт общее представление о производительности, но для получения наилучших результатов можно выбрать набор данных, отражающий реальные условия применения.
Как интерпретировать результаты бенчмаркинга Ultralytics YOLO11#
После бенчмаркинга Ultralytics YOLO11 следующий шаг — интерпретация результатов. По завершении бенчмаркинга ты увидишь в результатах различные числовые значения. Эти метрики помогают оценить точность и скорость работы YOLO11.
Вот несколько важных метрик бенчмаркинга Ultralytics YOLO11, на которые стоит обратить внимание:
- mAP50-95: Измеряет точность обнаружения объектов. Чем выше значение, тем лучше модель распознаёт объекты.
- accuracy_top5: Обычно используется для задач классификации. Показывает, как часто правильная метка оказывается среди пяти наиболее вероятных предсказаний.
- Время инференса: Время обработки одного изображения, измеряемое в миллисекундах. Чем меньше значение, тем быстрее обработка.

Рис. 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 в конкретном формате. Приведённый ниже код запускает бенчмаркинг YOLO11 в формате ONNX, который широко используется для запуска моделей ИИ как на CPU, так и на GPU.
from ultralytics.utils.benchmarks import benchmark
# Бенчмаркинг модели в конкретном формате экспорта (например, ONNX)
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")Помимо результатов сравнения производительности, выбор подходящего формата зависит от характеристик системы и требований к развёртыванию. Например, беспилотным автомобилям нужно быстро обнаруживать объекты. Если ты планируешь ускорить работу с помощью GPU NVIDIA, формат TensorRT станет оптимальным выбором для запуска Ultralytics YOLO11 на GPU NVIDIA.

Рис. 5. Обнаружение объектов в беспилотных автомобилях с помощью YOLO11.
Главные выводы#
Пакет Ultralytics для Python упрощает бенчмаркинг YOLO11 благодаря простым командам, которые выполняют тестирование производительности за тебя. Всего за несколько шагов можно увидеть, как разные конфигурации влияют на скорость и точность моделей, и принять обоснованное решение без глубоких технических знаний.
Правильно выбранное оборудование и настройки тоже могут существенно повлиять на результат. Настраивая такие параметры, как размер модели и набор данных, можно добиться максимальной производительности Ultralytics YOLO11 — как на мощном GPU, так и локально на периферийном устройстве.
Присоединяйся к нашему сообществу и изучай наши проекты в области ИИ в репозитории на GitHub. Узнай о возможностях ИИ в сельском хозяйстве и роли компьютерного зрения в производстве на страницах наших решений. Ознакомься с вариантами лицензирования и начни свой путь в ИИ прямо сейчас!
Автор
Комментарии
Задай вопрос, поделись результатами или помоги кому-нибудь.










