YOLOv9 против PP-YOLOE+: Техническое сравнение
Выбор оптимальной архитектуры обнаружения объектов является ключевым решением для инженеров по компьютерному зрению, балансирующим между необходимостью высокой точности и вычислительными ограничениями. В этом подробном руководстве сравниваются YOLOv9современную модель, использующую новые методы градиентной информации, и PP-YOLOE+, надежный детектор, оптимизированный для фреймворка PaddlePaddle . Мы анализируем их архитектурные инновации, эталонную производительность и пригодность для развертывания, чтобы помочь вам определить, что лучше всего подходит для ваших приложений компьютерного зрения.
YOLOv9: программируемая градиентная информация для улучшенного обучения
YOLOv9 представляет собой значительный скачок в эволюции детекторов объектов в реальном времени. Выпущенная в начале 2024 года, она решает фундаментальные проблемы, связанные с потерей информации в глубоких нейронных сетях, устанавливая новые ориентиры по точности и эффективности параметров.
Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
Организация:Institute of Information Science, Academia Sinica, Taiwan
Дата: 2024-02-21
Arxiv:https://arxiv.org/abs/2402.13616
GitHub:https://github.com/WongKinYiu/yolov9
Документацияultralytics
В архитектуре представлены две новаторские концепции: Программируемая градиентная информация (PGI) и обобщенная эффективная сеть агрегирования слоев (GELAN). По мере углубления сети данные, необходимые для вычисления функции потерь, могут быть потеряны - это явление известно как "информационное узкое место". PGI решает эту проблему, генерируя надежные градиенты с помощью вспомогательной обратимой ветви, гарантируя, что глубокие характеристики сохранят важную информацию. Одновременно GELAN оптимизирует использование параметров, позволяя модели достигать высокой точности при меньших вычислительных ресурсах по сравнению с архитектурами, основанными на свертке по глубине.
Интегрированный в экосистемуUltralytics , YOLOv9 имеет ориентированный на пользователя дизайн, который упрощает сложные рабочие процессы. Разработчики могут использовать единый Python API для обучения, проверки и развертывания, что значительно сокращает время от прототипа до производства. Такая интеграция также обеспечивает совместимость с широким спектром наборов данных и форматов экспорта.
PP-YOLOE+: Высокая точность в экосистеме PaddlePaddle
PP-YOLOE+ - это усовершенствованная версия PP-YOLOE, разработанная компанией Baidu в рамках пакета PaddleDetection. Она специально разработана для эффективной работы на PaddlePaddle обеспечивая оптимальный баланс скорости и точности для промышленных приложений.
Авторы: PaddlePaddle Authors
Organization:Baidu
Date: 2022-04-02
Arxiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
DocumentationPaddlePaddle
В PP-YOLOE+ используется безъякорный механизм, устраняющий необходимость в предопределенных якорных ящиках, что упрощает процесс настройки гиперпараметров. В его основе обычно используется CSPRepResNet, а уникальная конструкция головы основана на технологии Task Alignment Learning (TAL). Этот подход позволяет выровнять задачи классификации и локализации для повышения качества результатов обнаружения. Несмотря на широкие возможности, PP-YOLOE+ тесно связан с экосистемой PaddlePaddle , что может вызвать трудности в обучении у команд, стандартизированных на PyTorch или TensorFlow.
Зависимость от экосистемы
Хотя PP-YOLOE+ обладает конкурентоспособной производительностью, его зависимость от фреймворка PaddlePaddle может ограничить совместимость с более широким спектром инструментов и библиотек PyTorch, обычно используемых в западном исследовательском сообществе.
Анализ производительности: скорость, точность и эффективность
При сравнении этих двух архитектур, YOLOv9 демонстрирует явное преимущество как по параметру эффективности, так и по пиковой точности. Интеграция GELAN позволяет YOLOv9 более эффективно обрабатывать визуальные данные, что приводит к более высоким показателям средней точности (mAP) на наборе данныхCOCO , при этом часто сохраняется более низкая задержка.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
Основные выводы
- Эффективность использования параметров: Модель YOLOv9 достигает производительности, сравнимой с более крупными моделями, при использовании всего 2,0 М параметров, что значительно меньше, чем у варианта PP-YOLOE+t с 4,85 М. Это делает YOLOv9 особенно подходящим для краевых устройств ИИ с ограниченным объемом памяти.
- Пиковая точность:YOLOv9 достигает замечательного значения 55,6% mAP, превосходя самую большую модель PP-YOLOE+x (54,7% mAP), несмотря на использование примерно на 40% меньшего количества параметров (57,3M против 98,42M). Это подчеркивает архитектурное превосходство GELAN в максимизации возможностей извлечения признаков.
- Скорость вывода: хотя PP-YOLOE+s демонстрирует небольшое преимущество по задержкам на графических процессорах T4, модели YOLOv9 в целом предлагают лучший компромисс, обеспечивая значительно более высокую точность при аналогичных вычислительных затратах. Например, YOLOv9 превосходит PP-YOLOE+l по точности (53,0 % против 52,9 %), при этом она быстрее (7,16 мс против 8,36 мс) и легче.
Методология обучения и простота использования
Опыт разработчиков значительно отличается в этих двух моделях, что в первую очередь обусловлено их базовыми фреймворками и поддержкой экосистемы.
Преимущество экосистемы Ultralytics
Выбор YOLOv9 через Ultralytics предоставляет доступ к полному набору инструментов, предназначенных для оптимизации жизненного цикла машинного обучения.
- Простой API: Для обучения модели требуется всего несколько строк кода, абстрагируясь от сложных шаблонов.
- Эффективность использования памяти: Модели Ultralytics YOLO оптимизированы для меньшего использования памяти во время обучения по сравнению с архитектурами на основе трансформаторов, что позволяет использовать большие объемы партий на оборудовании потребительского класса.
- Универсальность: Помимо обнаружения, система Ultralytics поддерживает сегментацию объектов, оценку позы и классификацию, предлагая единый интерфейс для решения различных задач.
- Эффективное обучение: Благодаря расширению данных и доступным предварительно обученным весам разработчики могут быстрее достичь сходимости, экономя ценные часы работы GPU .
Оптимизация рабочего процесса с помощью Ultralytics
Вы можете загрузить, обучить и проверить модель YOLOv9 всего за несколько строк на Python, используя надежный движок Ultralytics для автоматической настройки гиперпараметров и отслеживания экспериментов.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train the model on a custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
Окружающая среда PaddlePaddle
Для работы PP-YOLOE+ требуется библиотека PaddleDetection. Несмотря на свою мощь, она требует знакомства с экосистемой Baidu. Настройка среды, преобразование наборов данных в нужный формат и экспорт моделей для развертывания могут оказаться более сложными для пользователей, не вовлеченных в инфраструктуру PaddlePaddle .
Идеальные варианты использования
Понимание сильных сторон каждой модели помогает выбрать подходящий инструмент для конкретных реальных задач.
Когда выбирать YOLOv9
- Автономные системы: Для самоуправляемых автомобилей и робототехники, где максимальная точность имеет решающее значение для безопасности, превосходная mAP YOLOv9 обеспечивает необходимую надежность.
- Развертывание на границе: Легкий YOLOv9 идеально подходит для развертывания на устройствах Raspberry Pi или NVIDIA Jetson для решения таких задач, как подсчет людей или интеллектуальная аналитика розничной торговли.
- Исследования и разработки: Развитая экосистема и поддержка PyTorch делают его идеальным для исследователей, создающих прототипы новых решений в области компьютерного зрения или интегрирующих возможности отслеживания объектов.
- Среды с ограниченными ресурсами: Приложения, требующие высокой производительности при ограниченном объеме VRAM, выигрывают от эффективной архитектуры YOLOv9 и меньшего объема занимаемой памяти.
Когда следует выбирать PP-YOLOE+
- ПользователиPaddlePaddle : Для организаций, уже использующих инфраструктуру Baidu, PP-YOLOE+ предлагает бесшовную интеграцию и собственную оптимизацию.
- Промышленная инспекция (Китай): Учитывая его широкое распространение на азиатском рынке, он часто встречается в производственных конвейерах, которые полагаются на специальное оборудование для вывода данных Paddle.
Заключение
Хотя обе модели являются грозными соперниками в области обнаружения объектов, YOLOv9 становится лучшим выбором для большинства мировых разработчиков и предприятий. Инновационное использование программируемого градиента (Programmable Gradient Information, PGI) обеспечивает современную точность и поразительную эффективность, превосходя PP-YOLOE+ по ключевым показателям при использовании значительно меньшего количества параметров.
Кроме того, экосистемаUltralytics повышает уровень YOLOv9 , обеспечивая непревзойденную простоту использования, обширную документацию и активное сообщество. Создаете ли вы системы охранной сигнализации, анализируете медицинские снимки или разрабатываете инфраструктуру "умного города", YOLOv9 предлагает баланс производительности и универсальность, необходимые для достижения успеха.
Другие модели для рассмотрения
Если вы изучаете передовой искусственный интеллект зрения, обратите внимание на другие мощные модели от Ultralytics:
- YOLO11: Последняя разработка в серии YOLO , обеспечивающая еще более высокую скорость и точность для самых современных применений.
- YOLOv8: Универсальный промышленный стандарт, поддерживающий задачи обнаружения, сегментации, позирования и OBB.
- RT-DETR: Детектор на основе трансформатора, работающий в реальном времени и отличающийся высокой точностью, предлагающий альтернативу архитектурам на основе CNN.