YOLOX против YOLOv5: подробное сравнение архитектуры и производительности
Выбор правильной модели для обнаружения объектов — это критически важное решение, от которого зависит успех любого проекта в области компьютерного зрения. Это руководство содержит исчерпывающее техническое сравнение двух ключевых моделей в сфере ИИ: YOLOX от Megvii и Ultralytics YOLOv5. Анализируя их архитектуры, показатели производительности и экосистемы обучения, мы стремимся помочь разработчикам и исследователям сделать обоснованный выбор для их конкретных сред развертывания.
Знакомство с моделями
Обе модели появились в период бурного прогресса в области обнаружения объектов в реальном времени, однако они использовали разные архитектурные подходы для достижения своей производительности.
YOLOX: подход без анкоров
Представленная исследователями Чжэн Гэ, Сунтао Лю, Фэн Ваном, Земин Ли и Цзянь Сунем из Megvii 18 июля 2021 года, модель YOLOX совершила значительный сдвиг, отказавшись от традиционных анкорных боксов. Как задокументировано в их техническом отчете на Arxiv, YOLOX объединила безъякорный дизайн с разделенной головой (decoupled head) и стратегией назначения меток SimOTA. Этот дизайн был направлен на преодоление разрыва между академическими исследованиями и промышленным применением, предлагая высокую производительность на стандартных наборах данных.
YOLOv5: стандарт для промышленного ИИ в компьютерном зрении
Созданная Гленном Джочером и выпущенная Ultralytics 26 июня 2020 года, YOLOv5 быстро стала отраслевым стандартом для развертываемых систем компьютерного зрения. Построенная нативно на фреймворке PyTorch, она демократизировала передовой ИИ, предложив непревзойденную простоту использования, исключительно быстрое обучение и высококачественный репозиторий. Архитектура YOLOv5 сфокусирована на идеальном балансе скорости, точности и легкости развертывания, что сделало её фаворитом для всего: от граничных устройств до масштабных облачных развертываний.
Архитектурные различия
Понимание основных механических различий между этими сетями проясняет, почему они показывают разные результаты при выполнении различных задач.
Безъякорный vs. анкорный подход
Наиболее заметное различие заключается в безъякорном механизме YOLOX. Традиционные модели, такие как YOLOv5, полагаются на предопределенные анкорные боксы для прогнозирования ограничивающих рамок, что требует кластерного анализа обучающего набора данных для определения оптимальных размеров анкоров. YOLOX устраняет это, предсказывая координаты ограничивающих рамок непосредственно в каждой пространственной локации. Хотя безъякорный подход сокращает количество параметров проектирования и эвристических настроек, усовершенствованный анкорный подход YOLOv5, дополненный функцией автоматических анкоров, обеспечивает невероятно стабильную и предсказуемую сходимость при обучении «из коробки».
Разделенная голова (decoupled head) vs. сопряженная голова (coupled head)
YOLOX использует разделенную голову, что означает, что задачи классификации и регрессии разделены на отдельные ветви нейронной сети. Авторы утверждали, что это разрешает конфликты между обучением пространственным и семантическим признакам. Напротив, YOLOv5 использовала высокооптимизированную сопряженную голову (в ранних версиях), которая максимизировала вычислительную эффективность и снижала задержку логического вывода, что критически важно для граничных вычислений в реальном времени.
Стратегия назначения меток
YOLOX использует SimOTA для назначения меток, что формулирует сопоставление объектов «ground truth» с прогнозами как задачу оптимального транспорта. Это динамическое назначение улучшает работу со сценами с высокой плотностью объектов. YOLOv5 применяет надежное назначение на основе правил формы, гарантируя, что качественные положительные образцы стабильно подаются в функцию потерь, что способствует её легендарной стабильности при обучении.
Производительность и бенчмарки
Баланс между скоростью и точностью — это главный тест для этих архитектур. Приведенная ниже таблица иллюстрирует производительность моделей различных размеров на стандартных бенчмарках.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Хотя YOLOX достигает конкурентоспособных оценок mAP, особенно в своих крупных вариантах, YOLOv5 сохраняет значительное преимущество в скорости логического вывода на TensorRT по всем направлениям. Модель YOLOv5s, например, обеспечивает исключительное соотношение скорости к точности, что делает её весьма привлекательной для приложений реального времени, где важна каждая миллисекунда.
Преимущество Ultralytics: обучение и удобство использования
При переходе от исследований к производству экосистема, окружающая модель, часто так же важна, как и сама модель. Здесь преимущества экосистемы Ultralytics становятся очевидными.
Упрощенный пользовательский опыт
YOLOv5 пользуется всеобщим признанием за свой пользовательский опыт «от нуля до героя». Python API от Ultralytics и CLI позволяют загружать, обучать и развертывать модели с помощью нескольких строк кода. В отличие от этого, запуск YOLOX из GitHub-репозитория Megvii требует больше ручной настройки переменных окружения, сложных путей в Python и характеризуется более крутой кривой обучения, типичной для академических кодовых баз.
Эффективность обучения и требования к памяти
Модели Ultralytics тщательно спроектированы для минимизации использования памяти во время обучения. YOLOv5 требует значительно меньше памяти CUDA по сравнению с сильно параметризованными трансформерными моделями, такими как RT-DETR, или неоптимизированными исследовательскими моделями. Это позволяет разработчикам обучать модели с большими размерами батчей на потребительском оборудовании, ускоряя цикл итеративной разработки.
Универсальность в задачах
В то время как YOLOX — это исключительно фреймворк для обнаружения объектов, экосистема Ultralytics развила YOLOv5 для поддержки множества задач зрения. Из коробки ты можешь выполнять классификацию изображений, сегментацию экземпляров и обнаружение объектов, используя один и тот же синтаксис API.
Если тебе нужны еще более продвинутые задачи, такие как оценка позы или обнаружение ориентированных ограничивающих рамок (OBB), мы настоятельно рекомендуем перейти на новейшую архитектуру Ultralytics YOLO26, которая поддерживает все это нативно с передовой точностью.
Сравнение кода
Разницу в удобстве использования лучше всего демонстрирует код.
Обучение с YOLOv5:
from ultralytics import YOLO
# Load a pretrained YOLOv5s model
model = YOLO("yolov5su.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Display results
results[0].show()Обучение с YOLOX: (Требует ручного клонирования репозитория, установки через setup.py и сложных аргументов CLI)
# Example YOLOX training command
python tools/train.py -f exps/default/yolox_s.py -d 1 -b 64 --fp16 -oПодход Ultralytics устраняет трения, позволяя сосредоточиться на наборе данных и логике приложения, а не на отладке конфигурационных файлов. Кроме того, отслеживание экспериментов происходит бесшовно благодаря встроенным интеграциям с Weights & Biases и Comet ML.
Идеальные варианты использования и реальные приложения
Выбор между этими моделями зависит от операционной среды твоего проекта.
В чем превосходство YOLOX
YOLOX остается сильным кандидатом в академических кругах, где исследователи целенаправленно изучают безъякорные парадигмы или стратегии назначения меток. Он также полезен в сценариях, где обнаружение в переполненных сценах является абсолютным первичным показателем, а скорость развертывания на граничных устройствах вторична.
Где превосходит YOLOv5
YOLOv5 — безусловный чемпион практического развертывания.
- Высокоскоростное производство: Для обнаружения дефектов на конвейерных лентах минимальная задержка вывода YOLOv5 на граничных GPU гарантирует, что продукты проверяются без замедления конвейера.
- Дроны и аэрофотосъемка: Его эффективное использование памяти позволяет запускать модель на легких бортовых компьютерах дронов для таких задач, как мониторинг сельского хозяйства и отслеживание дикой природы.
- Умный ритейл: От автоматизированных касс до управления запасами, YOLOv5 легко экспортируется в TensorRT и ONNX для массового развертывания на тысячах камер в магазинах.
Взгляд в будущее: преимущество YOLO26
Хотя YOLOv5 — легендарная модель, область ИИ развивается быстро. Если ты начинаешь новый проект сегодня, мы настоятельно советуем обратить внимание на последнее поколение моделей Ultralytics.
Выпущенная в 2026 году, Ultralytics YOLO26 представляет собой огромный шаг вперед. Она отличается дизайном End-to-End NMS-Free, полностью устраняющим необходимость в пост-обработке Non-Maximum Suppression, что радикально упрощает логику развертывания. За счет удаления Distribution Focal Loss (DFL) и использования передового оптимизатора MuSGD, YOLO26 достигает до 43% более быстрого вывода на CPU по сравнению с предыдущими поколениями, сохраняя при этом более высокую точность, особенно на мелких объектах, благодаря новым функциям потерь ProgLoss + STAL.
Выберешь ли ты проверенную в боях надежность YOLOv5 или передовую производительность YOLO26, платформа Ultralytics гарантирует, что у тебя будут лучшие инструменты для бесшовного доведения твоих решений компьютерного зрения от концепции до производства. Обязательно изучи подробную документацию Ultralytics, чтобы раскрыть весь потенциал твоего ИИ-конвейера.