DAMO-YOLO vs. PP-YOLOE+: техническое сравнение
Выбор оптимальной архитектуры обнаружения объектов - ключевое решение, влияющее на эффективность, точность и масштабируемость проектов в области компьютерного зрения. В этом комплексном сравнении анализируются две известные модели: YOLO, детектор, ориентированный на скорость, от Alibaba, и PP-YOLOE+, высокоточная модель из экосистемы PaddlePaddle от Baidu. Мы подробно рассматриваем их уникальные архитектуры, показатели производительности и идеальные сценарии развертывания, чтобы помочь разработчикам сделать осознанный выбор.
YOLO: инновации, ориентированные на скорость, от Alibaba
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
Архитектура и ключевые особенности
YOLO отличает модульная философия дизайна, объединяющая несколько передовых технологий:
- MAE-NAS Backbone: В отличие от традиционных моделей, использующих стандартные основы, такие как ResNet, в YOLO применяется основа, найденная с помощью поиска нейронной архитектуры (NAS). В результате получается структура, математически оптимизированная для эффективного извлечения признаков.
- Эффективная RepGFPN: В модели используется обобщенная сеть пирамид признаков (GFPN), усовершенствованная с помощью методов повторной параметризации (Rep). Эта шейная архитектура улучшает объединение признаков в различных масштабах, минимизируя задержки при выводе.
- Технология ZeroHead: Отличительной особенностью является конструкция "ZeroHead", которая значительно снижает вычислительную нагрузку на головку обнаружения. Благодаря более эффективному разделению задач классификации и регрессии она позволяет экономить параметры, не жертвуя точностью.
- Назначение меток AlignedOTA: В процессе обучения YOLO использует AlignedOTA, динамическую стратегию присвоения меток, которая обеспечивает лучшее согласование между целями классификации и регрессии, что приводит к ускорению сходимости.
Дистилляция для компактных моделей
YOLO в значительной степени использует дистилляцию знаний для своих меньших вариантов (Tiny, Small). Передавая знания от более крупной модели "учителя" к более мелкой модели "ученика", она достигает более высокой точности, чем обычно возможно для таких легких архитектур.
PP-YOLOE+: Точная инженерия в PaddlePaddle
PP-YOLOE+ - это эволюция серии YOLO , разработанной исследователями Baidu. Это одноступенчатый детектор без якорей, разработанный для повышения точности на стандартных эталонах, таких как набор данныхCOCO , и специально оптимизированный для фреймворка глубокого обучения PaddlePaddle .
Технические детали:
- Авторы: Авторы PaddlePaddle
- Организация:Baidu
- Дата: 2022-04-02
- Arxiv:https://arxiv.org/abs/2203.16250
- GitHub:https://github.com/PaddlePaddle/PaddleDetection/
- Документы:https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
Архитектура и ключевые особенности
PP-YOLOE+ уделяет особое внимание изысканности и высокоточным компонентам:
- Механизм без якорей: Благодаря использованию безъякорного подхода PP-YOLOE+ упрощает ландшафт гиперпараметров, избавляя от необходимости разрабатывать якорные ящики вручную.
- CSPRepResNet: В основе лежит сочетание кросс-стадийных частичных сетей (CSPNet) с перепараметризованными остаточными блоками, что позволяет создать надежный экстрактор признаков, обеспечивающий баланс между градиентным потоком и вычислительными затратами.
- Task Alignment Learning (TAL): этот метод явно согласовывает оценку классификации с качеством локализацииIoU), гарантируя, что высокодостоверные обнаружения также имеют высококачественные ограничительные рамки.
- ET-Head: Эффективная головка с выравниванием задач (ET-Head) дополнительно оптимизирует разделение задач классификации и локализации, способствуя высоким показателям модели по mAP .
Анализ производительности: Метрики и эффективность
При сравнении YOLO и PP-YOLOE+ компромисс обычно лежит между чистой скоростью вывода и абсолютной точностью. YOLO спроектирован так, чтобы быть быстрее на аппаратном обеспечении GPU , в то время как PP-YOLOE+ стремится к точности высшего уровня, часто ценой увеличения размера модели и количества FLOP.
| Модель | размер (пиксели) | 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 |
| 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 |
Сильные и слабые стороны
YOLO:
- Сильные стороны: Исключительная скорость вывода данных в реальном времени, что делает его идеальным для обработки видео и развертывания на границе, где задержка является критичной. Архитектура на базе NAS обеспечивает эффективное использование ресурсов.
- Слабые стороны: Реализация глубоко привязана к конкретным исследовательским кодовым базам, которые может быть сложнее интегрировать в стандартные производственные конвейеры по сравнению с более авторитетными библиотеками.
PP-YOLOE+:
- Сильные стороны: Очень высокие потолки точности, особенно в варианте 'x' (extra-large). Интеграция с экосистемой PaddlePaddle обеспечивает полный набор инструментов для пользователей, уже работающих в этой среде.
- Слабые стороны: Более сильная зависимость от фреймворка PaddlePaddle может стать препятствием для команд, стандартизированных на PyTorch. Как правило, требуется больше параметров для аналогичной скорости вычислений по сравнению с YOLO.
Случаи использования и приложения
Различия в архитектуре диктуют идеальные варианты использования каждой модели:
- YOLO отлично подходит для Edge AI и робототехники. Его низкая задержка идеально подходит для беспилотников или автономных мобильных роботов (AMR), которым требуется мгновенная обработка визуальных данных для навигации по окружению или обхода препятствий.
- PP-YOLOE+ хорошо подходит для промышленного контроля и детальной аналитики. В таких сценариях, как контроль качества производства или анализ медицинских изображений, где пропуск небольшого дефекта обходится дороже, чем чуть более медленное время вывода, более высокий mAP PP-YOLOE+ является очень ценным.
Преимущество Ultralytics: Почему стоит выбрать YOLO11?
Хотя и YOLO , и PP-YOLOE+ обладают определенными преимуществами, Ultralytics YOLO11 представляет собой целостное решение, в котором сбалансированы производительность, удобство использования и поддержка экосистемы. Для большинства разработчиков YOLO11 представляет собой наиболее практичный и мощный выбор для внедрения компьютерного зрения в производство.
Непревзойденная универсальность и экосистема
В отличие от специализированных детекторов, YOLO11 - это мультимодальная мощь. Он поддерживает широкий спектр задач, включая обнаружение объектов, сегментацию экземпляров, оценку позы, классификацию и обнаружение ориентированных ограничительных рамок (OBB) - и все это в рамках единой унифицированной структуры.
- Простота использования: Ultralytics уделяет большое внимание работе с разработчиками, используя простой и интуитивно понятный API на Python . Вы можете обучать, проверять и развертывать модели всего в нескольких строках кода, что значительно сокращает время разработки по сравнению со сложными конфигурациями, которые часто требуются для моделей, ориентированных на исследования.
- Баланс производительности: YOLO11 достигает современной точности при поразительной скорости. Он оптимизирован для эффективной работы на различных аппаратных средствах, от мощных облачных GPU до периферийных устройств, таких как NVIDIA Jetson, и использует меньше памяти, чем многие альтернативы на основе трансформаторов.
- Эффективность обучения: Фреймворк включает оптимизированные процедуры обучения и обширную библиотеку предварительно обученных весов. Это позволяет быстро выполнять тонкую настройку на пользовательских наборах данных, экономя вычислительные затраты и время.
Оптимизированный рабочий процесс
Экосистема Ultralytics создана для беспрепятственного перехода от исследований к производству. Благодаря активной поддержке, частым обновлениям и интеграции с такими инструментами, как TensorRT и OpenVINO, разработчики могут с уверенностью развертывать модели.
Пример: Запуск YOLO11 с помощью Python
Приступить к работе с YOLO11 очень просто. Следующий фрагмент кода демонстрирует, как загрузить предварительно обученную модель и выполнить вывод на изображении:
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on a local image source
results = model("path/to/image.jpg")
# Display the inference results
results[0].show()
Эта простота в сочетании с высокой производительностью делает Ultralytics YOLO11 предпочтительным выбором для разработчиков, стремящихся создавать масштабируемые и поддерживаемые решения в области искусственного интеллекта.
Заключение
И YOLO , и PP-YOLOE+ внесли значительный вклад в область компьютерного зрения. YOLO демонстрирует возможности нейроархитектурного поиска для повышения эффективности, а PP-YOLOE+ подчеркивает точность, возможную при использовании безъякорных конструкций в экосистеме PaddlePaddle .
Однако для универсального, готового к производству решения, предлагающего оптимальный баланс скорости, точности и простоты использования, Ultralytics YOLO11 остается лучшим решением. Его комплексная поддержка множества задач технического зрения, малый объем памяти и обширная документация позволяют разработчикам быстрее и эффективнее внедрять инновации.