YOLOv5 против YOLOX: Всестороннее техническое сравнение.
Эволюция компьютерного зрения в реальном времени ознаменовалась многочисленными вехами, когда различные архитектуры расширяли границы скорости и точности. Две весьма влиятельные модели в этой области — это YOLOv5 и YOLOX. Хотя обе известны своей высокой производительностью в обнаружении объектов, они используют принципиально разные архитектурные подходы.
Это руководство предоставляет углубленный технический анализ этих двух моделей, сравнивая их архитектуры, метрики производительности, методологии обучения и идеальные сценарии развертывания, чтобы помочь разработчикам и исследователям выбрать правильный инструмент для их проектов в области компьютерного зрения.
Обзоры моделей и архитектурные различия
Ultralytics YOLOv5
- Автор: Гленн Джокер
- Организация:Ultralytics
- Дата: 2020-06-26
- GitHub:Репозиторий Ultralytics YOLOv5
- Документация:Официальная документация YOLOv5
Представленный Ultralytics, YOLOv5 быстро стал отраслевым стандартом благодаря исключительному балансу производительности, простоты использования и эффективности памяти. Построенный нативно на фреймворке PyTorch, YOLOv5 использует анкерную архитектуру. Он опирается на предопределенные формы ограничивающих рамок для предсказания местоположения объектов, что делает его высокоэффективным для стандартных задач обнаружения объектов.
Одно из величайших преимуществ YOLOv5 — это его хорошо поддерживаемая экосистема. Она может похвастаться обширной документацией, невероятно простым Python API и нативной интеграцией с Ultralytics Platform. Это позволяет разработчикам беспрепятственно переходить от разметки наборов данных к обучению и экспорту в такие форматы, как ONNX и TensorRT.
Преимущество экосистемы
Модели Ultralytics YOLO обычно требуют значительно меньше памяти GPU во время обучения по сравнению со сложными альтернативами на основе трансформеров. Этот низкий объем потребляемой памяти делает YOLOv5 очень доступным для исследователей, работающих с потребительским оборудованием.
Megvii YOLOX
- Авторы: Чжэн Ге, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация:Megvii
- Дата: 2021-07-18
- Arxiv:YOLOX: Exceeding YOLO Series in 2021
- GitHub:Megvii YOLOX Repository
- Документация:YOLOX на ReadTheDocs
Разработанный исследователями Megvii, YOLOX пошел по другому пути, представив безанкерную архитектуру для семейства YOLO. Устраняя якорные боксы, YOLOX упрощает голову обнаружения и значительно сокращает количество эвристических параметров, требующих ручной настройки во время обучения.
YOLOX также включает в себя разделенную голову (decoupled head)—разделяющую задачи классификации и регрессии на разные ветви сети—и использует стратегию назначения меток SimOTA. Эти инновации сокращают разрыв между академическими исследованиями и промышленными применениями, делая YOLOX особенно эффективным в средах с сильно варьирующимися масштабами объектов.
Производительность и метрики
При оценке моделей компьютерного зрения критически важен компромисс между средней точностью (mAP) и скоростью инференса. Обе модели предлагают широкий диапазон размеров (от Nano до Extra-Large) для соответствия различным аппаратным ограничениям.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Хотя YOLOXx достигает немного более высокой пиковой точности (51.1 mAP), YOLOv5 предоставляет гораздо более надежный и тщательно протестированный конвейер развертывания на оборудовании CPU и GPU. Скорости TensorRT для YOLOv5 подчеркивают его глубокую оптимизацию для периферийных вычислительных устройств, что делает его очень надежным выбором для анализа видео в реальном времени.
Методологии обучения и удобство использования
Опыт разработчика значительно различается между этими двумя архитектурами.
Подход YOLOX
Обучение YOLOX обычно требует клонирования оригинального репозитория, управления специфическими зависимостями и выполнения сложных скриптов командной строки. Хотя он поддерживает расширенные функции, такие как обучение со смешанной точностью и многоузловые конфигурации через MegEngine, кривая обучения может быть крутой для разработчиков, которым требуется быстрое прототипирование.
Преимущество Ultralytics
В отличие от этого, Ultralytics ставит во главу угла исключительно оптимизированный пользовательский опыт. С ultralytics Пакет python, разработчики могут загружать, обучать и валидировать модель с минимальным количеством шаблонного кода. Ultralytics автоматически обрабатывает сложные аугментации данных, эволюцию гиперпараметров и планирование скорости обучения.
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
Кроме того, универсальность YOLOv5 выходит за рамки стандартного обнаружения объектов, предлагая надежную поддержку для классификации изображений и сегментации экземпляров в рамках одного и того же согласованного API.
Оптимизированное развертывание
После завершения обучения экспорт модели YOLOv5 в CoreML, TFLite или OpenVINO так же прост, как запуск model.export(format="onnx"). Это устраняет необходимость в сторонних скриптах конвертации, которые обычно требуются для репозиториев, ориентированных на исследования.
Приложения в реальном мире
Выбор между этими моделями зависит от вашей среды развертывания и технических требований:
- Управление розничной торговлей и запасами: Для приложений, требующих распознавания товаров в реальном времени на периферийных устройствах, таких как NVIDIA Jetson, YOLOv5 исключительно хорошо подходит. Его минимальное потребление памяти и высокая скорость инференса с TensorRT позволяют отслеживать объекты с нескольких камер без потери кадров.
- Академические исследования и пользовательские архитектуры:YOLOX высоко ценится в исследовательском сообществе. Его разделенная голова и безанкерная природа делают его отличной отправной точкой для инженеров, желающих экспериментировать с новыми стратегиями присвоения меток или работающих с наборами данных, где традиционные анкерные боксы не могут обобщаться.
- Сельскохозяйственный ИИ: Для задач точного земледелия, таких как обнаружение фруктов или идентификация сорняков с помощью дронов, простота обучения и развертывания моделей YOLOv5 с использованием Ultralytics Platform позволяет экспертам в предметной области внедрять ИИ-решения без глубоких знаний в области инженерии машинного обучения.
Сценарии использования и рекомендации
Выбор между YOLOv5 и YOLOX зависит от ваших конкретных требований к проекту, ограничений развертывания и предпочтений экосистемы.
Когда выбирать YOLOv5
YOLOv5 является оптимальным выбором для:
- Проверенные производственные системы: Существующие развертывания, где ценятся долгий track-рекорд стабильности YOLOv5, обширная документация и массивная поддержка сообщества.
- Обучение с ограниченными ресурсами: Среды с ограниченными ресурсами GPU, где эффективный конвейер обучения YOLOv5 и низкие требования к памяти являются преимуществом.
- Обширная поддержка форматов экспорта: Проекты, требующие развертывания во многих форматах, включая ONNX, TensorRT, CoreML и TFLite.
Когда следует выбирать YOLOX
YOLOX рекомендуется для:
- Исследования безъякорного detect: Академические исследования, использующие чистую, безъякорную архитектуру YOLOX в качестве основы для экспериментов с новыми головами detect или функциями потерь.
- Сверхлегкие граничные устройства: Развертывание на микроконтроллерах или устаревшем мобильном оборудовании, где критически важен чрезвычайно малый объем (0,91 млн параметров) варианта YOLOX-Nano.
- Исследования по назначению меток SimOTA: Исследовательские проекты, изучающие стратегии назначения меток на основе оптимального транспорта и их влияние на сходимость обучения.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Будущее ИИ для зрения: Представляем YOLO26
Хотя YOLOv5 и YOLOX закрепили свои места в истории компьютерного зрения, область быстро развивается. Разработчикам, начинающим новые проекты сегодня, Ultralytics настоятельно рекомендует изучить свою новейшую флагманскую модель, YOLO26.
Выпущенный в январе 2026 года, YOLO26 представляет собой огромный шаг вперед как в производительности, так и в удобстве использования. Он представляет собой прорывной сквозной дизайн без NMS, полностью устраняющий постобработку Non-Maximum Suppression. Это значительно снижает изменчивость задержки и упрощает логику развертывания на маломощных устройствах.
Кроме того, YOLO26 использует новый оптимизатор MuSGD — гибрид SGD и Muon, вдохновленный инновациями в обучении LLM — для невероятно стабильной и быстрой сходимости. Благодаря удалению DFL (Distribution Focal Loss удалена для упрощенного экспорта и лучшей совместимости с периферийными/маломощными устройствами) YOLO26 достигает до 43% более быстрого вывода на CPU, укрепляя свои позиции в качестве идеальной модели для современных периферийных вычислений, робототехники и приложений IoT. Дополнительно, ProgLoss + STAL обеспечивает улучшенные функции потерь с заметными улучшениями в распознавании мелких объектов, что критически важно для IoT, робототехники и аэрофотосъемки. Пользователи, заинтересованные в предыдущих поколениях, также могут рассмотреть YOLO11, хотя YOLO26 является бесспорным выбором, представляющим собой последнее слово техники.
Заключение
YOLOv5 и YOLOX обе предлагают невероятные возможности обнаружения объектов. YOLOX расширил архитектурные границы, доказав, что безанкерные (anchor-free) конструкции могут конкурировать и превосходить традиционные методы в 2021 году. Однако YOLOv5 остается доминирующей силой благодаря своей беспрецедентной простоте использования, обширной экосистеме и более низким требованиям к памяти во время обучения.
Для подавляющего большинства коммерческих приложений экосистема Ultralytics обеспечивает самый быстрый путь от необработанного набора данных до развернутой производственной модели. Будь то использование проверенного YOLOv5 или обновление до передового YOLO26, разработчики получают выгоду от фреймворка, разработанного для того, чтобы сделать компьютерное зрение доступным, эффективным и высокопроизводительным.