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

EfficientDet vs. PP-YOLOE+: техническое сравнение

В эволюции компьютерного зрения мало какие сравнения так четко подчеркивают сдвиг в философии проектирования, как контраст между EfficientDet от Google и PP-YOLOE+ от Baidu. В то время как EfficientDet ознаменовал собой важную веху в эффективности параметров благодаря составному масштабированию, PP-YOLOE+ представляет собой современную эру высокоскоростного обнаружения без привязки к якорям, оптимизированного для вывода на GPU.

Этот анализ углубляется в их архитектуры, показатели производительности и практическое применение, чтобы помочь разработчикам выбрать правильный инструмент для их конкретных задач object detection.

Прямой анализ производительности

Ландшафт производительности значительно изменился между выпуском этих двух моделей. EfficientDet фокусируется на минимизации FLOPs (операций с плавающей запятой) и количества параметров, что делает его теоретически эффективным. Однако PP-YOLOE+ разработан для практической скорости inference на аппаратных ускорителях, таких как GPU, с использованием оптимизаций TensorRT.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0
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

Данные показывают важный вывод: хотя EfficientDet-d0 является легковесной моделью, более крупные варианты (d5-d7) страдают от значительной задержки. И наоборот, PP-YOLOE+l достигает сопоставимого среднего значения точности (mAP) с EfficientDet-d6 (52.9 против 52.6), но работает в 10 раз быстрее на T4 GPU (8.36 мс против 89.29 мс).

EfficientDet: Масштабируемая эффективность

EfficientDet был представлен командой Google Brain AutoML с целью преодоления ограничений эффективности предыдущих детекторов. Он построен на основе бэкбона EfficientNet, применяя метод compound scaling, который равномерно масштабирует разрешение, глубину и ширину.

Авторы: Мингксинг Тан, Руоминг Панг и Куок В. Ле
Организация:Google
Дата: 2019-11-20
Arxiv:1911.09070
GitHub:google/automl
Документация:README

Ключевые архитектурные особенности

  1. BiFPN (Bidirectional Feature Pyramid Network): В отличие от традиционных FPN, BiFPN обеспечивает простое объединение многомасштабных признаков. Она вводит обучаемые веса, чтобы определить важность различных входных признаков, многократно применяя объединение многомасштабных признаков сверху вниз и снизу вверх.
  2. Compound Scaling: Единственный составной коэффициент $\phi$ контролирует ширину, глубину и разрешение сети, позволяя создать семейство моделей (от D0 до D7), ориентированных на различные ограничения ресурсов.

Сильные и слабые стороны

  • Преимущества: Отличная эффективность параметров; эффективна для маломощных CPU, где FLOPs являются основным узким местом; хорошо структурированный подход к масштабированию.
  • Недостатки: Сложные соединения в BiFPN и depth-wise separable convolutions часто ограничены памятью на GPU, что приводит к более высокой задержке инференса в реальных условиях, несмотря на низкое количество FLOP.

Вы знали?

Активное использование depth-wise separable convolutions в EfficientDet значительно сокращает количество параметров, но может привести к снижению использования GPU по сравнению со стандартными convolutions, используемыми в моделях, таких как YOLO.

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

PP-YOLOE+: Соперник без anchor-ов

PP-YOLOE+, выпущенная Baidu как часть экосистемы PaddlePaddle, является эволюцией PP-YOLOv2. Она направлена на то, чтобы превзойти производительность YOLOv5 и YOLOX за счет принятия полностью свободной от якорей (anchor-free) механики и передовых стратегий обучения.

Авторы: Авторы PaddlePaddle
Организация:Baidu
Дата: 2022-04-02
Arxiv:2203.16250
GitHub:PaddlePaddle/PaddleDetection
Документация:PP-YOLOE+ Configs

Ключевые архитектурные особенности

  1. Дизайн без Anchor: Устраняя предопределенные anchor boxes, PP-YOLOE+ упрощает головку detect и снижает нагрузку, связанную с настройкой гиперпараметров.
  2. CSPRepResNet: Backbone использует RepResBlock, который сочетает в себе преимущества остаточных соединений во время обучения и повторно параметризует их в оптимизированную структуру для логического вывода.
  3. TAL (Task Alignment Learning): Усовершенствованная стратегия назначения меток, которая динамически выравнивает оценку классификации и качество локализации.

Сильные и слабые стороны

  • Преимущества: Самая современная точность на наборе данных COCO; чрезвычайно быстрая на оборудовании, поддерживаемом TensorRT; инновационная конструкция головной части.
  • Недостатки: Сильная привязка к фреймворку PaddlePaddle может создать проблемы с интеграцией для команд, стандартизированных на PyTorch; немного большее количество параметров для небольших моделей по сравнению с EfficientDet-d0.

Преимущество Ultralytics: Унифицированное решение

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

В отличие от специализированных моделей для сравнения, модели Ultralytics разработаны для современного MLOps workflow, предлагая нативный опыт PyTorch, который легко обучать и развертывать.

Почему стоит выбрать Ultralytics YOLO11?

  • Простота использования: Ориентируясь на удобство разработчиков, Ultralytics позволяет перейти от установки к выводу всего за три строки кода на Python. Нет необходимости вручную компилировать сложные библиотеки операторов или конвертировать проприетарные форматы.
  • Универсальность: Единый фреймворк поддерживает Object Detection, Instance Segmentation, Pose Estimation, Classification и Oriented Bounding Boxes (OBB).
  • Баланс производительности: YOLO11 оптимизирует компромисс между скоростью и точностью, обеспечивая возможности инференса в реальном времени как на периферийных устройствах (таких как Jetson), так и на облачных GPU.
  • Требования к памяти: Модели Ultralytics YOLO используют оптимизированные архитектуры, которые обычно требуют меньше памяти CUDA во время обучения по сравнению с альтернативами на основе transformer или старыми многомасштабными сетями признаков.
  • Хорошо поддерживаемая экосистема: Поддерживаемый активным сообществом open-source, репозиторий получает частые обновления, обеспечивая совместимость с последними версиями PyTorch, CUDA и Python.
  • Эффективность обучения: Пользователи могут использовать легкодоступные предварительно обученные веса для быстрой донастройки моделей на пользовательских наборах данных, что значительно снижает требования к обучающим данным и вычислительные затраты.

Пример кода: Начало работы с YOLO11

Запуск современной модели не должен быть сложным. Вот как легко вы можете реализовать обнаружение объектов с помощью Ultralytics:

from ultralytics import YOLO

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

# Run inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

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

Заключение

Выбор между EfficientDet и PP-YOLOE+ во многом зависит от ваших аппаратных ограничений и устаревших требований.

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

Однако, для подавляющего большинства реальных приложений, начиная от аналитики умных городов и заканчивая мониторингом сельского хозяйства, Ultralytics YOLO11 выделяется как наиболее прагматичный выбор. Она сочетает в себе архитектурные инновации современных anchor-free детекторов с непревзойденным пользовательским опытом, позволяя вам сосредоточиться на решении бизнес-задач, а не на отладке сложностей фреймворка.

Узнать о других моделях

Чтобы узнать больше, рассмотрите следующие связанные сравнения:


Комментарии