RTDETRv2 и EfficientDet: всестороннее техническое сравнение
В развивающемся ландшафте компьютерного зрения выбор правильной архитектуры detect объектов имеет решающее значение для успеха проекта. В этом сравнении рассматривается RTDETRv2, передовая модель на основе transformer, разработанная для работы в режиме реального времени, и EfficientDet, масштабируемое семейство сверточных нейронных сетей (CNN), оптимизированных для эффективности. Мы анализируем их архитектурные инновации, показатели производительности и идеальные сценарии развертывания, чтобы помочь разработчикам принимать обоснованные решения.
Обзоры моделей
Выбор между этими двумя моделями часто сводится к конкретным ограничениям целевого оборудования и требованиям к точности приложения.
RTDETRv2
RTDETRv2 (Real-Time Detection Transformer v2) представляет собой значительный шаг вперед в применении архитектур transformer для обнаружения объектов в реальном времени. Разработанный исследователями из Baidu, он основывается на успехе оригинальной RT-DETR, оптимизируя гибридный энкодер и механизмы выбора запросов для достижения современной точности с конкурентоспособной скоростью вывода на оборудовании GPU.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 17.04.2023
- Arxiv:RT-DETR: DETRs Beat YOLOs on Real-time Object Detection
- GitHub:Репозиторий RT-DETR
- Документация:Документация по RT-DETRv2
EfficientDet
EfficientDet, разработанный Google Brain, произвел революцию в этой области после своего выпуска, представив систематический способ масштабирования размеров модели. Объединив backbone EfficientNet со взвешенной двунаправленной пирамидальной сетью признаков (BiFPN), он предлагает спектр моделей (D0-D7), которые уравновешивают вычислительные затраты и точность, что делает его очень универсальным для различных ограничений ресурсов.
- Авторы: Мингксинг Тан, Руоминг Панг и Куок В. Ле
- Организация:Google Research
- Дата: 20.11.2019
- Arxiv:EfficientDet: Масштабируемое и эффективное обнаружение объектов
- GitHub:Репозиторий AutoML
- Документация:EfficientDet Readme
Узнайте больше об EfficientDet
Архитектурный анализ
Принципиальное различие заключается в их основных строительных блоках: один использует глобальный контекст transformers, а другой совершенствует эффективность convolutions.
RTDETRv2: Мощь Transformer
RTDETRv2 использует гибридный энкодер, который эффективно обрабатывает многомасштабные признаки. В отличие от традиционных CNN, он использует механизм выбора запросов, учитывающий IoU, чтобы сосредоточить внимание на наиболее релевантных частях изображения. Это позволяет модели эффективно обрабатывать сложные сцены с окклюзией и различными масштабами объектов. Архитектура разделяет взаимодействие внутри масштаба и слияние между масштабами, снижая вычислительные затраты, обычно связанные с Vision Transformers (ViTs).
Преимущества Transformer
Механизм внимания в RTDETRv2 обеспечивает глобальные рецептивные поля, позволяя модели лучше понимать взаимосвязи между удаленными объектами в сцене, чем типичные CNN.
EfficientDet: Масштабируемая эффективность
EfficientDet построен на основе EfficientNet и представляет BiFPN. BiFPN обеспечивает простое и быстрое многомасштабное слияние признаков, изучая важность различных входных признаков. Кроме того, EfficientDet использует метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину сети. Это гарантирует, что модель может быть адаптирована — от легкой D0 для мобильных приложений до тяжелой D7 для высокоточных серверных задач.
Сравнение производительности
Эталонные показатели производительности подчеркивают четкое различие в философии проектирования. RTDETRv2 нацелен на максимальную accuracy на мощном оборудовании, тогда как EfficientDet предлагает гранулированный градиент эффективности.
| Модель | размер (пиксели) | 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 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
Как указано в таблице, RT-DETRv2-x достигает превосходного mAP 54.3, превосходя даже самый большой EfficientDet-d7 (53.7 mAP), при этом значительно быстрее на TensorRT (15.03ms против 128.07ms). Однако для крайне ограниченных сред EfficientDet-d0 остается невероятно легким вариантом с минимальными параметрами (3.9M) и FLOPs.
Сильные и слабые стороны
Преимущества RTDETRv2:
- Высокая точность: Обеспечивает первоклассную производительность detect, особенно на сложном наборе данных COCO.
- Оптимизация GPU: Архитектура хорошо поддается распараллеливанию, что делает ее идеальной для развертывания TensorRT на NVIDIA GPU.
- Без привязки к якорям: Устраняет необходимость настройки anchor box, упрощая конвейер обучения.
Сильные стороны EfficientDet:
- Масштабируемость: Диапазон D0-D7 позволяет точно подобрать размер модели к возможностям оборудования.
- Низкие вычислительные требования: Меньшие варианты (D0-D2) отлично подходят для инференса только на CPU или мобильных периферийных устройствах.
- Устоявшийся: Зрелая архитектура с широкой поддержкой в различных инструментах преобразования.
Слабые стороны:
- RTDETRv2: Требует значительный объем памяти CUDA для обучения и, как правило, работает медленнее на CPU из-за операций transformer.
- EfficientDet: Более высокая задержка на высокоточной стороне (D7) по сравнению с современными детекторами; обучение может сходиться медленнее.
Идеальные варианты использования
Выбор правильной модели во многом зависит от конкретной среды приложения.
- Выберите RTDETRv2 для высококлассных систем наблюдения, автономного вождения или промышленного контроля, где доступен мощный GPU. Его способность различать мелкие детали делает его пригодным для таких задач, как обнаружение таблеток в медицинском производстве или анализ сложных спутниковых снимков.
- Выберите EfficientDet для IoT-устройств с батарейным питанием, мобильных приложений или сценариев, требующих широкой совместимости с различными уровнями оборудования. Он хорошо подходит для сканеров инвентаризации в умной рознице или базовых систем охранной сигнализации, где стоимость и энергопотребление являются основными проблемами.
Преимущества Ultralytics YOLO
Несмотря на то, что RTDETRv2 и EfficientDet имеют свои достоинства, Ultralytics YOLO11 предлагает убедительный синтез их лучших функций, заключенный в удобную для разработчиков экосистему.
Почему разработчики предпочитают Ultralytics
Модели Ultralytics разработаны не только для бенчмарков, но и для реального удобства использования.
- Простота использования: Python API и CLI от Ultralytics значительно снижают сложность обучения и развертывания. Пользователи могут перейти от установки к обучению на пользовательском наборе данных за считанные минуты.
- Хорошо поддерживаемая экосистема: Поддерживаемый процветающим сообществом и частыми обновлениями, фреймворк Ultralytics легко интегрируется с инструментами MLOps, такими как Weights & Biases, MLFlow и Ultralytics HUB для управления данными.
- Баланс производительности: YOLO11 достигает современных компромиссов между скоростью и точностью. Он часто соответствует или превосходит точность моделей-трансформеров, таких как RTDETRv2, сохраняя при этом скорость инференса, характерную для CNN.
- Эффективность использования памяти: В отличие от высоких требований к памяти при обучении на основе transformer, модели YOLO оптимизированы для эффективного использования GPU, что позволяет использовать большие размеры пакетов на оборудовании потребительского класса.
- Универсальность: Единый фреймворк поддерживает Object Detection, Сегментацию экземпляров, Оценку позы, Классификацию и Detection ориентированных объектов (OBB).
Эффективность обучения
Ultralytics предоставляет предварительно обученные веса, которые облегчают перенос обучения, что значительно сокращает время обучения. Вот как просто начать обучение модели YOLO11:
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on the COCO8 dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Упрощенное развертывание
Модели Ultralytics можно экспортировать в многочисленные форматы, такие как ONNX, TensorRT, CoreML и OpenVINO, с помощью одной команды, что упрощает путь от исследований до производства. Узнайте больше о режимах экспорта.
Заключение
В сравнении RTDETRv2 и EfficientDet победитель зависит от ваших ограничений. RTDETRv2 превосходит в средах с высокой точностью и ускорением на GPU, доказывая, что transformers могут быть быстрыми. EfficientDet остается надежным выбором для сред с высокой степенью ограничений и низким энергопотреблением.
Однако, для большинства разработчиков, ищущих универсальное, простое в использовании и высокопроизводительное решение, Ultralytics YOLO11 выделяется. Его способность обрабатывать несколько задач компьютерного зрения в рамках единой, целостной экосистемы в сочетании с превосходной эффективностью памяти и скоростью обучения делает его оптимальным выбором для современных приложений компьютерного зрения.
Изучите другие сравнения
Чтобы расширить свое понимание доступных моделей detect объектов, рассмотрите возможность изучения этих связанных сравнений:
- YOLO11 vs RTDETRv2
- YOLO11 vs. EfficientDet
- RTDETRv2 и YOLOv8
- EfficientDet против YOLOv8
- RTDETRv2 и YOLOX