YOLOv9 против YOLOX#
Область компьютерного зрения стала свидетелем стремительной эволюции архитектур обнаружения объектов в реальном времени. В этом руководстве представлено подробное сравнение между YOLOv9 и YOLOX, в котором анализируются их архитектурные инновации, показатели производительности и методологии обучения. Независимо от того, создаешь ли ты интеллектуальные приложения для ИИ в производстве или изучаешь прогнозирующее моделирование, понимание этих моделей поможет тебе принять обоснованные решения для твоего следующего развертывания.
Архитектурные инновации#
YOLOv9: программируемая градиентная информация#
YOLOv9 совершил сдвиг парадигмы, решив проблему «информационного бутылочного горлышка», присущую глубоким нейронным сетям. Его ключевые инновации включают программируемую градиентную информацию (PGI) и обобщенную эффективную сеть агрегации слоев (GELAN).
- Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
- Организация: Институт информатики, Academia Sinica, Тайвань
- Дата: 21 февраля 2024 г.
- Arxiv: 2402.13616
- GitHub: WongKinYiu/yolov9
Сохраняя важнейшие данные признаков в процессе прямого распространения, YOLOv9 гарантирует, что градиенты, используемые для обновления весов при обратном распространении, остаются точными. Эта архитектура отлично справляется с извлечением признаков, что делает ее крайне эффективной для обнаружения мелких объектов в сложных средах, таких как аэроснимки и детальные медицинские сканы.
YOLOX: объединяя научные исследования и индустрию#
Выпущенный в середине 2021 года, YOLOX переориентировал серию YOLO на архитектуру без анкоров (anchor-free). Он представил разделенную «голову» (decoupled head), которая отделяет задачи классификации от задач локализации, и использовал стратегию назначения меток SimOTA для улучшения сходимости обучения.
- Авторы: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li и Jian Sun
- Организация: Megvii
- Дата: 18 июля 2021 г.
- Arxiv: 2107.08430
- GitHub: Megvii-BaseDetection/YOLOX
Хотя YOLOX была прорывной для своего времени, обеспечивая превосходную среднюю точность (mAP) и исключая необходимость настройки гиперпараметров якорных рамок, ее базовая архитектура с тех пор была превзойдены современными сетями, которые лучше балансируют количество параметров и сохранение признаков.
Как YOLOX, так и новые модели Ultralytics используют архитектуры без анкоров, что снижает сложность подбора гиперпараметров и улучшает обобщающую способность на различных наборах данных.
Анализ производительности#
При сравнении этих моделей на бенчмарке MS COCO достижения YOLOv9 становятся очевидными. YOLOv9 стабильно обеспечивает лучший компромисс между точностью и FLOPs.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 предлагает легковесные варианты, такие как YOLOX-Nano для экстремальных краевых случаев, варианты YOLOv9 стабильно превосходят модели YOLOX аналогичного размера по чистой точности. Например, YOLOv9m достигает 51.4% mAP по сравнению с 49.7% у YOLOXl, несмотря на то, что имеет менее половины параметров (20.0M против 54.2M).
Преимущество Ultralytics#
Выбор модели включает в себя нечто большее, чем просто архитектурную теорию; окружающая ее экосистема диктует скорость разработки и успех развертывания. Использование YOLOv9 в рамках экосистемы Ultralytics обеспечивает непревзойденную простоту использования и надежную поддержку сообщества.
В отличие от старых оригинальных репозиториев исследований, фреймворк Ultralytics предоставляет унифицированный Python API, который упрощает сложные конвейеры. Обучение требует значительно меньшего объема памяти GPU, чем многие альтернативы, предлагая невероятную эффективность обучения.
from ultralytics import YOLO
# Initialize the YOLOv9c model
model = YOLO("yolov9c.pt")
# Train the model on your custom dataset seamlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
# Export the optimized model to TensorRT format
model.export(format="engine")Благодаря встроенной поддержке множества задач, включая обнаружение объектов, сегментацию экземпляров и оценку позы, ты можешь быстро переключать свои решения для компьютерного зрения без изменения всей кодовой базы.
Применение в реальных условиях#
Конкретные сильные стороны этих моделей адаптируют их для различных реальных задач:
Высокоскоростная розничная аналитика#
Для современных розничных сред, требующих распознавания продуктов в реальном времени, YOLOv9 превосходит всех. Его способность сохранять сложные детали признаков делает его идеальным для развертывания ИИ в ритейле, где необходимо различать визуально похожие продукты на переполненной полке.
Развертывание на устаревшем оборудовании#
В сценариях, определяемых строгими ограничениями аппаратного обеспечения или специализированными NPU, которые испытывают трудности с более новыми блоками агрегации, YOLOX-Nano иногда может найти свою нишу. Его чистые, урезанные сверточные паттерны иногда предпочитают для чрезвычайно ограниченных по ресурсам микроконтроллеров.
Автономная робототехника#
Для навигации робототехники пропуск мелких объектов может быть катастрофическим. Архитектура GELAN в YOLOv9 гарантирует, что признаки мелких, удаленных препятствий не потеряются в глубоких слоях сети, превосходя старые модели в критически важных средах безопасности, таких как приложения ИИ в автомобилестроении.
Сценарии использования и рекомендации#
Выбор между YOLOv9 и YOLOX зависит от требований твоего конкретного проекта, ограничений развертывания и предпочтений в экосистеме.
Когда стоит выбрать YOLOv9#
YOLOv9 — отличный выбор для:
- Исследований информационных узких мест: Академические проекты по изучению архитектур Programmable Gradient Information (PGI) и Generalized Efficient Layer Aggregation Network (GELAN).
- Изучения оптимизации потока градиентов: Исследования, направленные на понимание и смягчение потери информации в глубоких слоях сети во время обучения.
- Бенчмаркинга обнаружения высокой точности: Сценарии, где высокие показатели производительности YOLOv9 в бенчмарке COCO необходимы в качестве точки отсчета для архитектурных сравнений.
Когда выбирать YOLOX#
YOLOX рекомендуется для:
- Исследований безъякорного обнаружения: академических исследований, использующих чистую безъякорную архитектуру YOLOX как базу для экспериментов с новыми головами детекции или функциями потерь.
- Сверхлегких Edge-устройств: развертывания на микроконтроллерах или устаревшем мобильном оборудовании, где критически важен чрезвычайно малый вес варианта YOLOX-Nano (0.91 млн параметров).
- Изучения назначения меток SimOTA: исследовательских проектов, анализирующих стратегии назначения меток на основе оптимального транспорта и их влияние на сходимость обучения.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Обнаружение малых объектов: Сложные сценарии, такие как aerial drone imagery или анализ с помощью IoT-сенсоров, где ProgLoss и STAL значительно повышают точность для крошечных объектов.
Будущее: YOLO26#
Хотя YOLOv9 представляет собой впечатляющий рубеж, требования производственных сред постоянно раздвигают границы. Недавно выпущенная YOLO26 представляет собой окончательный стандарт для современного визуального ИИ.
YOLO26 полностью обновляет конвейер развертывания благодаря нативному End-to-End NMS-Free Design. Устраняя необходимость в сложной некомаксимальной подавке (NMS) во время постобработки, он обеспечивает значительно меньшую задержку вывода.
Более того, YOLO26 включает революционный оптимизатор MuSGD, гибрид SGD и Muon, который заимствует инновации из обучения LLM для обеспечения невероятно стабильной и быстрой сходимости. Убрав функцию потерь Distribution Focal Loss (DFL), YOLO26 достигает до 43% более быстрого вывода на CPU по сравнению с предшественниками, что делает его абсолютно лучшим выбором для граничных устройств и корпоративных развертываний. Благодаря заметным улучшениям в распознавании мелких объектов с помощью ProgLoss и STAL, YOLO26 эффективно вытесняет как YOLOX, так и YOLOv9.
Для инженеров, изучающих современные архитектуры, мы также рекомендуем ознакомиться с YOLO11 и RT-DETR как мощными альтернативами в составе набора Ultralytics. Убедись, что твой проект защищен от устаревания благодаря использованию непревзойденной производительности новейших моделей на Платформе Ultralytics.