DAMO-YOLO vs. RTDETRv2: Баланс между скоростью и точностью Transformer
Выбор оптимальной архитектуры для detectирования объектов часто включает в себя учет компромисса между задержкой inference и точностью detectирования. В этом техническом сравнении рассматриваются DAMO-YOLO, высокоскоростной детектор, оптимизированный Alibaba Group, и RTDETRv2, Real-Time Detection Transformer второго поколения от Baidu. Мы анализируем их архитектурные инновации, эталонные показатели производительности и пригодность для развертывания, чтобы помочь вам принять обоснованные решения для ваших приложений компьютерного зрения.
DAMO-YOLO: оптимизация для низкой задержки
DAMO-YOLO представляет собой значительный шаг в эволюции архитектур YOLO, уделяя большое внимание максимизации скорости без серьезного ущерба для точности. Разработанный Alibaba Group, он использует передовые методы поиска нейронной архитектуры (NAS) для адаптации структуры сети для повышения эффективности.
- Авторы: Сяньчжэ Сюй, Ици Цзян, Вэйхуа Чэнь, Илунь Хуан, Юань Чжан и Сююй Сунь
- Организация:Alibaba Group
- Дата: 23.11.2022
- Arxiv:https://arxiv.org/abs/2211.15444v2
- GitHub:https://github.com/tinyvision/DAMO-YOLO
- Документация:https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Архитектурные особенности
DAMO-YOLO интегрирует несколько новых технологий для оптимизации конвейера обнаружения:
- Backbone на основе NAS: Модель использует поиск нейронной архитектуры (NAS) для автоматического обнаружения эффективной структуры backbone (MAE-NAS). Этот подход гарантирует, что глубина и ширина сети оптимизированы для конкретных аппаратных ограничений.
- RepGFPN Neck: Он имеет эффективную версию Generalized Feature Pyramid Network (GFPN), известную как RepGFPN. Этот компонент улучшает объединение признаков в разных масштабах, сохраняя при этом низкую задержку.
- ZeroHead: упрощенная конструкция головки, получившая название "ZeroHead", разделяет задачи классификации и регрессии, снижая вычислительную нагрузку на последние слои предсказания.
- AlignedOTA: Для стабильности обучения DAMO-YOLO использует AlignedOTA (Optimal Transport Assignment) — стратегию назначения меток, которая согласовывает цели классификации и регрессии для улучшения сходимости.
RTDETRv2: эволюция Transformer в реальном времени
RTDETRv2 основывается на успехе оригинальной RT-DETR, первого детектора объектов на основе transformer, достигшего производительности в реальном времени. Разработанная Baidu, RTDETRv2 представляет "bag-of-freebies" для повышения стабильности обучения и точности без дополнительных затрат на вывод.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 17.04.2023
- Arxiv:https://arxiv.org/abs/2304.08069
- GitHub:https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
- Документация:https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme
Архитектурные особенности
RTDETRv2 использует сильные стороны vision transformers, смягчая при этом их традиционные узкие места в скорости:
- Гибридный энкодер: Архитектура использует гибридный энкодер, который эффективно обрабатывает многомасштабные признаки, разделяя взаимодействие внутри масштаба и слияние между масштабами для экономии вычислительных затрат.
- Выбор запросов с учетом IoU: Этот механизм выбирает высококачественные начальные запросы объектов на основе Intersection over Union (IoU), что приводит к более быстрой сходимости обучения.
- Адаптируемая конфигурация: RTDETRv2 предлагает гибкие конфигурации для декодера и выбора запросов, что позволяет пользователям настраивать модель для конкретных требований к скорости/точности.
- Дизайн без Anchor: Как и его предшественник, он полностью без anchor, что устраняет необходимость в эвристической настройке anchor box и Non-Maximum Suppression (NMS) во время постобработки.
Техническое сравнение: производительность и эффективность
Основное различие между этими двумя моделями заключается в их архитектурных корнях — CNN против Transformer — и в том, как это влияет на их профиль производительности.
Метрический анализ
В таблице ниже представлены ключевые метрики на наборе данных COCO. В то время как RTDETRv2 доминирует с точки зрения среднего значения точности (mAP), DAMO-YOLO демонстрирует превосходную пропускную способность (FPS) и меньшее количество параметров для своих меньших вариантов.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
Анализ компромиссов
DAMO-YOLO превосходен в средах, где важна каждая миллисекунда, например, в высокочастотной промышленной сортировке. Его вариант 'Tiny' (t) исключительно легок. И наоборот, RTDETRv2 обеспечивает более высокий потолок точности, что делает его предпочтительным для сложных сцен, где пропуск объекта критичен, например, в автономной навигации или детальном наблюдении.
Архитектура и реальное применение
Глобальный контекст vs. Локальные признаки: Механизм внимания transformer в RTDETRv2 позволяет ему лучше понимать глобальный контекст, чем DAMO-YOLO на основе CNN. Это приводит к лучшей производительности в переполненных сценах или когда объекты перекрыты. Однако это глобальное внимание достигается за счет более высокого потребления памяти и более медленного времени обучения.
Аппаратная оптимизация: Бэкбон DAMO-YOLO на основе NAS высоко оптимизирован для inference на GPU, обеспечивая очень низкую задержку. RTDETRv2, хотя и работает в реальном времени, обычно требует более мощного оборудования для соответствия частоте кадров детекторов в стиле YOLO.
Преимущество Ultralytics: Почему стоит выбрать YOLO11?
Несмотря на то, что DAMO-YOLO и RTDETRv2 предлагают специализированные преимущества, Ultralytics YOLO11 выделяется как наиболее сбалансированное и удобное для разработчиков решение для подавляющего большинства реальных приложений.
Превосходный опыт разработки и экосистема
Одной из наиболее значительных проблем с академическими моделями, такими как DAMO-YOLO или RTDETRv2, является интеграция. Ultralytics решает эту проблему с помощью надежной экосистемы:
- Простота использования: Благодаря унифицированному Python API и CLI вы можете обучать, проверять и развертывать модели, используя всего несколько строк кода.
- Хорошо поддерживаемая экосистема: Модели Ultralytics поддерживаются активной разработкой, обширной документацией и большим сообществом. Это обеспечивает совместимость с новейшим аппаратным и программным обеспечением.
- Эффективность обучения: YOLO11 разработан для более быстрого обучения и требует значительно меньше памяти GPU (VRAM), чем модели на основе трансформеров, такие как RTDETRv2. Это делает высокопроизводительный ИИ доступным даже на оборудовании потребительского класса.
Непревзойденная универсальность
В отличие от DAMO-YOLO и RTDETRv2, которые в основном ориентированы на object detection ограничивающих рамок, YOLO11 изначально поддерживает широкий спектр задач компьютерного зрения:
Баланс производительности
YOLO11 достигает современной точности, которая конкурирует или превосходит RTDETRv2 во многих бенчмарках, сохраняя при этом скорость и эффективность выводов, характерные для семейства YOLO.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
Заключение
Выбор между DAMO-YOLO и RTDETRv2 зависит от ваших конкретных ограничений:
- Выберите DAMO-YOLO, если ваше основное ограничение — задержка, и вы выполняете развертывание на периферийных устройствах, где критически важен минимальный счетчик параметров.
- Выберите RTDETRv2, если вам требуется максимально возможная точность в сложных сценах и у вас есть вычислительный бюджет для поддержки архитектуры transformer.
Однако для целостного решения, сочетающего в себе высокую производительность, простоту использования и многозадачность, Ultralytics YOLO11 остается рекомендуемым выбором. Меньший объем памяти во время обучения в сочетании со зрелой экосистемой ускоряет путь от прототипа к производству.
Изучите другие модели
Чтобы лучше понимать ландшафт обнаружения объектов, изучите эти сравнения:
- YOLO11 vs. DAMO-YOLO
- YOLO11 vs. RTDETR
- YOLOv8 vs. DAMO-YOLO
- RT-DETR против EfficientDet
- YOLOX в сравнении с DAMO-YOLO