YOLOX против YOLOv6.0: Техническое сравнение
Выбор подходящей архитектуры обнаружения объектов - критически важное решение для разработчиков и исследователей, стремящихся найти баланс между производительностью, скоростью и вычислительной эффективностью. В этом комплексном сравнении рассматриваются технические различия между YOLOX, высокопроизводительным безъякорным детектором от Megvii, и YOLOv6.0, фреймворком промышленного уровня, разработанным Meituan. Анализируя их архитектуры, бенчмарки и методики обучения, мы стремимся направить вас к выбору лучшей модели для ваших конкретных задач компьютерного зрения.
YOLOX: соединение исследований и промышленности
Авторы: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, and Jian Sun
Organization:Megvii
Date: 2021-07-18
Arxiv:https://arxiv.org/abs/2107.08430
GitHub:https://github.com/Megvii-BaseDetection/YOLOX
Docs:https://yolox.readthedocs.io/en/latest/
Выпущенный в 2021 году, YOLOX представляет собой значительный сдвиг в линейке YOLO , приняв механизм без якорей и интегрировав передовые методы обнаружения, ранее предназначавшиеся для академических исследований. Устранив зависимость от заранее заданных якорных ящиков, YOLOX упростил процесс обучения и улучшил обобщение для различных форм объектов.
Архитектура и ключевые особенности
YOLOX отличается архитектурой "отсоединенной головы". В отличие от традиционных моделей YOLO , в которых задачи классификации и локализации объединены в одну ветвь, YOLOX разделяет их, что значительно повышает скорость сходимости и точность. В ней используется стратегия присвоения меток SimOTA (Simplified Optimal Transport Assignment), которая динамически присваивает положительные образцы объектам "истины", что снижает нестабильность обучения.
Безъякорная конструкция
YOLOX исключает необходимость ручной кластеризации якорных ящиков, что было обычным шагом в предыдущих версиях YOLO . Это уменьшает количество эвристических гиперпараметров и вариантов дизайна, участвующих в обучении, что делает модель более устойчивой к различным наборам данных без длительной настройки.
Сильные и слабые стороны
Преимущества:
- Высокая точность: Отсоединенная голова и усовершенствованное присвоение меток позволяют YOLOX достигать конкурентоспособных показателей средней точности (mAP), особенно на наборе данныхCOCO .
- Гибкость в исследованиях: Упрощенная конструкция делает его отличной базой для исследователей, экспериментирующих с новыми головками обнаружения или стратегиями назначения.
- Обнаружение мелких объектов: Безъякорный подход иногда может обеспечить лучшую производительность при обнаружении мелких объектов по сравнению с системами, основанными на жестких якорях.
Слабые стороны:
- Задержка вывода: Несмотря на точность, отсоединенная головка создает небольшие вычислительные накладные расходы, что часто приводит к снижению скорости вычислений по сравнению с полностью оптимизированными промышленными моделями, такими как YOLOv6.
- Зрелость экосистемы: Несмотря на открытый исходный код, экосистема сторонних инструментов, руководств по развертыванию и поддержки сообщества меньше, чем у Ultralytics YOLOv8 или YOLOv5.
Идеальные варианты использования
YOLOX особенно хорошо подходит для академических исследований и сценариев, в которых точность приоритетнее скорости вывода.
- Медицинская визуализация: Анализ сложных структур при анализе медицинских изображений, где точность имеет первостепенное значение.
- Обнаружение дефектов: выявление тонких аномалий в производстве, когда пропущенные обнаружения дорого обходятся.
- Академические эксперименты: Служит чистой, свободной от якорей базовой основой для разработки новых алгоритмов компьютерного зрения.
YOLOv6.0: Создан для промышленной скорости
Авторы: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organization:Meituan
Date: 2023-01-13
Arxiv:https://arxiv.org/abs/2301.05586
GitHubYOLOv6
Docsultralytics
YOLOv6.0 - это специально разработанный детектор объектов, предназначенный для реальных промышленных приложений. В обновлении "3.0", известном как "полномасштабная перезагрузка", были внесены значительные архитектурные усовершенствования, позволяющие увеличить производительность аппаратных средств, таких как графические процессоры NVIDIA .
Архитектура и ключевые особенности
Суть YOLOv6.0 заключается в широком использовании репараметризации. Модель использует магистраль EfficientRep и шейку Rep-PAN, которые позволяют сети иметь сложные, многоветвистые структуры во время обучения, но сворачиваться в простые, однопутевые структуры во время вывода. Такой подход "в стиле RepVGG" обеспечивает высокую способность к извлечению признаков без штрафа за время выполнения, связанного со сложными ветвлениями.
Кроме того, в YOLOv6.0 используется технология обучения с помощью якоря (AAT), сочетающая преимущества парадигм с якорем и без якоря для стабилизации обучения и ускорения сближения.
Сильные и слабые стороны
Преимущества:
- Исключительная скорость: Оптимизировано для TensorRTYOLOv6.0 обеспечивает чрезвычайно низкую задержку, что делает его идеальным для приложений с высокой частотой кадров.
- Готовность к развертыванию: Такие функции, как поддержка квантования модели, облегчают развертывание на пограничных устройствах и серверах.
- Эффективность: Метод репараметризации обеспечивает превосходный баланс между количеством FLOP и точностью.
Слабые стороны:
- Интенсивность использования ресурсов для обучения: Сложная архитектура времени обучения (до репараметризации) может потребовать значительного объема памятиGPU по сравнению с более простыми моделями.
- Ограниченный круг задач: YOLOv6 в первую очередь ориентирован на обнаружение. В нем отсутствует встроенная поддержка других задач, таких как оценка положения или ориентированные граничные поля (OBB), в рамках того же бесшовного API, который есть в предложениях Ultralytics .
Идеальные варианты использования
YOLOv6.0 отлично работает в средах, где скорость вывода в реальном времени является жестким требованием.
- Автономная робототехника: Позволяет роботам мгновенно ориентироваться и реагировать на динамичную среду.
- Инспекция производственных линий: Высокоскоростная проверка качества на производственных лентах, где производительность не может быть снижена.
- Видеоаналитика: Обработка нескольких видеопотоков одновременно для систем охранной сигнализации.
Прямое сравнение производительности
Сравнение показателей производительности на наборе данныхCOCO выявляет различия в философии проектирования. YOLOX предлагает упрощенную архитектуру с достойной точностью, в то время как YOLOv6.0 расширяет границы скорости выводов за счет структурной оптимизации.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
Данные показывают, что YOLOv6.0n значительно быстрее на GPU (1,17 мс против 2,56 мс у YOLOX), сохраняя при этом высокий показатель mAP. Для устройств с ограниченными ресурсами, где важен каждый мегабайт, YOLOXnano остается интересным вариантом с параметрами менее 1 М, хотя его точность ниже. На более высоком уровне YOLOv6.0l превосходит YOLOXx как по точности (52,8 против 51,1 mAP), так и по эффективности, используя примерно на 40 % меньше параметров.
Методологии обучения и экосистема
Пользовательский опыт обучения этих моделей существенно отличается.
YOLOX опирается на такие сильные методы дополнения данных, как Mosaic и MixUp , чтобы достичь своих результатов без предварительно обученных весов. Его обучающий конвейер ориентирован на исследования и обеспечивает гибкость для тех, кто хорошо знаком с конфигурациями PyTorch .
В YOLOv6.0 используется самораспространение, когда большая модель учителя направляет модель ученика во время обучения, повышая точность меньших моделей без увеличения стоимости вывода. Эта методология является мощной, но усложняет процесс обучения.
Однако разработчики, для которых приоритетом является оптимизация рабочего процесса, часто находят экосистемуUltralytics лучшей. В отличие от разрозненного инструментария, который часто встречается в отдельных исследовательских моделях, Ultralytics предоставляет единую платформу.
- Простота использования: Простой API на Python позволяет проводить обучение, проверку и выводы всего в нескольких строках кода.
- Хорошо поддерживаемая экосистема: Частые обновления обеспечивают совместимость с последними версиями PyTorch, CUDA и такими форматами экспорта, как ONNX и OpenVINO.
- Эффективность обучения: Модели Ultralytics оптимизированы для эффективного использования памяти, часто обучение происходит быстрее и с меньшим объемом памяти GPU , чем у сопоставимых архитектур на основе трансформаторов.
Простота использования Ultralytics
Обучить современную модель с помощью Ultralytics очень просто:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.pt")
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Заключение: Преимущество Ultralytics
YOLOX предлагает инновационный безъякорный дизайн, подходящий для исследований, а YOLOv6.0 обеспечивает впечатляющую скорость работы для специфического промышленного оборудования, Ultralytics YOLO11 представляет собой вершину современных технологий компьютерного зрения.
YOLO11 и созданные YOLOv8 обеспечивают превосходное соотношение производительности, достигая лучших показателей mAP и поразительной скорости выводов как на CPU , так и GPU . В отличие от конкурентов, специализирующихся в основном на обнаружении, модели Ultralytics отличаются непревзойденной универсальностью, поддерживая встроенную поддержку:
- Сегментация экземпляров
- Оценка позы
- Классификация изображений
- Ориентированные ограничивающие рамки (OBB)
Для разработчиков, которые ищут перспективное решение, подкрепленное активным развитием, исчерпывающей документацией и процветающим сообществом, Ultralytics остается рекомендованным выбором для реализации проектов от концепции до производства.
Для более детального сравнения можно почитать о YOLOv5 против YOLOv6 или YOLO11 против RT-DETR.