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

YOLOv9 YOLOv6. YOLOv6: архитектурные инновации и анализ производительности

Область обнаружения объектов в реальном времени быстро меняется, а исследователи постоянно расширяют границы точности и эффективности. Двумя важными вехами в этой эволюции являются YOLOv9, представленная Academia Sinica в начале 2024 года, и YOLOv6.YOLOv6, надежная версия от Meituan, выпущенная в 2023 году. Хотя обе модели направлены на решение промышленных задач, они используют принципиально разные архитектурные подходы для достижения высокой производительности.

Архитектурные философии

Основное различие между этими двумя моделями заключается в том, как они управляют потоком информации и извлечением признаков по всей нейронной сети.

YOLOv9: восстановление утраченной информации

YOLOv9 решает фундаментальную проблему глубокого обучения: потерю информации при распространении данных через глубокие слои. Авторы, Чень-Яо Ван и Хун-Юань Марк Ляо, представили программируемую градиентную информацию (PGI). PGI предоставляет вспомогательную ветвь контроля, которая обеспечивает сохранение важной семантической информации, позволяя модели обучаться более надежным функциям без увеличения затрат на вывод.

Кроме того, YOLOv9 архитектуру GELAN (Generalized Efficient Layer Aggregation Network). GELAN оптимизирует использование параметров, сочетая преимущества CSPNet и ELAN, чтобы достичь превосходной точности с меньшим количеством FLOP по сравнению с предыдущими поколениями.

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

YOLOv6-3.0: Промышленная оптимизация

YOLOv6.YOLOv6, разработанный командой Meituan Vision, в значительной степени ориентирован на практическое промышленное применение. Эта версия, получившая название «A Full-Scale Reloading» (полная перезагрузка), представила Anchor-Aided Training (AAT) — технологию, которая сочетает в себе преимущества детекторов на основе анкоров и без анкоров для стабилизации обучения. Она также отличается обновленным дизайном шеи с использованием Bi-directional Concatenation (BiC) для улучшения слияния функций.

YOLOv6 хорошо YOLOv6 интенсивным использованием перепараметризации в стиле RepVGG, что позволяет создавать сложные структуры обучения, которые сводятся к более простым и быстрым блокам вывода.

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

Сравнение производительности

При сравнении производительности YOLOv9 демонстрирует более высокую среднюю точность (mAP) при аналогичных или более низких вычислительных затратах. Архитектура GELAN позволяет YOLOv9 изображения с высокой эффективностью, что делает его отличным выбором для задач, требующих высокой точности.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

В то время как YOLOv6 демонстрирует конкурентоспособную TensorRT — в основном благодаря своей аппаратно-ориентированной архитектуре —YOLOv9 достигает более высокой точности на параметр. Например, YOLOv9m превосходит YOLOv6.YOLOv6 по точности (51,4% против 50,0%), используя при этом значительно меньше параметров (20,0 млн против 34,9 млн).

Экосистема и простота использования

Одним из наиболее важных факторов для разработчиков является экосистема, окружающая модель. Именно в этом плане Ultralytics и библиотека Ultralytics предоставляют явное преимущество.

Преимущество Ultralytics

YOLOv9 полностью YOLOv9 в Ultralytics и предлагает унифицированный API, который упрощает весь жизненный цикл операций машинного обучения (MLOps).

  • Простое обучение: Вы можете обучить YOLOv9 на пользовательских данных всего за несколько строк Python.
  • Эффективность использования памяти: Ultralytics оптимизированы для снижения использования GPU во время обучения, что предотвращает ошибки нехватки памяти (OOM), характерные для других хранилищ.
  • Универсальность: Экосистема поддерживает простой экспорт в такие форматы, как ONNX, OpenVINOи TensorRT.

Оптимизированный рабочий процесс

Использование Ultralytics значительно Ultralytics время на инженерные работы по сравнению с настройкой автономных репозиториев исследований.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

# Train on a custom dataset with default augmentations
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Напротив, использование YOLOv6 требует клонирования конкретного репозитория Meituan, настройки специальной среды и ручного управления конфигурационными файлами и конвейерами пополнения данных.

Приложения в реальном мире

Выбор между этими моделями часто зависит от конкретных ограничений вашей среды развертывания.

Высокоточные сценарии (YOLOv9)

Способность YOLOv9 сохранять семантическую информацию делает его идеальным решением для сложных задач обнаружения, где важны мелкие детали.

  • Медицинская визуализация: при выполнении таких задач, как обнаружение опухолей, архитектура PGI помогает сохранить слабые признаки, которые в противном случае могли бы быть утрачены в глубоких слоях сети.
  • Воздушное наблюдение: для обнаружения небольших объектов, таких как транспортные средства или люди, на изображениях с дронов, улучшенная функция сохранения характеристик YOLOv9 повышает коэффициент воспроизведения.

Промышленная автоматизация (YOLOv6.0)

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

  • Производственные линии: в контролируемых средах, таких как производство аккумуляторов, где камеры проверяют детали на конвейерной ленте, TensorRT YOLOv6 с помощью TensorRT YOLOv6 быть очень эффективной.

Взгляд в будущее: Мощь YOLO26

Хотя YOLOv9 YOLOv6. YOLOv6 являются отличными моделями, в этой области продолжаются дальнейшие разработки. Последние YOLO26 представляет собой современное достижение для разработчиков, стремящихся к идеальному балансу скорости, точности и простоты использования.

YOLO26 представляет несколько прорывных функций:

  • Полная NMS: благодаря удалению функции Non-Maximum Suppression (NMS) YOLO26 упрощает процессы развертывания и снижает изменчивость задержек.
  • MuSGD Optimizer: гибрид SGD и Muon, этот оптимизатор обеспечивает повышение стабильности, вдохновленное обучением больших языковых моделей (LLM).
  • Повышенная эффективность: благодаря устранению распределительной фокальной потери (DFL) и другим оптимизациям YOLO26 достигает до 43% более быстрой CPU , что делает его идеальным для периферийных устройств, таких как Raspberry Pi.
  • Универсальность задач: помимо обнаружения, YOLO26 предлагает специализированные усовершенствования для оценки позы (с использованием оценки остаточной логарифмической вероятности) и сегментации.

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

Заключение

Оба YOLOv9 и YOLOv6.YOLOv6 обладают впечатляющими возможностями. YOLOv6. YOLOv6 остается сильным конкурентом для определенных промышленных рабочих процессов, TensorRT. Однако для большинства исследователей и разработчиков YOLOv9 обеспечивает превосходную эффективность параметров и точность. Кроме того, вхождение в Ultralytics гарантирует долгосрочную поддержку, легкий доступ к предварительно обученным весам и беспроблемный переход на более новые архитектуры, такие как YOLO26.

Ссылки

  1. YOLOv9: Wang, C.-Y., & Liao, H.-Y. M. (2024). «YOLOv9: Изучение того, что вы хотите изучить, с помощью программируемой градиентной информации». arXiv:2402.13616.
  2. YOLOv6 .0: Ли, Ц., и др. (2023). «YOLOv6 .0: полномасштабная перезагрузка». arXiv:2301.05586.
  3. Ultralytics :ultralytics

Комментарии