RTDETRv2 против YOLOv9: сравнение трансформеров для детектирования в реальном времени и сверточных нейросетей
В области компьютерного зрения наблюдается захватывающее расхождение в архитектурных подходах, прежде всего между сверточными нейронными сетями (CNN) и моделями на основе трансформеров. Сравнивая RTDETRv2 и YOLOv9, разработчики по сути оценивают компромисс между механизмами глобального внимания и программируемой градиентной информацией. Обе модели представляют собой вершину своих соответствующих парадигм, расширяя границы детектирования объектов в реальном времени.
Знакомство с моделями
RTDETRv2: трансформер для детектирования в реальном времени
Разработанная исследователями Baidu, RTDETRv2 основывается на оригинальном RT-DETR, внедряя набор «Bag-of-Freebies» для улучшения базового трансформера для детектирования в реальном времени. Она решает проблему традиционного «узкого места» трансформеров — скорости вывода, — делая их пригодными для приложений реального времени.
- Авторы: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang и Yi Liu
- Организация: Baidu
- Дата: 2024-07-24
- Ссылки: Arxiv, GitHub
Определяющей характеристикой RTDETRv2 является её нативно end-to-end дизайн без NMS. Полностью исключив подавление немаксимумов (NMS) на этапе постобработки, модель стабилизирует задержку вывода и упрощает конвейер развертывания. Механизм глобального внимания позволяет модели превосходно справляться с пониманием сложных сцен и плотных толп, поскольку она оценивает контекст всего изображения одновременно.
YOLOv9: программируемая градиентная информация
YOLOv9 — высокоэффективная архитектура на основе CNN, решающая проблему информационного «узкого места», присущую глубоким нейронным сетям. Она внедряет программируемую градиентную информацию (PGI) и Generalized Efficient Layer Aggregation Network (GELAN).
- Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
- Организация: Институт информационных наук, Academia Sinica
- Дата: 21 февраля 2024 г.
- Ссылки: Arxiv, GitHub
YOLOv9 опирается на проверенные основы сверточных нейронных сетей, но максимизирует эффективность использования параметров. Сохраняя важную информацию в процессе прямого прохода, она обеспечивает надежное обновление весов, что приводит к невероятно легкой, но высокоточной модели. Однако, в отличие от RTDETRv2, YOLOv9 по-прежнему полагается на стандартную постобработку NMS.
Производительность и эффективность ресурсов
При оценке этих моделей для продакшена критически важно сбалансировать среднюю точность (mAP) и вычислительные затраты. В таблице ниже показана их производительность на наборе данных MS COCO.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| 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 |
Требования к памяти и эффективность обучения
Трансформеры, такие как RTDETRv2, печально известны интенсивным потреблением памяти во время обучения, часто требуя значительного объема видеопамяти CUDA и более длительных циклов обучения для полной сходимости. Напротив, архитектуры CNN, такие как YOLOv9 и другие модели Ultralytics YOLO, предлагают значительно меньшее использование памяти, позволяя тебе обучать модели с большими размерами пакетов на потребительском оборудовании.
Чтобы максимально эффективно использовать аппаратное обеспечение, рассмотри возможность использования платформы Ultralytics для оптимизированного обучения в облаке. Она автоматически настраивает окружение и подбирает оптимальный размер пакета.
Преимущество Ultralytics: экосистема и простота использования
Хотя изучение самостоятельных репозиториев, таких как официальные страницы RTDETRv2 или YOLOv9 на GitHub, может быть очень познавательным, производственные среды требуют стабильности, простоты использования и хорошо поддерживаемой экосистемы. Интеграция этих моделей через Python API от Ultralytics обеспечивает бесшовный опыт разработки.
Унифицированный API и универсальность
Фреймворк Ultralytics абстрагирует сложности загрузки данных, аугментации и распределенного обучения. Более того, хотя оригинальная RTDETRv2 строго сфокусирована на детектировании, экосистема Ultralytics позволяет тебе легко переключаться между задачами детекции объектов, сегментации экземпляров и оценки позы.
from ultralytics import RTDETR, YOLO
# Train a YOLOv9 model on custom data
model_yolo = YOLO("yolov9c.pt")
model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)
# Easily switch to RT-DETR for complex scene evaluation
model_rtdetr = RTDETR("rtdetr-l.pt")
results = model_rtdetr.predict("https://ultralytics.com/images/bus.jpg")
# Export to production-ready formats like TensorRT
model_yolo.export(format="engine")Благодаря надежной документации, автоматическому отслеживанию экспериментов и бесшовным возможностям экспорта в форматы, такие как ONNX, TensorRT и OpenVINO, Ultralytics значительно сокращает путь от прототипа до продакшена.
Идеальные сценарии использования
В чем сильна RTDETRv2
Благодаря механизму глобального внимания RTDETRv2 является мощным инструментом для обработки на стороне сервера и сред, где глобальный контекст имеет первостепенное значение. Она превосходна в:
- Медицинской визуализации: выявлении тонких аномалий, где критически важен окружающий контекст.
- Аэрофотосъемке: обнаружении мелких объектов на кадрах с дронов высокого разрешения без пространственных искажений, свойственных традиционным сверткам CNN.
- Анализе плотных толп: отслеживании отдельных лиц там, где сильная окклюзия обычно сбивает с толку модели на основе якорей.
В чем сильна YOLOv9
YOLOv9 — чемпион по развертыванию на периферийных устройствах с ограниченными ресурсами. Её вычислительная эффективность делает её идеальной для:
- Робототехники: навигации в реальном времени и объезда препятствий, где требуется минимальная задержка.
- Smart City IoT: развертывания на граничных устройствах, таких как NVIDIA Jetson, для мониторинга трафика.
- Промышленного контроля: контроля качества на высокоскоростных сборочных линиях, требующего высокого значения кадров в секунду (FPS).
Будущее: встречай Ultralytics YOLO26
Хотя YOLOv9 и RTDETRv2 представляют собой огромные шаги вперед, ландшафт быстро эволюционировал. Для современных внедрений недавно выпущенная Ultralytics YOLO26 воплощает в себе максимальную синергию обеих архитектурных философий.
Взяв лучшие аспекты трансформеров и CNN, YOLO26 устанавливает новый стандарт:
- End-to-End дизайн без NMS: как и RTDETRv2, YOLO26 является нативно end-to-end моделью, полностью устраняющей постобработку NMS для более быстрой, простой и предсказуемой работы конвейера развертывания.
- Оптимизатор MuSGD: вдохновленный методами обучения больших языковых моделей (LLM) (такими как Kimi K2 от Moonshot AI), YOLO26 использует гибрид SGD и Muon. Это обеспечивает беспрецедентную стабильность обучения и быструю сходимость в компьютерном зрении.
- До 43% быстрее на CPU: в отличие от тяжелых трансформеров, YOLO26 сильно оптимизирована для граничных вычислений и устройств без GPU.
- Удаление DFL: отказ от Distribution Focal Loss значительно упрощает граф модели, обеспечивая безупречный экспорт на маломощные граничные устройства и встроенные нейронные процессоры (NPU).
- ProgLoss + STAL: эти улучшенные функции потерь значительно повышают качество распознавания мелких объектов — критически важная функция для наборов данных IoT и аэросъемки.
Командам, планирующим новый проект в области компьютерного зрения, мы настоятельно рекомендуем оценить YOLO26. Она сочетает в себе элегантность трансформера без NMS с молниеносной скоростью и эффективностью обучения высокооптимизированной архитектуры YOLO.
Резюме
Выбор между RTDETRv2 и YOLOv9 во многом зависит от оборудования, на котором будет развернута модель, и конкретных требований к точности. RTDETRv2 обеспечивает передовую точность и понимание контекста для серверных приложений, в то время как YOLOv9 предлагает исключительную эффективность для граничных устройств.
Тем не менее, используя зрелую экосистему Ultralytics, ты можешь легко экспериментировать с обеими моделями. Более того, с появлением новых моделей, таких как YOLO11 и нативно end-to-end YOLO26, найти идеальный баланс между высокой скоростью вывода, поддержкой различных задач и низким потреблением памяти стало проще, чем когда-либо.