YOLOv9 против EfficientDet#
Область компьютерного зрения стала свидетелем стремительной эволюции обнаружения объектов, где исследователи постоянно расширяют границы точности и эффективности. При создании надежных систем машинного зрения выбор оптимальной архитектуры является критически важным решением. Две часто обсуждаемые модели в этой сфере — YOLOv9, продвинутая итерация линейки YOLO, сфокусированная на градиентной информации, и EfficientDet, масштабируемая архитектура, разработанная Google.
Это руководство представляет собой глубокий технический анализ, сравнивающий эти две архитектуры. Мы рассмотрим их базовые механизмы, показатели производительности и идеальные сценарии развертывания, чтобы помочь тебе принять обоснованное решение для твоего следующего AI-проекта.
Происхождение моделей и технические характеристики#
Понимание истории и философии проектирования модели дает ценный контекст для ее структурных решений и практического применения.
YOLOv9: Максимизация потока информации#
Разработанная для решения проблемы «информационного узкого места» в глубоком обучении, YOLOv9 внедряет новые методы, гарантирующие, что данные не теряются при прохождении через глубокие нейронные сети.
- Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
- Организация: Институт информатики, Academia Sinica, Тайвань
- Дата: 21 февраля 2024 г.
- Ссылки: Публикация на ArXiv, Официальный GitHub
YOLOv9 представляет Programmable Gradient Information (PGI) — вспомогательную среду обучения, которая гарантирует надежное сохранение градиентной информации в глубоких слоях. Это сочетается с Generalized Efficient Layer Aggregation Network (GELAN), которая оптимизирует эффективность параметров, объединяя сильные стороны CSPNet и ELAN. Это позволяет YOLOv9 достигать высокой точности, сохраняя при этом легковесность, подходящую для обработки данных на границе сети (edge) в реальном времени.
EfficientDet: compound scaling и BiFPN#
Представленная Google Brain, архитектура EfficientDet подходит к обнаружению объектов путем систематического масштабирования размерностей сети для достижения баланса между скоростью и точностью.
- Авторы: Минсин Тан, Руомин Пан и Куок В. Ле
- Организация: Google
- Дата: 20 ноября 2019 г.
- Ссылки: Публикация на ArXiv, Официальный GitHub
EfficientDet полагается на основу (backbone) EfficientNet в сочетании с Bidirectional Feature Pyramid Network (BiFPN). BiFPN обеспечивает легкое и быстрое слияние признаков на разных масштабах. Архитектура использует метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину для всей основы, сети признаков и сетей предсказания bbox/классов одновременно.
Хотя теоретические архитектуры важны, программная экосистема часто определяет успех проекта. Ultralytics обеспечивает оптимизированный пользовательский интерфейс и надежные инструменты развертывания, которые значительно сокращают время выхода на рынок по сравнению со сложными, ориентированными на исследования кодовыми базами.
Сравнение производительности и метрик#
При анализе производительности модели важно сбалансировать точность с задержкой вывода и вычислительными затратами. В таблице ниже показаны компромиссы для различных размеров YOLOv9 и EfficientDet.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Критический анализ метрик#
- Пороги точности: YOLOv9e достигает самой высокой общей точности в 55,6% mAP (средняя точность), превосходя самую тяжелую модель EfficientDet-d7 (53,7%) и при этом сохраняя более высокую скорость при использовании TensorRT.
- Скорость в реальном времени: YOLOv9t требует всего 2,3 мс на GPU T4 при использовании TensorRT, что подчеркивает эффективность архитектуры GELAN для потокового видео высокого разрешения. EfficientDet-d0 работает быстро, но жертвует значительной долей mAP ради достижения таких скоростей.
- Вычислительная сложность: EfficientDet сильно увеличивается в количестве параметров и FLOPs по мере роста составного фактора. Вариант d7 достигает задержки в 128 мс, что более чем в 10 раз медленнее сопоставимых современных моделей YOLO, сильно ограничивая его применение в средах инференса в реальном времени.
Эффективность обучения и экосистема#
Выбор модели включает в себя оценку экосистемы разработчика. Экосистема Ultralytics предоставляет беспрецедентное преимущество в эффективности обучения, гибкости развертывания и общей универсальности.
Преимущество Ultralytics#
Модели, поддерживаемые в рамках фреймворка Ultralytics, включая YOLOv9 через интеграции сообщества и официальные модели Ultralytics, такие как YOLOv8 и YOLO11, выигрывают за счет значительно меньших требований к памяти во время обучения по сравнению с архитектурами на базе Transformer или старыми архитектурами TensorFlow, такими как EfficientDet. Надежный бэкенд PyTorch обеспечивает быструю сходимость и стабильность.
- Универсальность: В отличие от EfficientDet, которая строго сфокусирована на обнаружении ограничивающих рамок (bounding box), API Ultralytics нативно поддерживает сегментацию экземпляров, оценку позы, классификацию изображений и ориентированные ограничивающие рамки (OBB).
- Простота использования: EfficientDet опирается на старые библиотеки TensorFlow и сложные конфигурации AutoML, настройка которых может быть капризной. Напротив, Ultralytics предлагает высококлассный API для бесшовной настройки гиперпараметров и управления наборами данных.
Пример реализации#
Обучение продвинутой модели компьютерного зрения не должно требовать сотен строк шаблонного кода. Вот как легко ты можешь запустить обучение, используя пакет Python от Ultralytics:
from ultralytics import YOLO
# Load an official Ultralytics model (e.g., YOLO11 or YOLO26)
model = YOLO("yolo11n.pt")
# Train the model natively on a custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the trained model to ONNX format for deployment
model.export(format="onnx")Идеальные сценарии использования и реальные приложения#
Различные структурные парадигмы делают эти модели подходящими для разных сценариев.
Когда использовать EfficientDet: EfficientDet остается жизнеспособным вариантом в устаревших системах, глубоко интегрированных в экосистему TensorFlow, где миграция на PyTorch невозможна. Он также исторически заметен в исследованиях медицинского анализа изображений, где допустима более медленная автономная обработка сканов высокого разрешения.
Когда использовать YOLOv9: YOLOv9 превосходно справляется с задачами в средах, требующих максимального извлечения точности из глубоких слоев без взрывного роста числа параметров. Такие приложения, как комплексное управление трафиком в умном городе и мониторинг толпы высокой плотности, получают огромную пользу от способности PGI сохранять целостность признаков.
Готовность к будущему: Следующее поколение Vision AI#
Хотя YOLOv9 и EfficientDet мощны, разработчикам, ищущим идеальный баланс между скоростью периферийных вычислений, стабильностью обучения и простотой развертывания, стоит обратить внимание на новейшие инновации.
Выпущенная в январе 2026 года, Ultralytics YOLO26 представляет собой современный стандарт (state-of-the-art). Она улучшает предыдущие поколения (включая YOLO11 и YOLOv8) с помощью нескольких критических прорывов:
- Дизайн End-to-End без NMS: YOLO26 полностью исключает подавление немаксимумов (Non-Maximum Suppression) — концепцию, впервые примененную в YOLOv10, что приводит к значительно более быстрому и простому развертыванию модели.
- Удаление DFL: Distribution Focal Loss была удалена для упрощения экспорта и улучшения совместимости с периферийными/маломощными устройствами.
- Инференс на CPU до 43% быстрее: Идеально оптимизировано для устройств IoT и сред, в которых отсутствуют выделенные GPU.
- Оптимизатор MuSGD: Революционный гибрид SGD и Muon (вдохновленный инновациями в обучении LLM), обеспечивающий более быструю сходимость и невероятно стабильные циклы обучения.
- ProgLoss + STAL: Продвинутые функции потерь, которые радикально улучшают обнаружение мелких объектов — критический фактор для аэрофотосъемки с дронов и надежной робототехники.
Используя комплексную платформу Ultralytics, команды могут без усилий управлять наборами данных, отслеживать эксперименты и развертывать такие модели, как YOLO26, в различных аппаратных экосистемах, гарантируя, что их конвейеры компьютерного зрения остаются передовыми и готовыми к производству.