RTDETRv2 против PP-YOLOE+: Техническое сравнение трансформаторов и CNN
Область обнаружения объектов претерпела значительные изменения, разделившись на различные архитектурные философии. С одной стороны, мы имеем признанную эффективность конволюционных нейронных сетей (CNN), а с другой - зарождающуюся мощь трансформаторов зрения (ViTs). В данном сравнении рассматриваются две выдающиеся модели, разработанные компанией Baidu: RTDETRv2 (Real-Time Detection Transformer v2) и PP-YOLOE+.
В то время как PP-YOLOE+ представляет собой вершину изысканного обнаружения без якорей на основе CNN в экосистеме PaddlePaddle , RTDETRv2 расширяет границы, адаптируя архитектуру Transformer для приложений реального времени. Понимание нюансов между этими двумя системами - от дизайна нейронных сетей до требований к развертыванию - очень важно для инженеров, выбирающих подходящий инструмент для своих проектов в области компьютерного зрения.
RTDETRv2: Эволюция трансформеров
RTDETRv2 опирается на успех оригинального RT-DETR, стремясь решить проблему высоких вычислительных затрат, обычно связанных с моделями на основе DETR, сохраняя при этом превосходное понимание глобального контекста. Она призвана преодолеть разрыв между высокой точностью трансформаторов и скоростью, необходимой для выводов в реальном времени.
- Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
- Организация:Baidu
- Дата: 2023-04-17 (оригинал RT-DETR), последующие обновления v2
- Arxiv:https://arxiv.org/abs/2304.08069
- GitHub:https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Архитектура и ключевые особенности
В RTDETRv2 используется гибридный кодер, который эффективно обрабатывает разномасштабные признаки. В отличие от традиционных CNN, которые в значительной степени полагаются на локальные свертки, архитектура трансформатора использует механизмы самовнимания для улавливания дальних зависимостей по всему изображению. Ключевым нововведением является выбор запроса IoU, который улучшает инициализацию объектных запросов, что приводит к ускорению сходимости и повышению точности. Кроме того, отпадает необходимость в постобработке с использованием технологии немаксимального подавления (NMS), что делает конвейер действительно сквозным.
Сильные и слабые стороны
Преимущества:
- Глобальный контекст: Механизм внимания позволяет модели понимать взаимосвязи между удаленными друг от друга частями изображения, что делает ее превосходной в загроможденных сценах или там, где контекст имеет большое значение.
- Конечная логика: Удаление NMS упрощает конвейер развертывания и устраняет гиперпараметр, который часто требует ручной настройки.
- Высокая точность: обычно достигается более высокая средняя точность (mAP) на таких наборах данных, как COCO , по сравнению с CNN аналогичного масштаба.
Слабые стороны:
- Ресурсоемкость: Несмотря на оптимизацию, трансформаторы по своей природе потребляют больше памяти CUDA и требуют более мощных графических процессоров для обучения по сравнению с эффективными CNN.
- Сложность обучения: Сходимость может быть более медленной, а рецепт обучения часто более чувствителен к гиперпараметрам, чем стандартные модели YOLO .
PP-YOLOE+: Безъякорный канал CNN
PP-YOLOE+ - это развитие серии YOLO , разработанное специально для фреймворка PaddlePaddle . Она ориентирована на практическое применение, оптимизируя компромисс между скоростью вывода и точностью обнаружения с помощью чистой архитектуры CNN.
- Авторы: Авторы PaddlePaddle
- Организация:Baidu
- Дата: 2022-04-02
- Arxiv:https://arxiv.org/abs/2203.16250
- GitHub:https://github.com/PaddlePaddle/PaddleDetection/
Архитектура и ключевые особенности
PP-YOLOE+ имеет магистраль CSPRepResNet и горловину сети агрегации путей (PAN). Очень важно, что в ней используется голова без якорей, что упрощает конструкцию, устраняя необходимость в предопределенных ячейках. В модели используется Task Alignment Learning (TAL) - стратегия динамического присвоения меток, которая обеспечивает хорошую синхронизацию задач классификации и локализации, повышая качество конечных прогнозов.
Сильные и слабые стороны
Преимущества:
- Скорость вывода: Модель на основе CNN оптимизирована с точки зрения скорости, особенно на аппаратном обеспечении, где операции свертки хорошо ускоряются.
- Упрощенный дизайн: Безъякорная природа уменьшает количество необходимых гиперпараметров и инженерных эвристик.
- Сбалансированная производительность: Предлагает конкурентоспособное соотношение точности и скорости, что делает его подходящим для промышленных применений общего назначения.
Слабые стороны:
- Зависимость от фреймворка: Глубокая привязка к экосистеме PaddlePaddle может создавать трения для команд, работающих преимущественно в PyTorch или TensorFlow .
- Локальные рецептивные поля: Несмотря на свою эффективность, CNN в большей степени, чем трансформаторы, пытаются уловить глобальный контекст в очень сложных визуальных сценах.
Анализ производительности: Точность против эффективности
Выбор между RTDETRv2 и PP-YOLOE+ часто сводится к конкретным ограничениям среды развертывания. Если аппаратное обеспечение допускает более высокие вычислительные затраты, RTDETRv2 предлагает лучшие возможности обнаружения. И наоборот, для сценариев вывода в реальном времени с жесткими ограничениями PP-YOLOE+ остается сильным соперником.
| Модель | размер (пиксели) | 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 |
| 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 |
Данные:
- Точность: Самая большая модель PP-YOLOE+x достигает наивысшей mAP (54,7), опережая RTDETRv2-x. Однако если рассматривать средние и большие размеры, то RTDETRv2 в целом обеспечивает более высокую точность на уровень модели.
- Задержка: PP-YOLOE+s - король скорости здесь, 2,62 мс на TensorRT, что подчеркивает эффективность CNN-архитектур для легких задач.
- Вычисления: Модели RTDETRv2 обычно требуют меньше параметров, чем их прямые аналоги PP-YOLOE+ (например, RTDETRv2-x имеет 76M параметров против 98M у PP-YOLOE+x), однако архитектура трансформатора часто приводит к увеличению числа FLOP и потребления памяти во время работы.
Преимущество Ultralytics : Почему разработчики выбирают YOLO11
Хотя изучение таких моделей, как RTDETRv2 и PP-YOLOE+, дает представление о различных архитектурных подходах, большинству разработчиков требуется решение, в котором производительность сочетается с удобством использования и поддержкой экосистемы. Именно здесь Ultralytics YOLO11 превосходит все остальные.
Ultralytics YOLO11 - это не просто модель, а часть комплексной системы ИИ-видения, призванной оптимизировать весь жизненный цикл операций машинного обучения (MLOps).
Ключевые преимущества моделей Ultralytics
- Простота использования: В отличие от сложной настройки, которая часто требуется для исследовательских трансформаторных моделей или специфических инструментов, таких как PaddleDetection, Ultralytics предлагает опыт "от нуля до гера". Вы можете обучить самую современную модель всего за несколько строк кода Python .
- Эффективность использования памяти: Модели на основе трансформаторов, такие как RTDETRv2, как известно, требовательны к памяти и требуют значительного объема памяти CUDA для обучения. Модели Ultralytics YOLO оптимизированы для эффективности, что позволяет проводить обучение на графических процессорах потребительского класса и развертывать их на пограничных устройствах, таких как Raspberry Pi или Jetson Nano.
- Универсальность: В то время как PP-YOLOE+ и RTDETRv2 в первую очередь ориентированы на обнаружение, YOLO11 поддерживает широкий спектр задач, включая сегментацию объектов, оценку положения, классификацию и ориентированное обнаружение объектов (OBB).
- Хорошо поддерживаемая экосистема: Благодаря частым обновлениям, обширной документации и многочисленному сообществу Ultralytics гарантирует, что отсутствие поддержки или устаревшие зависимости никогда не помешают вам.
- Эффективность обучения: Ultralytics предоставляет легкодоступные предварительно обученные веса и надежные конвейеры дополнения данных, которые помогают моделям быстрее сходиться при меньшем объеме данных.
Оптимизация памяти
Для обучения трансформаторных моделей часто требуются high-end GPU с 24 ГБ и более VRAM. В отличие от этого, модели Ultralytics YOLO11 высоко оптимизированы и часто могут быть точно настроены на стандартных GPU с 8 ГБ VRAM, что значительно снижает барьер входа для разработчиков и стартапов.
Простая реализация с помощью Ultralytics
Следующий код демонстрирует, как легко обучить и развернуть модель с помощью Ultralytics Python API, подчеркивая удобство дизайна по сравнению с более сложными академическими репозиториями.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on your custom dataset
# This handles data loading, augmentation, and logging automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
# Returns a list of Result objects with boxes, masks, keypoints, etc.
results = model("path/to/image.jpg")
# Export the model to ONNX for deployment
model.export(format="onnx")
Заключение: Сделайте правильный выбор
При выборе между RTDETRv2, PP-YOLOE+ и Ultralytics YOLO11 следует руководствоваться требованиями конкретного приложения.
- Выбирайте RTDETRv2, если вы проводите академические исследования или работаете с оборудованием высокого класса, где максимальная точность в сложных, загроможденных сценах является единственным показателем, который имеет значение, и вы можете позволить себе более высокую стоимость обучения.
- Выбирайте PP-YOLOE+, если вы глубоко интегрированы в экосистему PaddlePaddle и нуждаетесь в надежном детекторе на основе CNN, который эффективно работает на конкретном поддерживаемом оборудовании.
- Выбирайте Ultralytics YOLO11 для подавляющего большинства коммерческих и практических приложений. Превосходный баланс скорости, точности и эффективности использования памяти в сочетании с поддержкой сегментации и отслеживания делает его наиболее продуктивным выбором для разработчиков. Простота развертывания в таких форматах, как TensorRT, CoreML и OpenVINO , гарантирует, что ваша модель может работать где угодно - от облака до границы.
Изучите другие сравнения моделей
Чтобы лучше понять, как эти архитектуры выглядят в сравнении с другими ведущими решениями, изучите эти подробные сравнения:
- RT-DETR против YOLOv8
- YOLO11 против YOLOv10
- PP-YOLOE+ vs. YOLOv8
- RT-DETR против EfficientDet
- YOLO11 против YOLOX