YOLOv6-3.0 и YOLOX#
Ландшафт компьютерного зрения формировался под влиянием моделей, призванных сократить разрыв между академическими исследованиями и промышленным применением. При оценке фреймворков для детекции объектов, рассчитанных на высокопроизводительное развёртывание, часто выделяют YOLOv6-3.0 и YOLOX. В обеих моделях применяются разные архитектурные подходы для максимизации пропускной способности и точности, однако их проектные решения и основные целевые сценарии развёртывания существенно различаются.
В этом техническом сравнении рассматриваются архитектуры, метрики производительности и оптимальные сценарии применения YOLOv6-3.0 и YOLOX, а также объясняется, как Ultralytics YOLO26 развивает заложенные в них идеи.
YOLOv6-3.0: промышленная пропускная способность#
Разработанная подразделением Vision AI компании Meituan, YOLOv6-3.0 позиционируется как одноэтапная система обнаружения объектов, оптимизированная для промышленного применения. Главный приоритет модели — максимальная пропускная способность на архитектурах GPU.
- Авторы: Chuyi Li, Lulu Li, Yifei Geng и др.
- Организация: Meituan
- Дата: 2023-01-13
- arXiv: 2301.05586
- GitHub: meituan/YOLOv6
Архитектура и методология#
В YOLOv6-3.0 представлен двунаправленный модуль конкатенации (BiC), улучшающий слияние признаков на разных масштабах. В основе модели лежит архитектура EfficientRep, оптимизированная для аппаратно-эффективного GPU-инференса, что делает её подходящей для серверной обработки с NVIDIA TensorRT.
Кроме того, в YOLOv6-3.0 используется стратегия обучения с подсказками якорями (AAT). Она сохраняет стабильность обучения на основе якорей, но при этом использует безъякорный конвейер инференса, поэтому развёртывание не приводит к дополнительной задержке.
YOLOv6 отлично работает на выделенных GPU, но ее узкоспециализированная архитектура иногда приводит к неоптимальной задержке при развертывании на стандартных CPU или маломощных граничных устройствах.
YOLOX: от исследований к промышленности#
Представленная компанией Megvii, YOLOX стала важным поворотным моментом для семейства YOLO: в ней полностью отказались от якорей и внедрили передовые стратегии обучения, такие как SimOTA.
- Авторы: Чжэн Гэ, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация: Megvii
- Дата: 2021-07-18
- arXiv: 2107.08430
- GitHub: Megvii-BaseDetection/YOLOX
Архитектура и методология#
В YOLOX успешно реализован механизм без якорей в сочетании с разделенной головой. Разделение задач классификации и регрессии на отдельные ветви значительно ускорило сходимость YOLOX и помогло устранить конфликтующие цели, часто возникающие в объединенных головах обнаружения.
Кроме того, YOLOX использует в конвейере обучения эффективные стратегии аугментации данных, такие как MixUp и Mosaic, повышая устойчивость модели при обучении с нуля на стандартных бенчмарках, например на датасете COCO.
Разделенная голова YOLOX стала важной вехой и вдохновила последующие поколения моделей обнаружения, доказав, что разделение признаков для разных задач повышает общую точность.
Сравнение производительности и метрик#
При прямом сравнении этих моделей становятся очевидны компромиссы между скоростью, количеством параметров и точностью. Ниже приведена подробная таблица производительности ключевых моделей обоих семейств.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| 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 |
Хотя у YOLOX есть очень компактные варианты, например Nano, YOLOv6-3.0 лучше масштабируется в верхнем сегменте: крупные модели обеспечивают более высокий mAP и хорошо ускоряются с помощью TensorRT. Однако обе модели опираются на устаревшие репозитории для обучения, интеграция которых в современные приложения может быть затруднительной.
Сценарии использования и рекомендации#
Выбор между YOLOv6 и YOLOX зависит от требований твоего проекта, ограничений развертывания и предпочтений в отношении экосистемы.
Когда стоит выбрать YOLOv6#
YOLOv6 — хороший выбор для:
- Развертывание с учетом промышленного оборудования: сценарии, в которых аппаратно-ориентированный дизайн и эффективная репараметризация модели обеспечивают оптимальную производительность на конкретном целевом оборудовании.
- Быстрая одноэтапная детекция: приложения, где приоритетом является максимальная скорость инференса на GPU для обработки видео в реальном времени в контролируемых условиях.
- Интеграция с экосистемой Meituan: команды, уже работающие с технологическим стеком и инфраструктурой развертывания Meituan.
Когда стоит выбрать YOLOX#
YOLOX подойдёт для следующих задач:
- Исследования обнаружения без якорей: Академические исследования, в которых чистая архитектура YOLOX без якорей используется как базовая модель для экспериментов с новыми головами обнаружения или функциями потерь.
- Сверхкомпактные периферийные устройства: Развертывание на микроконтроллерах или устаревшем мобильном оборудовании, где критически важен крайне малый размер варианта YOLOX-Nano (0,91 млн параметров).
- Исследования назначения меток SimOTA: Исследовательские проекты по изучению стратегий назначения меток на основе оптимального транспорта и их влияния на сходимость обучения.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает оптимальное сочетание производительности и удобства разработки:
- Развертывание на периферийных устройствах без NMS: Приложения, которым необходим стабильный инференс с низкой задержкой без усложнения постобработки подавлением немаксимумов.
- Среды только с CPU: устройства без выделенного ускорителя GPU, на которых YOLO26n работает на CPU до 43% быстрее YOLO11n.
- Обнаружение мелких объектов: сложные сценарии, например съемка с дронов или анализ данных датчиков IoT, где ProgLoss и STAL повышают точность распознавания крошечных объектов.
Преимущества Ultralytics: знакомство с YOLO26#
YOLOv6 и YOLOX в своё время расширили возможности детекции объектов, но современное компьютерное зрение требует большего, чем просто предсказание ограничивающих рамок. Разработчикам нужны единые фреймворки, простые конвейеры развёртывания и эффективное обучение. Платформа Ultralytics и YOLO26 созданы с учётом этих потребностей.
Выпущенная в январе 2026 года YOLO26 улучшает соотношение точности и задержки, сохраняя удобный для разработчиков рабочий процесс Ultralytics.
Ключевые инновации YOLO26#
- Сквозная архитектура без NMS: Опираясь на обучение без NMS, которое YOLOv10 внедрила в модели YOLO, YOLO26 предлагает дополнительную голову без NMS (
nms=False), устраняющую необходимость в постобработке с подавлением немаксимумов (NMS). Это снижает колебания задержки и упрощает развёртывание на периферийных устройствах. - Оптимизатор MuSGD: YOLO26 заимствует идеи из обучения LLM и использует гибридный оптимизатор MuSGD (вдохновлённый Kimi K2 от Moonshot AI), объединяющий SGD и Muon. Это обеспечивает более стабильное обучение и быструю сходимость по сравнению с оптимизаторами предыдущих поколений.
- Инференс на CPU до 43% быстрее: В отличие от YOLOv6, ориентированной на GPU, YOLO26 оптимизирована для периферийных устройств. Удаление Distribution Focal Loss (DFL) упрощает выходную голову, а YOLO26n работает на CPU до 43% быстрее, чем YOLO11n.
- ProgLoss + STAL: Прогрессивная функция потерь и назначение меток с учётом малых объектов повышают качество детекции небольших объектов — задачи, с которой старые архитектуры, такие как YOLOX, часто справлялись хуже. Благодаря этому YOLO26 отлично подходит для аэрофотоснимков и датчиков IoT.
- Универсальность для разных задач: В то время как YOLOv6 и YOLOX предназначены главным образом для детекции, одна архитектура YOLO26 также поддерживает сегментацию экземпляров, семантическую сегментацию, оценку глубины, классификацию изображений, оценку позы и ориентированные ограничивающие рамки (OBB).
Простота использования и поддержка экосистемы#
Выбирая Ultralytics, ты получаешь доступ к хорошо сопровождаемой и активно развиваемой экосистеме. Пакет Ultralytics для Python охватывает весь процесс — от обучения до развёртывания, требует меньше памяти при обучении, чем модели на основе Transformer, и напрямую экспортирует модели в форматы, такие как ONNX, OpenVINO и CoreML.
from ultralytics import YOLO
# Загрузи компактную модель YOLO26 (голова без NMS доступна через nms=False)
model = YOLO("yolo26n.pt")
# Обучи модель на примере датасета COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Запусти эффективный инференс на CPU или GPU
results = model("https://ultralytics.com/images/bus.jpg")
# Экспортируй модель в TensorRT для промышленного развертывания
model.export(format="engine")Заключение и рекомендации#
Выбирая между YOLOv6-3.0 и YOLOX, учитывай ограничения своего оборудования. Если ты создаёшь системы видеоаналитики с высокой пропускной способностью и используешь мощное оборудование NVIDIA, YOLOv6-3.0 обеспечит высокую производительность с TensorRT. В свою очередь, YOLOX остаётся известной базовой моделью для проектов, которым подходит полностью раздельная безъякорная архитектура.
Однако для разработчиков, которые ищут оптимальный баланс скорости, точности и простоты использования, рекомендуемым выбором будет Ultralytics YOLO26. В ней сочетаются опциональная голова без NMS, быстрый инференс на CPU и полная поддержка во всей экосистеме Ultralytics. Предыдущее поколение, YOLO11, также по-прежнему полностью поддерживается и широко используется в корпоративных приложениях.