Перейти к содержанию

PP-YOLOE+ против YOLOv7: Техническое углубленное изучение архитектур detectирования объектов

Выбор оптимальной модели object detection включает в себя балансировку точности, скорости inference и сложности развертывания. Двумя важными претендентами в этой области являются PP-YOLOE+ и YOLOv7, выпущенные в 2022 году с целью продвижения передовых технологий. Этот всесторонний анализ исследует их уникальные архитектуры, эталонные показатели и пригодность для реальных приложений, помогая разработчикам принимать решения на основе данных.

Сравнение метрик производительности

В следующей таблице представлено прямое сравнение ключевых показателей производительности, включая Mean Average Precision (mAP) и скорость инференса на поддерживаемом оборудовании. Эти данные помогают визуализировать компромиссы между anchor-free подходом PP-YOLOE+ и оптимизированной архитектурой YOLOv7.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

PP-YOLOE+: Улучшенное detectирование без anchor-ов

PP-YOLOE+ - это эволюция серии YOLO , разработанная исследователями из Baidu. Он опирается на сильные стороны своего предшественника PP-YOLOE, внося усовершенствования в процесс обучения и архитектуру для дальнейшего повышения скорости сходимости и производительности последующих задач. Являясь безъякорным детектором, он устраняет необходимость в предопределенных якорных ящиках, что упрощает конструкцию и уменьшает настройку гиперпараметров.

Узнайте больше о PP-YOLOE+

Архитектурные особенности

Архитектура PP-YOLOE+ включает в себя CSPResNet backbone, оснащенный различными рецептивными полями для эффективного захвата признаков в нескольких масштабах. Ключевой инновацией является Efficient Task-aligned Head (ET-head), который разделяет задачи классификации и регрессии, обеспечивая при этом их согласование с помощью определенной функции потерь.

PP-YOLOE+ использует Task Alignment Learning (TAL), стратегию назначения меток, которая динамически выбирает положительные примеры на основе соответствия качества классификации и локализации. Это гарантирует, что модель фокусируется на высококачественных прогнозах во время обучения. Кроме того, модель использует стратегию распределенного обучения и избегает использования нестандартных операторов, что облегчает развертывание на различных аппаратных платформах, поддерживаемых экосистемой PaddlePaddle.

Ключевая особенность: Безанкорный дизайн

Удаляя anchor boxes, PP-YOLOE+ снижает сложность, связанную с кластеризацией anchor и этапами сопоставления. Это часто приводит к лучшей генерализации на различных наборах данных, где объекты могут иметь экстремальные пропорции.

YOLOv7: оптимизирована для скорости в реальном времени

YOLOv7 установила новый эталон для object detection в реальном времени после своего выпуска, уделяя большое внимание архитектурной эффективности и методам "bag-of-freebies" — техникам, которые повышают точность без увеличения стоимости inference. Она была разработана, чтобы превзойти предыдущие современные модели, такие как YOLOR и YOLOv5, как по скорости, так и по точности.

Узнайте больше о YOLOv7

Архитектурные инновации

YOLOv7 представила Extended Efficient Layer Aggregation Network (E-ELAN). Эта конструкция магистральной сети позволяет сети изучать более разнообразные функции, контролируя кратчайшие и длиннейшие пути градиента, повышая обучаемость, не разрушая исходный путь градиента.

Еще одним важным вкладом является использование репараметризации модели. Во время обучения модель использует многоветвистую структуру, которая объединяется в более простую одноветвистую структуру для инференса. Это позволяет YOLOv7 извлекать выгоду из богатых представлений признаков во время обучения, сохраняя при этом высокую скорость во время развертывания. Модель также использует вспомогательные головы для обучения глубоких сетей, используя стратегию назначения меток с «грубой к тонкой» ведущей направляющей.

Сравнительный анализ: Сильные и слабые стороны

При выборе между этими двумя мощными моделями важно учитывать конкретные требования вашего проекта в области компьютерного зрения.

Точность и скорость

PP-YOLOE+ предлагает широкий выбор моделей. PP-YOLOE+s очень эффективен для периферийных устройств, в то время как PP-YOLOE+x достигает топового mAP, хотя и при более низкой частоте кадров. YOLOv7 превосходен в «золотой середине» обнаружения в реальном времени, часто обеспечивая более высокий FPS на GPU оборудовании для заданного уровня точности по сравнению со многими конкурентами. Для приложений с высокой пропускной способностью, таких как мониторинг дорожного движения, оптимизация инференса YOLOv7 является преимуществом.

Экосистема и удобство использования

Одно из основных различий заключается в их экосистемах. PP-YOLOE+ глубоко укоренен в фреймворке PaddlePaddle. Хотя это и мощный инструмент, он может представлять собой более крутую кривую обучения для команд, в основном привыкших к PyTorch. YOLOv7 является родным для PyTorch, что делает его в целом более доступным для широкого исследовательского сообщества.

Однако обе модели могут быть сложными в обучении и тонкой настройке по сравнению с современными стандартами. YOLOv7 включает в себя сложные вычисления якорей и чувствительность к гиперпараметрам, в то время как PP-YOLOE+ требует навигации по конфигурациям Paddle detectии.

Преимущество Ultralytics: Зачем обновлять?

В то время как PP-YOLOE+ и YOLOv7 являются превосходными моделями, область ИИ развивается стремительными темпами. Модели Ultralytics, такие как YOLOv8 и современная YOLO11, представляют собой следующее поколение визуального ИИ, решающее многие проблемы юзабилити и эффективности, присущие более ранним архитектурам.

Превосходный пользовательский опыт и экосистема

Ultralytics уделяет первостепенное внимание простоте использования. В отличие от сложных файлов конфигурации, которые часто требуются другими фреймворками, модели Ultralytics можно обучать, проверять и развертывать всего несколькими строками кода на python или простыми командами CLI.

  • Унифицированный API: Переключайтесь между задачами, такими как object detection, instance segmentation, classification, оценка позы и obb, без каких-либо проблем.
  • Хорошо поддерживаемая экосистема: Воспользуйтесь частыми обновлениями, процветающим сообществом и обширной документацией, которая помогает быстро решать проблемы.
  • Интеграция: Встроенная поддержка отслеживания экспериментов (MLflow, Comet), управления наборами данных и упрощенный экспорт моделей в такие форматы, как ONNX, TensorRT и CoreML.

Производительность и эффективность

Модели Ultralytics разработаны для оптимального баланса производительности. Они часто достигают более высокой точности, чем YOLOv7, с меньшими вычислительными затратами. Кроме того, они разработаны для эффективного использования памяти, требуя меньше памяти CUDA во время обучения по сравнению со многими альтернативами на основе transformer или более старыми версиями YOLO. Эта эффективность обучения позволяет быстрее выполнять итерации и снизить затраты на облачные вычисления.

Пример кода: Простота в действии

Посмотрите, насколько просто обучить современную модель Ultralytics по сравнению с устаревшими рабочими процессами:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model (recommended for best performance)
model = YOLO("yolo11n.pt")

# Train the model on a dataset (e.g., COCO8)
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

# Export to ONNX format for deployment
model.export(format="onnx")

Защита ваших проектов от устаревания

Принятие фреймворка Ultralytics гарантирует, что вы используете не просто модель, а платформу, которая развивается. Благодаря поддержке последних версий Python и аппаратных ускорителей вы снижаете технический долг и обеспечиваете долгосрочную поддержку своих AI-решений.

Заключение

PP-YOLOE+ остается сильным выбором для тех, кто инвестирует в экосистему PaddlePaddle, предлагая надежную архитектуру без anchor boxes. YOLOv7 продолжает оставаться отличным вариантом для проектов, требующих высокой пропускной способности GPU. Однако для разработчиков, ищущих универсальное, удобное и высокопроизводительное решение, охватывающее весь спектр задач компьютерного зрения, рекомендуется Ultralytics YOLO11.

Изучите другие модели

Расширьте свое понимание ландшафта обнаружения объектов с помощью этих сравнений:


Комментарии