YOLOv9 и EfficientDet#
Область компьютерного зрения стремительно развивается в сфере обнаружения объектов в реальном времени, а исследователи постоянно расширяют границы точности и эффективности. При создании надежных систем компьютерного зрения выбор оптимальной архитектуры имеет критическое значение. Две широко обсуждаемые модели в этой области — YOLOv9, усовершенствованная итерация линейки YOLO, ориентированная на работу с градиентной информацией, и EfficientDet — масштабируемый фреймворк, разработанный Google.
В этом руководстве представлен подробный технический анализ, сравнивающий эти две архитектуры, их внутренние механизмы, показатели производительности и оптимальные сценарии развертывания, чтобы помочь тебе принять обоснованное решение для следующего AI-проекта.
Происхождение моделей и технические характеристики#
Понимание происхождения и философии проектирования модели дает ценный контекст для ее структурных решений и практического применения.
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 обеспечивает простое и быстрое слияние признаков разных масштабов. Архитектура использует метод составного масштабирования, который одновременно и равномерно масштабирует разрешение, глубину и ширину магистральной сети, сети признаков, а также сетей предсказания классов и BBox.
Теоретические архитектуры важны, однако успех проекта часто определяет программная экосистема. 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.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, YOLOv8 и YOLO11, выигрывают за счет существенно меньших требований к памяти во время обучения по сравнению с архитектурами на базе трансформеров или более старыми архитектурами TensorFlow, такими как EfficientDet. Надежный бэкенд PyTorch обеспечивает быстрое схождение и стабильность.
- Универсальность: в отличие от EfficientDet, ориентированной исключительно на обнаружение ограничивающих рамок, API Ultralytics изначально поддерживает сегментацию экземпляров, оценку позы, классификацию изображений и ориентированные ограничивающие рамки (OBB).
- Простота использования: EfficientDet опирается на устаревшие библиотеки TensorFlow и сложные конфигурации AutoML, из-за чего ее настройка может быть хрупкой. Напротив, Ultralytics предлагает тщательно проработанный API для удобной настройки гиперпараметров и управления наборами данных.
Пример реализации#
Обучение современной модели компьютерного зрения не должно требовать сотен строк шаблонного кода. Вот как просто можно запустить обучение с помощью пакета Ultralytics для Python:
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 сохранять целостность признаков.
Ориентация на будущее: следующее поколение AI для компьютерного зрения#
Хотя YOLOv9 и EfficientDet обладают высокой мощностью, разработчикам, которым нужен оптимальный баланс скорости периферийных вычислений, стабильности обучения и простоты развертывания, стоит обратить внимание на новейшие инновации.
Выпущенная в январе 2026 года, Ultralytics YOLO26 представляет собой современное состояние технологий. Она развивает предыдущие поколения, включая YOLO11 и YOLOv8, благодаря нескольким важным прорывам:
- Сквозной дизайн без NMS: YOLO26 полностью устраняет подавление немаксимумов — концепцию, впервые реализованную в YOLOv10, — что обеспечивает значительно более быстрое и простое развертывание модели.
- Удаление DFL: Distribution Focal Loss удалена для упрощения экспорта и повышения совместимости с периферийными устройствами и устройствами с низким энергопотреблением.
- До 43% более быстрый инференс на CPU: идеально оптимизировано для устройств IoT и сред без выделенных GPU.
- Оптимизатор MuSGD: революционное сочетание SGD и Muon, вдохновленное инновациями в обучении LLM и обеспечивающее более быструю сходимость и исключительно стабильные процессы обучения.
- ProgLoss + STAL: современные функции потерь, значительно улучшающие обнаружение небольших объектов, что особенно важно для аэрофотосъемки с дронов и надежной робототехники.
Используя комплексную платформу Ultralytics, команды могут легко управлять наборами данных, отслеживать эксперименты и развертывать такие модели, как YOLO26, на различных аппаратных экосистемах, поддерживая свои конвейеры компьютерного зрения на переднем крае технологий и в состоянии готовности к промышленной эксплуатации.