YOLOv9 и EfficientDet#
В сфере компьютерного зрения стремительно развиваются методы обнаружения объектов в реальном времени: исследователи постоянно повышают точность и эффективность моделей. Выбор оптимальной архитектуры — ключевой этап создания надежных систем компьютерного зрения. Среди самых обсуждаемых моделей — YOLOv9, усовершенствованная модель семейства YOLO, ориентированная на работу с градиентной информацией, и EfficientDet — масштабируемый фреймворк, разработанный Google.
В этом руководстве подробно сравниваются две архитектуры, рассматриваются принципы их работы, показатели производительности и оптимальные сценарии развертывания, чтобы помочь тебе принять обоснованное решение для следующего проекта в сфере ИИ.
История создания и технические характеристики моделей#
Понимание истории создания модели и принципов, лежащих в основе ее архитектуры, помогает разобраться в ее структуре и практическом применении.
YOLOv9: максимизация потока информации#
Разработанная для решения проблемы «информационного узкого места» в глубоком обучении, YOLOv9 использует новые методы, которые предотвращают потерю данных при прохождении через глубокие нейронные сети.
- Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
- Организация: Институт информатики, Academia Sinica, Тайвань
- Дата: 21 февраля 2024 года
- Ссылки: публикация на arXiv, официальный репозиторий GitHub
В YOLOv9 используется программируемая градиентная информация (PGI) — вспомогательный фреймворк супервизии, который надежно сохраняет градиентную информацию на глубоких слоях. Он сочетается с обобщенной эффективной сетью агрегации слоев (GELAN), которая повышает эффективность использования параметров, объединяя преимущества CSPNet и ELAN. Благодаря этому YOLOv9 обеспечивает высокую точность, оставаясь достаточно компактной для обработки данных в реальном времени на периферийных устройствах.
EfficientDet: составное масштабирование и BiFPN#
Разработанная Google Brain модель EfficientDet использует систематическое масштабирование размеров сети, чтобы сбалансировать скорость и точность.
- Авторы: Mingxing Tan, Ruoming Pang и Quoc V. Le
- Организация: Google
- Дата: 20 ноября 2019 года
- Ссылки: публикация на arXiv, официальный репозиторий GitHub
В основе EfficientDet лежит EfficientNet в сочетании с двунаправленной сетью пирамиды признаков (BiFPN). BiFPN упрощает и ускоряет слияние признаков разных масштабов. В архитектуре применяется метод составного масштабирования, который одновременно и равномерно изменяет разрешение, глубину и ширину базовой сети, сети признаков и сетей предсказания рамок и классов.
Теоретические особенности архитектуры важны, но успех проекта часто определяется программной экосистемой. Ultralytics предлагает удобную работу с моделями и надежные инструменты развертывания, которые значительно сокращают время выхода на рынок по сравнению со сложными кодовыми базами, ориентированными на исследования.
Сравнение производительности и метрик#
При оценке производительности модели важно балансировать точность, задержку инференса и вычислительные затраты. В таблице ниже показаны компромиссы для моделей YOLOv9 и EfficientDet разных размеров.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| 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 мс, поэтому он примерно в 7,6 раза медленнее и при этом менее точен, чем YOLOv9e (16,77 мс). Это сильно ограничивает его применение в средах инференса в реальном времени.
Эффективность обучения и экосистема#
При выборе модели нужно учитывать экосистему разработчика. Экосистема Ultralytics дает непревзойденные преимущества в эффективности обучения, гибкости развертывания и универсальности.
Преимущества Ultralytics#
Модели, поддерживаемые фреймворком Ultralytics, включая YOLOv9, YOLOv8 и YOLO11, требуют при обучении значительно меньше памяти, чем модели на основе Transformer или старые архитектуры TensorFlow, такие как EfficientDet. Надежная серверная часть PyTorch обеспечивает быструю сходимость и стабильность.
- Универсальность: в отличие от EfficientDet, предназначенной только для обнаружения ограничивающих рамок, API Ultralytics изначально поддерживает сегментацию экземпляров, оценку позы, классификацию изображений и обнаружение ориентированных ограничивающих рамок (OBB).
- Простота использования: EfficientDet зависит от устаревших библиотек TensorFlow и сложных конфигураций AutoML, которые могут быть нестабильными при настройке. В отличие от нее, Ultralytics предлагает хорошо отлаженный API для удобной настройки гиперпараметров и управления наборами данных.
Пример реализации#
Обучение продвинутой модели компьютерного зрения не должно требовать сотен строк шаблонного кода. Вот как просто начать обучение с помощью пакета Ultralytics для Python:
from ultralytics import YOLO
# Загрузи официальную модель Ultralytics (например, YOLO11 или YOLO26)
model = YOLO("yolo11n.pt")
# Обучи модель на собственном наборе данных средствами фреймворка
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Экспортируй обученную модель в формат ONNX для развёртывания
model.export(format="onnx")Оптимальные сценарии использования и реальные приложения#
Различия в архитектуре этих моделей определяют сценарии, для которых они подходят.
Когда использовать EfficientDet: EfficientDet остается подходящим вариантом для устаревших систем, глубоко интегрированных в экосистему TensorFlow, где переход на PyTorch невозможен. Модель также представляет исторический интерес для исследований в области анализа медицинских изображений, в которых допустима медленная автономная обработка снимков высокого разрешения.
Когда использовать YOLOv9: YOLOv9 отлично подходит для сред, где нужно извлечь максимум точности из глубоких слоев, не допуская резкого роста количества параметров. Такие приложения, как сложные системы управления дорожным движением в умных городах и мониторинг больших скоплений людей, получают значительную пользу от способности PGI сохранять целостность признаков.
Задел на будущее: следующее поколение ИИ для компьютерного зрения#
YOLOv9 и EfficientDet — мощные модели, но разработчикам, которым нужен оптимальный баланс скорости периферийных вычислений, стабильности обучения и простоты развертывания, стоит обратить внимание на новейшие разработки.
Выпущенная в январе 2026 года, Ultralytics YOLO26 представляет собой передовую модель на сегодняшний день. Она превосходит предыдущие поколения, включая YOLO11 и YOLOv8, благодаря нескольким важным новшествам:
- Сквозная архитектура без NMS: в YOLO26 предусмотрена необязательная голова модели с сопоставлением один к одному (
nms=False), которая полностью пропускает подавление немаксимумов. Этот подход впервые появился в YOLOv10 и позволяет значительно ускорить и упростить развертывание модели. - Удаление DFL: удаление фокальной функции потерь распределения упрощает экспорт и повышает совместимость с периферийными устройствами и устройствами с низким энергопотреблением.
- До 43% быстрее инференс на CPU: идеально оптимизирована для устройств IoT и сред без выделенных GPU.
- Оптимизатор MuSGD: революционный гибрид SGD и Muon, вдохновленный новыми подходами к обучению LLM, обеспечивает быструю сходимость и невероятно стабильное обучение.
- ProgLoss + STAL: продвинутые функции потерь значительно повышают точность обнаружения мелких объектов — это особенно важно при анализе аэрофотоснимков с дронов и в надежной робототехнике.
Используя комплексную платформу Ultralytics, команды могут легко управлять наборами данных, отслеживать эксперименты и развертывать модели, например YOLO26, на различных аппаратных платформах. Это помогает поддерживать актуальность и готовность к работе в production конвейеров компьютерного зрения.