RTDETRv2 против YOLOv9: Сравнение трансформеров для обнаружения в реальном времени и CNN
В области компьютерного зрения наблюдается увлекательное расхождение в архитектурных философиях, главным образом между сверточными нейронными сетями (CNN) и моделями на основе трансформеров. Сравнивая RTDETRv2 и YOLOv9, разработчики по существу оценивают компромиссы между механизмами глобального внимания и программируемой градиентной информацией. Обе модели представляют собой вершину своих соответствующих парадигм, расширяя границы обнаружения объектов в реальном времени.
Введение в модели
RTDETRv2: Transformer для обнаружения в реальном времени
Разработанный исследователями Baidu, RTDETRv2 развивает оригинальный RT-DETR, вводя «Bag-of-Freebies» для улучшения базового трансформера обнаружения в реальном времени. Он решает традиционную проблему трансформеров — скорость инференса, делая их пригодными для приложений реального времени.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 2024-07-24
- Ссылки:Arxiv, GitHub
Определяющей характеристикой RTDETRv2 является его нативная сквозная архитектура без NMS. Полное исключение Non-Maximum Suppression (NMS) на этапе постобработки стабилизирует задержку вывода и упрощает конвейер развертывания. Механизм глобального внимания позволяет модели превосходно справляться с пониманием сложных сцен и плотных скоплений объектов, поскольку она одновременно оценивает весь контекст изображения.
YOLOv9: Программируемая градиентная информация
YOLOv9, высокоэффективная архитектура на основе CNN, решает проблему информационного узкого места, присущую глубоким нейронным сетям. Она представляет программируемую градиентную информацию (PGI) и обобщенную эффективную сеть агрегации слоев (GELAN).
- Авторы: Чен-Яо Ванг и Хонг-Юань Марк Ляо
- Организация:Институт информатики, Academia Sinica
- Дата: 21 февраля 2024 г.
- Ссылки:Arxiv, GitHub
YOLOv9 опирается на проверенные основы сверточных нейронных сетей, но максимизирует эффективность параметров. Сохраняя критически важную информацию во время прямого распространения, он обеспечивает надежные обновления весов, что приводит к невероятно легкой, но очень точной модели. Однако, в отличие от RTDETRv2, YOLOv9 по-прежнему использует стандартную постобработку NMS.
Производительность и эффективность использования ресурсов
При оценке этих моделей для производства критически важно сбалансировать среднюю точность (mAP) с вычислительными затратами. В таблице ниже показана их производительность на наборе данных MS COCO.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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, может быть очень познавательным, производственные среды требуют стабильности, простоты использования и хорошо поддерживаемой экосистемы. Интеграция этих моделей через Ultralytics Python API предлагает бесшовный опыт разработчика.
Унифицированный API и универсальность
Фреймворк Ultralytics абстрагирует сложности загрузки данных, аугментаций и распределенного обучения. Кроме того, хотя оригинальный RTDETRv2 строго ориентирован на detect, экосистема 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 является лидером в области развертываний на периферийных устройствах с ограниченными ресурсами. Его вычислительная эффективность делает его идеальным для:
- Робототехника: Навигация в реальном времени и обход препятствий, где требуется минимальная задержка.
- IoT умного города: Развертывание на периферийных устройствах, таких как NVIDIA Jetson, для мониторинга дорожного движения.
- Промышленная инспекция: Контроль качества на высокоскоростных сборочных линиях, требующий высокой частоты кадров (FPS).
Будущее: Представляем Ultralytics YOLO26
Хотя YOLOv9 и RTDETRv2 представляют собой огромные шаги вперед, ландшафт быстро развивался. Для современных развертываний недавно выпущенный Ultralytics YOLO26 представляет собой идеальное сочетание обеих архитектурных философий.
Объединяя лучшие аспекты трансформеров и сверточных нейронных сетей, YOLO26 устанавливает новый стандарт:
- Сквозная архитектура без NMS: Как и RTDETRv2, YOLO26 является изначально сквозной, полностью устраняя постобработку 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, и изначально сквозной YOLO26, найти идеальный баланс между высокоскоростным инференсом, универсальной поддержкой задач и низким потреблением памяти стало как никогда просто.