PP-YOLOE+ против YOLOv9: техническое сравнение
Выбор правильной модели обнаружения объектов включает в себя критический компромисс между точностью, скоростью и вычислительными затратами. На этой странице представлено подробное техническое сравнение PP-YOLOE+ от Baidu и YOLOv9, двух мощных одноэтапных детекторов. Мы проанализируем их архитектурные различия, показатели производительности и идеальные варианты использования, чтобы помочь вам выбрать лучшую модель для ваших проектов компьютерного зрения. Хотя обе модели обладают большими возможностями, они происходят из различных философий проектирования и экосистем, что делает это сравнение важным для принятия обоснованных решений.
PP-YOLOE+: Высокая точность в экосистеме PaddlePaddle
PP-YOLOE+ (Practical PaddlePaddle You Only Look One-level Efficient Plus) — это модель обнаружения объектов, разработанная Baidu как часть их пакета PaddleDetection. Она была представлена для обеспечения баланса между точностью и эффективностью, специально оптимизированная для фреймворка глубокого обучения 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+ — это одноступенчатый детектор без привязки к anchor boxes, который построен на архитектуре YOLO с несколькими ключевыми улучшениями. Он использует масштабируемый backbone и neck, а также эффективный task-aligned head для повышения производительности. Модель разработана как высокопрактичная и эффективная, но ее основная оптимизация предназначена для фреймворка PaddlePaddle, что может быть важным фактором для разработчиков, работающих вне этой экосистемы.
Сильные стороны
- Высокий баланс производительности: PP-YOLOE+ предлагает похвальный компромисс между скоростью и точностью, что делает его жизнеспособным вариантом для различных приложений реального времени.
- Масштабируемые модели: Поставляется в нескольких размерах (t, s, m, l, x), что позволяет разработчикам выбирать модель, которая соответствует их конкретным ограничениям ресурсов.
- Оптимизировано для PaddlePaddle: Для команд, уже инвестировавших в экосистему Baidu PaddlePaddle, PP-YOLOE+ обеспечивает беспроблемную и высокооптимизированную работу.
Слабые стороны
- Зависимость от экосистемы: Модель тесно связана с фреймворком PaddlePaddle, у которого меньше пользовательская база и сообщество по сравнению с PyTorch. Это может привести к проблемам с интеграцией, развертыванием и поиском поддержки сообщества.
- Ограниченная универсальность: PP-YOLOE+ в основном ориентирован на обнаружение объектов. В отличие от этого, модели в экосистеме Ultralytics, такие как YOLOv8, предлагают унифицированный фреймворк для нескольких задач, включая сегментацию, классификацию и оценку позы.
- Более низкая эффективность: Как показано в таблице производительности, моделям PP-YOLOE+ часто требуется больше параметров и FLOPs для достижения уровней точности, сопоставимых с новыми архитектурами, такими как YOLOv9.
Идеальные варианты использования
PP-YOLOE+ лучше всего подходит для разработчиков и организаций, глубоко интегрированных в экосистему Baidu PaddlePaddle. Это надежный выбор для стандартных задач обнаружения объектов, где среда разработки уже согласована с инструментами Baidu.
YOLOv9: Programmable Gradient Information для расширенного обучения
Ultralytics YOLOv9 знаменует собой значительный скачок вперед в обнаружении объектов в реальном времени, решая фундаментальные проблемы потери информации в глубоких нейронных сетях. Она представляет новаторские концепции, такие как Programmable Gradient Information (PGI) и Generalized Efficient Layer Aggregation Network (GELAN), для повышения как точности, так и эффективности.
- Авторы: Чен-Яо Ванг и Хонг-Юань Марк Ляо
- Организация: Institute of Information Science, Academia Sinica, Taiwan
- Дата: 21.02.2024
- Arxiv: https://arxiv.org/abs/2402.13616
- GitHub: https://github.com/WongKinYiu/yolov9
- Документация: https://docs.ultralytics.com/models/yolov9/
Архитектура и ключевые особенности
Основные инновации YOLOv9, PGI и GELAN, выделяют его. PGI обеспечивает доступность надежной информации о градиенте для обновления сети, смягчая проблему информационного узкого места, что имеет решающее значение для обучения глубоких сетей. GELAN предоставляет высокоэффективную архитектуру, которая оптимизирует использование параметров и вычислительную скорость.
Хотя оригинальное исследование исходит из Academia Sinica, его интеграция в экосистему Ultralytics предоставляет беспрецедентные преимущества:
- Простота использования: YOLOv9 поставляется с оптимизированным пользовательским интерфейсом, простым Python API и обширной документацией, что делает его доступным как для начинающих, так и для экспертов.
- Хорошо поддерживаемая экосистема: Преимущества активной разработки, сильной поддержки сообщества, частых обновлений и интеграции с такими инструментами, как Ultralytics HUB, для обучения без кода и MLOps.
- Эффективность обучения: Модель предлагает эффективные процессы обучения с легкодоступными предварительно обученными весами, обеспечивая быстрые циклы разработки и развертывания.
- Меньшие требования к памяти: Как и другие модели Ultralytics YOLO, YOLOv9 разработан для эффективного использования памяти во время обучения и инференса, что является значительным преимуществом перед более требовательными архитектурами, такими как Transformers.
Сильные стороны
- Современная точность: YOLOv9 устанавливает новый стандарт точности на таких бенчмарках, как COCO, превосходя предыдущие модели.
- Превосходная эффективность: Благодаря PGI и GELAN, YOLOv9 достигает более высокой точности со значительно меньшим количеством параметров и вычислительных ресурсов (FLOPs) по сравнению с PP-YOLOE+ и другими конкурентами.
- Сохранение информации: PGI эффективно решает проблему потери информации в глубоких сетях, что приводит к лучшему обобщению и производительности модели.
- Универсальность: Надежная архитектура YOLOv9 в сочетании с фреймворком Ultralytics открывает потенциал для многозадачных приложений, что является отличительной чертой таких моделей, как YOLOv8 и YOLO11.
Слабые стороны
- Более новая модель: Будучи недавним релизом, широта учебных пособий, созданных сообществом, и интеграций со сторонними разработчиками все еще расширяется, хотя ее внедрение ускоряется экосистемой Ultralytics.
- Ресурсы для обучения: Несмотря на высокую эффективность для своего уровня производительности, обучение самых больших вариантов YOLOv9 (таких как YOLOv9-E) все равно может потребовать значительной вычислительной мощности.
Идеальные варианты использования
YOLOv9 — идеальный выбор для приложений, требующих высочайшей точности и эффективности. Он превосходно справляется со сложными сценариями, такими как автономное вождение, передовые системы безопасности и высокоточная робототехника. Благодаря своей эффективной конструкции, небольшие варианты также идеально подходят для развертывания на периферийных устройствах с ограниченными ресурсами.
Прямое сравнение производительности
При непосредственном сравнении моделей YOLOv9 демонстрирует явное преимущество в эффективности и точности. Например, модель YOLOv9-C достигает более высокого mAP (53,0), чем модель PP-YOLOE+l (52,9), при этом используя примерно половину параметров (25,3M против 52,2M) и меньше FLOPs (102,1B против 110,07B). Эта превосходная эффективность параметров и вычислений означает, что YOLOv9 может обеспечивать лучшую производительность с более низкими требованиями к оборудованию, что делает его более экономичным и масштабируемым решением.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT (мс) |
параметры (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 |
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+ является компетентной моделью в своей родной экосистеме PaddlePaddle, YOLOv9 является превосходным выбором для подавляющего большинства разработчиков и приложений. Ее архитектурные инновации обеспечивают современную точность с замечательной вычислительной эффективностью.
Ключевым отличием является экосистема. Выбирая YOLOv9, вы получаете доступ к всесторонней и удобной экосистеме Ultralytics. Это включает в себя обширную документацию, активную поддержку сообщества, простой API и мощные инструменты, такие как Ultralytics HUB, которые в совокупности оптимизируют весь конвейер разработки и развертывания.
Для разработчиков, стремящихся к наилучшему балансу производительности, простоты использования и универсальности, мы рекомендуем изучить модели Ultralytics. Хотя YOLOv9 является отличным выбором для задач, требующих высокой точности, вас также может заинтересовать Ultralytics YOLOv8 с ее проверенным опытом и многозадачными возможностями, или новейшая Ultralytics YOLO11 для передовой производительности в широком спектре задач компьютерного зрения.