Перейти к содержанию

YOLOX в сравнении с YOLOv7: техническое сравнение

Выбор подходящей модели обнаружения объектов — критически важное решение для любого проекта в области компьютерного зрения, напрямую влияющее на производительность, скорость и возможность развертывания. На этой странице представлено подробное техническое сравнение двух влиятельных моделей в семействе YOLO: YOLOX и YOLOv7. Мы рассмотрим их архитектурные различия, эталонные показатели производительности и идеальные варианты использования, чтобы помочь вам сделать осознанный выбор.

YOLOX: Превосходство без якорей

YOLOX был представлен как высокопроизводительный детектор без anchor, нацеленный на упрощение конвейера обнаружения при одновременном повышении производительности по сравнению с предыдущими версиями YOLO. Его философия проектирования устраняет разрыв между академическими исследованиями и промышленным применением за счет оптимизации процесса обучения.

Авторы: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li и Jian Sun
Организация: Megvii
Дата: 2021-07-18
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
Документация: https://yolox.readthedocs.io/en/latest/

Архитектура и ключевые особенности

YOLOX выделяется несколькими ключевыми архитектурными инновациями, которые отличают его от предшественников:

  • Anchor-Free Design: Отказ от предопределенных anchor boxes в YOLOX уменьшает количество параметров проектирования и сложность, связанную с настройкой anchor. Это делает модель более гибкой и улучшает ее способность к обобщению для объектов с разнообразными формами и размерами, особенно на наборах данных, таких как COCO.
  • Decoupled Head (Разделенная голова): В отличие от связанных голов, которые выполняют классификацию и локализацию одновременно, YOLOX использует разделенную голову. Показано, что такое разделение разрешает конфликт между двумя задачами, что приводит к более быстрой сходимости во время обучения и более высокой точности.
  • Продвинутая аугментация данных: Модель использует надежные методы аугментации данных, включая MixUp и Mosaic, для повышения своей устойчивости и предотвращения переобучения. Вы можете узнать больше об этих методах в нашем руководстве по аугментации данных.
  • Назначение меток SimOTA: В YOLOX представлена продвинутая стратегия назначения меток под названием SimOTA (Simplified Optimal Transport Assignment, упрощенное оптимальное транспортное назначение). Она динамически назначает положительные примеры для обучения, что повышает эффективность обучения и помогает модели лучше изучать признаки.

Сильные и слабые стороны

Преимущества:

  • Упрощенный конвейер: Подход без anchor-ов упрощает процесс обучения и развертывания, устраняя необходимость в кластеризации и настройке anchor-ов.
  • Высокая способность к обобщению: Комбинация архитектуры без anchor и мощной аугментации данных помогает модели хорошо обобщать данные на новые домены и наборы данных.
  • Хороший баланс производительности: YOLOX предлагает надежный компромисс между скоростью и точностью для различных масштабов моделей.

Слабые стороны:

  • Превосходство новых моделей: Несмотря на свою эффективность, YOLOX был превзойден по скорости и точности новыми архитектурами, такими как YOLOv7 и последующие модели Ultralytics.
  • Ограничения экосистемы: YOLOX не является частью интегрированной экосистемы, такой как Ultralytics, что может усложнить развертывание и MLOps. Ей не хватает бесшовной интеграции с такими инструментами, как Ultralytics HUB.

Узнайте больше о YOLOX

YOLOv7: Вершина скорости и точности

После выпуска YOLOv7 установила новый современный уровень для детекторов объектов в реальном времени, продемонстрировав значительные улучшения как в скорости, так и в точности. Это было достигнуто за счет внедрения нескольких архитектурных оптимизаций и стратегий обучения.

Авторы: Чен-Яо Ванг, Алексей Бочковский и Хонг-Юань Марк Ляо
Организация: Институт информатики, Academia Sinica, Тайвань
Дата: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Документация: https://docs.ultralytics.com/models/yolov7/

Архитектура и ключевые особенности

Превосходная производительность YOLOv7 основана на его передовых архитектурных компонентах и усовершенствованиях обучения:

  • E-ELAN (Extended Efficient Layer Aggregation Network): Этот ключевой модуль в backbone позволяет сети изучать более разнообразные признаки, контролируя пути градиента, улучшая обучение без нарушения потока градиента.
  • Обучаемый набор бесплатных улучшений: YOLOv7 представляет набор методов обучения, которые повышают точность, не увеличивая стоимость вывода. Это включает в себя такие методы, как поэтапное обучение с управляемым лидером и вспомогательные заголовки, которые направляют процесс обучения.
  • Масштабирование модели: Модель использует методы сложного масштабирования для глубины и ширины, оптимизированные для архитектур на основе конкатенации, обеспечивая эффективную производительность для различных размеров моделей.
  • Репараметризованная свертка: YOLOv7 использует репараметризацию модели для повышения производительности — метод, который с тех пор стал популярным в современном сетевом дизайне.

Сильные и слабые стороны

Преимущества:

  • Исключительный компромисс между скоростью и точностью: YOLOv7 обеспечивает выдающийся баланс высокого mAP и быстрой скорости вывода, что делает ее идеальной для приложений реального времени.
  • Эффективность обучения: Подход "bag-of-freebies" позволяет достичь высокой точности при эффективном обучении.
  • Проверенная производительность: Она установила новый эталон для детекторов объектов реального времени на стандартных наборах данных.

Слабые стороны:

  • Архитектурная сложность (Architectural Complexity): Сочетание E-ELAN, вспомогательных заголовков и других функций делает архитектуру более сложной, чем у более простых моделей.
  • Интенсивное обучение с использованием ресурсов: Обучение больших моделей YOLOv7 может потребовать значительных вычислительных ресурсов и памяти GPU.
  • Ограниченная универсальность: Хотя официальный репозиторий имеет расширения, разработанные сообществом, для таких задач, как оценка позы, он не является по своей сути многозадачным фреймворком, как более новые модели Ultralytics.

Узнайте больше о YOLOv7

Прямое сравнение производительности: YOLOX против YOLOv7

При сравнении производительности обе модели предлагают ряд размеров, соответствующих различным вычислительным возможностям. YOLOX предоставляет масштабируемое семейство от Nano до X, в то время как YOLOv7 фокусируется на обеспечении первоклассной производительности со своими более крупными вариантами.

Модель размер
(пиксели)
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
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9

Из таблицы видно, что модели YOLOv7 обычно достигают более высоких показателей mAP. Например, YOLOv7l превосходит YOLOXx по точности (51,4% против 51,1%) со значительно меньшим количеством параметров (36,9M против 99,1M) и FLOPs (104,7B против 281,9B) и намного быстрее на GPU T4. Это подчеркивает превосходную архитектурную эффективность YOLOv7.

Почему модели Ultralytics YOLO — предпочтительный выбор

Несмотря на то, что YOLOX и YOLOv7 были значительными достижениями, новые модели Ultralytics YOLO, такие как YOLOv8 и YOLO11, предлагают более современный, универсальный и удобный для пользователя опыт.

  • Простота использования: Модели Ultralytics разработаны с учетом потребностей разработчиков и отличаются оптимизированным Python API, обширной документацией и простыми командами CLI, которые делают обучение, проверку и развертывание простыми.
  • Развитая экосистема: Воспользуйтесь преимуществами надежной экосистемы с активной разработкой, большим сообществом открытого исходного кода, частыми обновлениями и бесшовной интеграцией с такими инструментами, как Ultralytics HUB для сквозного MLOps.
  • Универсальность: Такие модели, как YOLOv8 и YOLO11, являются настоящими многозадачными фреймворками, которые «из коробки» поддерживают обнаружение объектов, сегментацию, классификацию, оценку позы и ориентированное обнаружение объектов (OBB).
  • Производительность и эффективность: Модели Ultralytics обеспечивают превосходный баланс между скоростью и точностью, оптимизированы для эффективного использования памяти и подходят для широкого спектра оборудования, от периферийных устройств до облачных серверов.

Заключение

YOLOX и YOLOv7 — мощные модели обнаружения объектов, которые расширили границы возможного в компьютерном зрении. YOLOX заслуживает похвалы за свою инновационную конструкцию без привязки к якорям, которая упрощает конвейер обнаружения. YOLOv7 выделяется своей исключительной скоростью и точностью, что делает его отличным выбором для требовательных приложений реального времени.

Однако для разработчиков и исследователей сегодня модели Ultralytics, такие как YOLOv8 и YOLO11, представляют собой следующий шаг вперед. Они предлагают превосходную производительность, большую универсальность и более комплексную, удобную экосистему, что делает их рекомендуемым выбором для создания современных, высокопроизводительных решений в области искусственного интеллекта для зрения.

Сравнения с другими моделями

Для получения дополнительной информации изучите другие сравнения моделей:



📅 Создано 1 год назад ✏️ Обновлено 1 месяц назад

Комментарии