EfficientDet против YOLOv9: Архитектура, производительность и развертывание на периферийных устройствах
Ландшафт компьютерного зрения сформирован непрерывными прорывами в проектировании нейронных сетей. Нахождение правильного баланса между вычислительной эффективностью и точностью обнаружения критически важно при выборе модели. EfficientDet от Google установил сильный базовый уровень в 2019 году, представив масштабируемые архитектуры, в то время как YOLOv9, выпущенный в 2024 году, расширил границы обнаружения объектов с использованием программируемой градиентной информации (PGI).
Это руководство предоставляет всестороннее техническое сравнение между этими двумя моделями и представляет современный фреймворк Ultralytics YOLO26, который предлагает надежное комплексное решение, оптимизированное для производственных сред.
Архитектуры моделей и инновации
Понимание базовых механизмов EfficientDet и YOLOv9 необходимо для определения их оптимальных сценариев использования.
EfficientDet: Комбинированное масштабирование и BiFPN
Разработанный Google Research, EfficientDet фокусируется на систематическом масштабировании и эффективном слиянии признаков. Он использует EfficientNet в качестве своей базовой сети и представляет новую архитектуру сети признаков.
- Авторы: Мингксинг Тан, Руоминг Панг и Куок В. Ле
- Организация:Google
- Дата: 20 ноября 2019 г.
- Ссылки:Arxiv, GitHub
Ключевые архитектурные особенности: EfficientDet в значительной степени опирается на двунаправленную пирамидальную сеть признаков (BiFPN), что обеспечивает простое и быстрое слияние признаков на разных масштабах. Наряду с этим, он использует метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину сети. Хотя EfficientDet был очень точным для своего времени, он сильно привязан к старым средам TensorFlow, что усложняет современные конвейеры развертывания.
Узнайте больше об EfficientDet
YOLOv9: Решение проблемы узкого места информации
Разработанный исследователями из Academia Sinica, YOLOv9 решает проблему деградации информации по мере прохождения данных через глубокие нейронные сети.
- Авторы: Чен-Яо Ванг и Хонг-Юань Марк Ляо
- Организация: Институт информатики, Academia Sinica
- Дата: 21 февраля 2024 г.
- Ссылки:Arxiv, GitHub, Документация
Ключевые архитектурные особенности: YOLOv9 вводит программируемую градиентную информацию (PGI) для обеспечения вспомогательного контроля, гарантируя сохранение критически важных данных для надежного обновления весов сети. Он также включает обобщенную эффективную сеть агрегации слоев (GELAN) для максимизации эффективности параметров. Несмотря на эти достижения, YOLOv9 по-прежнему требует подавления немаксимумов (NMS) во время постобработки, что увеличивает задержку.
Сравнение производительности
При оценке этих моделей анализ эмпирических данных помогает определить, какая архитектура обеспечивает наилучший компромисс для ваших конкретных аппаратных требований.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
| 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 |
Критический анализ
YOLOv9 обеспечивает скачок в скорости на поколение вперед. Например, YOLOv9e достигает 55.6% mAP с задержкой TensorRT в 16.77 мс. В отличие от этого, EfficientDet-d7 предлагает более низкий mAP в 53.7%, но страдает от огромной задержки (128.07 мс)—что делает его крайне сложным для развертывания в потоках видео в реальном времени.
Экспорт моделей для продакшена
Экспорт вашей архитектуры в оптимизированные форматы, такие как TensorRT или OpenVINO, значительно сокращает время инференса по сравнению с чистыми запусками PyTorch.
Сценарии использования и рекомендации
Выбор между EfficientDet и YOLOv9 зависит от конкретных требований вашего проекта, ограничений развертывания и предпочтений экосистемы.
Когда следует выбирать EfficientDet
EfficientDet является отличным выбором для:
- Конвейеры Google Cloud и TPU: Системы, глубоко интегрированные с API Google Cloud Vision или инфраструктурой TPU, где EfficientDet имеет нативную оптимизацию.
- Исследование составного масштабирования: Академическое бенчмаркинг, сфокусированное на изучении влияния сбалансированного масштабирования глубины, ширины и разрешения сети.
- Мобильное развертывание через TFLite: Проекты, которые специально требуют экспорта TensorFlow Lite для Android или встраиваемых устройств на Linux.
Когда выбирать YOLOv9
YOLOv9 рекомендуется для:
- Исследования информационного узкого места: Академические проекты, изучающие архитектуры Programmable Gradient Information (PGI) и Generalized Efficient Layer Aggregation Network (GELAN).
- Исследования по оптимизации потока градиентов: Исследования, направленные на понимание и снижение потери информации в глубоких слоях сети во время обучения.
- Бенчмаркинг обнаружения с высокой точностью: Сценарии, где высокая производительность YOLOv9 в бенчмарке COCO необходима в качестве эталонной точки для архитектурных сравнений.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Преимущество Ultralytics: Выбор YOLO26
Хотя YOLOv9 и EfficientDet проложили путь, разработчикам, ищущим по-настоящему современный, готовый к производству фреймворк, следует рассмотреть модели Ultralytics YOLO, в частности, недавно выпущенный YOLO26.
The Платформа Ultralytics предлагает беспрецедентную простоту использования, сочетая мощные локальные скрипты обучения с облачным интерфейсом. YOLO26 представляет собой масштабную переработку в дизайне моделей, делая старые архитектуры устаревшими для многих коммерческих приложений.
YOLO26: Основные технические моменты
- Сквозная архитектура без NMS: YOLO26 полностью устраняет узкие места постобработки. Благодаря удалению немаксимального подавления графы развертывания унифицируются и становятся изначально быстрее на периферийных чипах ИИ.
- До 43% более быстрый инференс на CPU: Значительно оптимизированный для встроенных устройств, он существенно быстрее как YOLOv9, так и EfficientDet при отсутствии GPU.
- Оптимизатор MuSGD: Интегрируя инновации LLM в ИИ компьютерного зрения, этот гибридный оптимизатор стабилизирует циклы обучения, позволяя моделям быстрее сходиться с меньшими ресурсами.
- Низкие требования к памяти: В отличие от архитектур, сильно зависящих от трансформеров, или неоптимизированных CNN, YOLO26 минимизирует потребление памяти CUDA во время обучения, позволяя использовать большие размеры пакетов на потребительском оборудовании.
- ProgLoss + STAL: Превосходный дизайн функции потерь значительно повышает точность detect мелких объектов, делая YOLO26 идеальным для аэрофотосъемки и сетей IoT.
- Удаление DFL: Упрощенная структурная конструкция обеспечивает беспрепятственное преобразование в форматы для мобильного развертывания.
Среди других надежных опций в экосистеме Ultralytics — YOLO11 и YOLOv8, которые также обеспечивают многозадачную универсальность, такую как сегментация экземпляров и оценка позы.
Упрощенное обучение с Python SDK
Модели Ultralytics ставят во главу угла удобство для разработчиков. Обучение современной модели сводится всего к нескольким строкам кода на python.
from ultralytics import YOLO
# Initialize the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train with optimized memory usage and built-in augmentations
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance easily
metrics = model.val()
print(f"Validation mAP: {metrics.box.map}")
Приложения в реальном мире
Выбор между этими архитектурами сильно зависит от целевой среды развертывания.
- Устаревшие облачные развертывания: EfficientDet был популярен для автономной, облачной пакетной обработки, где требовалась высокая точность, а строгие ограничения реального времени отсутствовали.
- Академические исследования: YOLOv9 остается интересным выбором для исследователей, расширяющих теоретические границы CNN и анализирующих потоки градиентов через слои нейронных сетей.
- Периферийные вычисления и IoT:YOLO26 доминирует в реальных приложениях. Его конвейер без NMS и возможности ориентированных ограничивающих рамок (OBB) делают его превосходным вариантом для анализа трафика в умных городах, мониторинга товарных запасов в розничной торговле и инспекций с использованием дронов, предлагая непревзойденный баланс высокой точности и быстрой скорости инференса.