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

EfficientDet против YOLOv9: сравнение архитектуры и производительности

В быстро развивающейся области компьютерного зрения выбор правильной архитектуры обнаружения объектов является критически важным решением, которое влияет на все: от затрат на обучение до задержки развертывания. В этом техническом анализе представлено всестороннее сравнение EfficientDet, передовой архитектуры от Google на эффективное масштабирование, и YOLOv9, современной итерацией YOLO , которая использует программируемую градиентную информацию для более эффективного обучения.

Краткое изложение

Хотя EfficientDet представил революционные концепции в области масштабирования моделей и слияния функций, в настоящее время он считается устаревшей архитектурой. Его зависимость от сложных слоев BiFPN часто приводит к снижению скорости вывода на современном оборудовании по сравнению с оптимизированными конструкциями YOLO .

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

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

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

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

  • Комбинированное масштабирование: EfficientDet предлагает метод комбинированного масштабирования, который равномерно масштабирует разрешение, глубину и ширину для всех сетей основной структуры, сетей признаков и сетей прогнозирования ячеек/классов.
  • BiFPN (Bidirectional Feature Pyramid Network): ключевая инновация, которая позволяет легко объединять многомасштабные характеристики. В отличие от традиционных FPN, BiFPN добавляет восходящие пути и удаляет узлы с одним входом, включая обучаемые веса для понимания важности различных входных характеристик.
  • EfficientNet Backbone: использует EfficientNet в качестве основы, которая оптимизирована для эффективности параметров.

Авторы: Минсин Тан, Руоминг Панг и Куок В. Ле
Организация:Google
Дата: 20.11.2019
Ссылки:Arxiv | GitHub

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

YOLOv9: Программируемая градиентная информация

YOLOv9 решает фундаментальную проблему глубокого обучения: информационные «узкие места». По мере прохождения данных через слои глубокой нейронной сети неизбежно происходит потеря информации. YOLOv9 эту проблему с помощью программируемой градиентной информации (PGI) и новой архитектуры под названием GELAN.

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

  • GELAN (Generalized Efficient Layer Aggregation Network): эта архитектура сочетает в себе лучшие аспекты CSPNet и ELAN. Она оптимизирует пути градиентного спуска, обеспечивая обучение модели легким, но богатым информацией признакам.
  • PGI (Programmable Gradient Information): PGI предоставляет вспомогательную ветвь контроля, которая направляет процесс обучения, обеспечивая сохранение в основной ветви важной информации, необходимой для точного обнаружения. Это особенно полезно для обнаружения сложных целей в сложных условиях.
  • Простота: несмотря на эти внутренние сложности, структура вывода остается оптимизированной, что позволяет избежать значительных вычислительных затрат, связанных с BiFPN, используемым в EfficientDet.

Авторы: Чень-Яо Ван и Хун-Юань Марк Ляо
Организация: Институт информационных наук, Академия Синика, Тайвань
Дата: 21.02.2024
Ссылки:Arxiv | GitHub

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

Сравнение технических характеристик

При сравнении этих моделей становится очевидным компромисс между эффективностью параметров и фактической задержкой выполнения. Хотя EfficientDet эффективен с точки зрения параметров, его сложная структура графа (BiFPN) менее подходит для GPU , чем стандартные свертки, используемые в YOLOv9.

Модельразмер
(пиксели)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Анализ производительности

YOLOv9 превосходит EfficientDet по соотношению скорости и точности. Например, YOLOv9c достигает сопоставимого mAP 53,0%) с EfficientDet-d6 (52,6%), но работает более чем в 12 раз быстрее на GPU T4 GPU 7,16 мс против 89,29 мс). Это делает YOLOv9 лучшим выбором для приложений, работающих в режиме реального времени.

Обучение и опыт работы в экосистеме

Основным отличием между этими архитектурами является простота использования и поддержка экосистемы, предоставляемая Ultralytics.

Вызовы EfficienDet

Обучение EfficientDet обычно включает в себя навигацию по APITensorFlow Detection или устаревшим репозиториям. Их может быть сложно настроить из-за конфликтов зависимостей, и зачастую они не поддерживают современные функции, такие как автоматическое обучение со смешанной точностью или простая интеграция с облачным логированием.

Преимущество Ultralytics

Использование YOLOv9 Ultralytics обеспечивает беспроблемную работу. Экосистема автоматически обрабатывает увеличение объема данных, эволюцию гиперпараметров и экспорт.

  • Простота использования: Вы можете начать обучение с нескольких строк кода.
  • Эффективность использования памяти: Ultralytics оптимизированы для использования меньшего объема VRAM во время обучения, что позволяет использовать более крупные пакеты данных на потребительских графических процессорах по сравнению со сложными многоветвленными сетями.
  • Универсальность: помимо обнаружения, Ultralytics поддерживает сегментацию экземпляров и оценку позы — функции, которые не доступны в стандартных реализациях EfficientDet.
from ultralytics import YOLO

# Load a pretrained YOLOv9 model
model = YOLO("yolov9c.pt")

# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

Приложения в реальном мире

Выбор модели существенно влияет на осуществимость различных приложений.

Идеальные сценарии использования EfficientDet

  • Академические исследования: полезно для изучения методов слияния признаков и теорий масштабирования соединений.
  • Сценарии с низким энергопотреблением/низкой скоростью: в очень специфических крайних случаях, когда устаревшее оборудование жестко запрограммировано для использования магистралей EfficientNet (например, некоторые старые TPU Coral), варианты EfficientDet-Lite могут по-прежнему быть актуальными.

Идеальные сценарии использования для YOLOv9.

  • Автономная навигация: высокая скорость вывода заключений имеет решающее значение для самоуправляемых автомобилей, которые должны обрабатывать входные данные за миллисекунды, чтобы обеспечить безопасность.
  • Аналитика розничной торговли: для таких приложений, как управление запасами, YOLOv9 точность, необходимую для различения схожих продуктов, не вызывая задержек в работе систем оформления заказов.
  • Здравоохранение: при анализе медицинских изображений архитектура PGI помогает сохранить мелкие детали, необходимые для обнаружения небольших аномалий на рентгеновских снимках или МРТ-сканах.

Будущее: переход на YOLO26

Несмотря на то, что YOLOv9 мощным инструментом, Ultralytics расширять границы искусственного интеллекта в области зрения. Для разработчиков, стремящихся к абсолютному передовому уровню, YOLO26 предлагает значительные усовершенствования по сравнению с EfficientDet и YOLOv9.

YOLO26 представляет собой сквозную конструкцию NMS, полностью исключающую необходимость в постобработке с помощью немаксимального подавления. Это приводит к упрощению процессов развертывания и ускорению вывода. Кроме того, благодаря новому оптимизатору MuSGD— гибриду SGD Muon — YOLO26 обеспечивает более стабильное обучение и более быструю конвергенцию.

Для периферийного развертывания YOLO26 оптимизирован для ускорения CPU до 43% и включает функцию удаления DFL для лучшей совместимости с устройствами с низким энергопотреблением. Независимо от того, занимаетесь ли вы робототехникой или высокопроизводительной видеоаналитикой, YOLO26 представляет собой новый стандарт.

Откройте для себя мощь YOLO26

Пользователям, интересующимся другими современными архитектурами, мы также рекомендуем ознакомиться с YOLO11 и RT-DETR в Ultralytics .


Комментарии