PP-YOLOE+ против RTDETRv2: Техническое сравнение
Навигация по ландшафту современных моделей обнаружения объектов часто включает в себя выбор между устоявшимися архитектурами сверточных нейронных сетей (CNN) и новыми конструкциями на основе трансформеров. В этом техническом сравнении рассматриваются PP-YOLOE+ и RTDETRv2, две высокопроизводительные модели, разработанные Baidu. В то время как PP-YOLOE+ представляет собой эволюцию эффективных CNN без привязки к якорям в экосистеме PaddlePaddle, RTDETRv2 (Real-Time Detection Transformer version 2) расширяет границы точности с использованием vision transformers.
Этот анализ разбирает их архитектурные инновации, показатели производительности и идеальные сценарии развертывания, чтобы помочь вам выбрать правильный инструмент для ваших проектов в области computer vision.
PP-YOLOE+: Эффективный CNN без привязки к якорям
PP-YOLOE+ - это современный промышленный детектор объектов, разработанный командой PaddlePaddle . Он является модернизацией PP-YOLOE, сфокусированной на улучшении баланса между эффективностью обучения, скоростью вывода и точностью обнаружения. Построенный на принципах семейства YOLO (You Only Look Once), он создает обтекаемую архитектуру без якорей, оптимизированную для практического применения в реальном мире.
- Авторы: Авторы PaddlePaddle
- Организация:Baidu
- Дата: 2022-04-02
- Arxiv:https://arxiv.org/abs/2203.16250
- GitHub:https://github.com/PaddlePaddle/PaddleDetection/
- Документация:PaddleDetection PP-YOLOE+ README
Архитектура и основные особенности
PP-YOLOE+ использует масштабируемый CSPResNet бэкбон, который эффективно извлекает признаки в различных масштабах. Его архитектура отличается использованием CSPPAN (Cross Stage Partial Path Aggregation Network) neck, который улучшает слияние признаков. Ключевой инновацией является Efficient Task-aligned Head (ET-Head), который разделяет задачи классификации и локализации, обеспечивая их согласование во время обучения с помощью Task Alignment Learning (TAL). Этот подход устраняет необходимость в чувствительной настройке гиперпараметров anchor box.
Сильные стороны и ограничения
Основная сила PP-YOLOE+ заключается в ее скорости вывода. Она разработана для чрезвычайно быстрой работы на различном оборудовании, от GPU серверного класса до периферийных устройств, без значительного снижения точности. Конструкция без anchor упрощает конвейер обучения, облегчая адаптацию к новым наборам данных.
Однако, ее зависимость от фреймворка PaddlePaddle может быть препятствием для команд, глубоко интегрированных в экосистемы PyTorch или TensorFlow. Перенос моделей или поиск совместимых инструментов развертывания за пределами пакета Baidu может создать трудности.
RTDETRv2: мощь Transformer
RTDETRv2 представляет собой значительный скачок в обнаружении объектов в реальном времени, успешно адаптируя архитектуру Transformer—первоначально разработанную для обработки естественного языка—для задач компьютерного зрения с конкурентоспособной скоростью. Он решает проблему высокой вычислительной стоимости, обычно связанной с transformerами, предлагая "Bag-of-Freebies", который улучшает исходную базовую модель RT-DETR.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 2023-04-17 (Оригинал), 2024-07-24 (Релиз v2)
- Arxiv:https://arxiv.org/abs/2304.08069 (RT-DETR), https://arxiv.org/abs/2407.17140 (RT-DETRv2)
- GitHub:Репозиторий RT-DETR на GitHub
- Документация:Документация по RT-DETRv2
Архитектура и основные особенности
RTDETRv2 использует гибридный энкодер, который эффективно обрабатывает многомасштабные признаки, разделяя взаимодействия внутри масштаба и слияние между масштабами. Эта конструкция позволяет ему захватывать глобальный контекст — взаимосвязи между удаленными частями изображения — гораздо эффективнее, чем локальные рецептивные поля CNN. Он использует механизм выбора запросов, учитывающий IoU, для инициализации объектных запросов, что стабилизирует обучение и улучшает конечное качество детекции. Обновление v2 представляет гибкий декодер, который позволяет пользователям регулировать скорость inference, изменяя слои декодера без переобучения.
Сильные стороны и ограничения
Отличительной особенностью RTDETRv2 является ее точность в сложных сценах, особенно там, где объекты перекрыты или не имеют четкой визуальной различимости. Механизм самостоятельного внимания позволяет модели «рассуждать» о сцене глобально.
Интенсивность использования ресурсов
Хотя в названии присутствует «Real-Time», модели на основе Transformer, такие как RTDETRv2, обычно более ресурсоемки, чем CNN. Как правило, они требуют значительно больше CUDA памяти во время обучения и имеют более высокие FLOPs, что может усложнить развертывание на периферийных устройствах с ограниченной памятью по сравнению с эффективными CNN, такими как YOLO.
Анализ производительности: скорость в сравнении с точностью
Выбор между этими двумя моделями часто сводится к конкретным ограничениям среды развертывания. В таблице ниже проиллюстрированы компромиссы, сравнивающие среднюю точность (mAP) и задержку вывода.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
| 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 |
Основные выводы:
- Эффективность малых моделей: В меньшем диапазоне спектра, PP-YOLOE+s почти в два раза быстрее, чем RTDETRv2-s (2.62ms против 5.03ms), при этом используя значительно меньше параметров (7.93M против 20M).
- Пиковая точность:RTDETRv2 обычно обеспечивает более высокую точность на параметр в среднем диапазоне (модели M и L). Однако самый большой PP-YOLOE+x по существу соответствует или немного превосходит точность RTDETRv2-x (54,7 против 54,3 mAP), сохраняя при этом немного более низкую задержку.
- Вычислительная нагрузка: Модели RTDETRv2 стабильно демонстрируют более высокие показатели FLOPs, что указывает на более высокую вычислительную нагрузку, которая влияет на время работы от батареи и тепловыделение в встроенных системах.
Приложения в реальном мире
Когда следует выбирать PP-YOLOE+
- Высокоскоростное производство: Для сборочных линий, требующих высокочастотного контроля качества, где важна задержка в миллисекунды.
- Периферийные устройства: При развертывании на оборудовании с ограниченным энергопотреблением, таком как дроны или портативные сканеры, где низкое количество FLOPs и параметров имеет решающее значение.
- Экосистема PaddlePaddle: Если ваша существующая инфраструктура уже построена на основе фреймворка PaddlePaddle от Baidu.
Когда следует выбирать RTDETRv2
- Сложные сценарии: Для автономного вождения или мониторинга дорожного движения, где понимание взаимосвязи между объектами (контекст) так же важно, как и их detect.
- Переполненные сцены: В приложениях видеонаблюдения с сильной окклюзией механизм глобального внимания transformer помогает поддерживать согласованность отслеживания и detect лучше, чем чистые CNN.
Преимущество Ultralytics: Почему YOLO11 выделяется
В то время как PP-YOLOE+ и RTDETRv2 являются внушительными моделями, Ultralytics YOLO11 предлагает убедительную альтернативу, которая часто служит превосходным выбором для большинства разработчиков и исследователей.
- Простота использования: Ultralytics уделяет первостепенное внимание опыту разработчиков. С простым Python API и CLI вы можете обучать, проверять и развертывать модели за считанные минуты. В отличие от сложной конфигурации, часто требуемой для PaddleDetection или исследовательских кодовых баз, таких как RT-DETR, модели Ultralytics YOLO работают "из коробки".
- Хорошо поддерживаемая экосистема: Экосистема Ultralytics динамична и активно обновляется. Она включает в себя простую интеграцию с инструментами для аннотации данных, отслеживания экспериментов (например, MLflow и Comet) и развертывания.
- Баланс производительности:YOLO11 разработан для обеспечения оптимального компромисса между скоростью и точностью. Он часто соответствует или превосходит точность transformer-моделей, сохраняя при этом скорость и эффективность памяти CNN.
- Эффективность памяти: Одним из важнейших преимуществ YOLO11 является меньший объем занимаемой памяти. Обучение моделей на основе трансформеров, таких как RTDETRv2, может потребовать огромного количества GPU VRAM. YOLO11 оптимизирован для эффективного обучения на оборудовании потребительского класса.
- Универсальность: В отличие от многих конкурентов, ориентированных исключительно на ограничивающие прямоугольники, единая архитектура модели YOLO11 поддерживает Object Detection, Instance Segmentation, Pose Estimation, Classification и Oriented Object Detection (OBB).
Пример: Обучение YOLO11 на Python
В следующем примере демонстрируется простота рабочего процесса Ultralytics по сравнению с более сложными настройками фреймворка:
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)
# Run inference on an image
results = model("path/to/image.jpg")
Заключение
PP-YOLOE+ и RTDETRv2 демонстрируют быстрый прогресс в области компьютерного зрения. PP-YOLOE+ — отличный выбор для тех, кто глубоко интегрирован в экосистему PaddlePaddle и требует высокой эффективности, в то время как RTDETRv2 демонстрирует высокий потенциал точности трансформеров.
Однако, для разработчиков, ищущих универсальное, простое в использовании и поддерживаемое сообществом решение, которое не ставит под угрозу производительность, Ultralytics YOLO11 остается рекомендуемым стандартом. Его баланс низкого потребления памяти, высокой скорости и многозадачности делает его наиболее практичным выбором для переноса решений на основе ИИ от прототипа к производству.