EfficientDet против YOLOv10: эволюция обнаружения объектов в реальном времени
С момента выпуска EfficientDet Google в 2019 году и YOLOv10 от Университета Цинхуа YOLOv10 2024 году ситуация в области компьютерного зрения кардинально изменилась. Для разработчиков и исследователей понимание траектории развития от сложных составных масштабируемых архитектур к оптимизированным сквозным архитектурам имеет жизненно важное значение для выбора подходящего инструмента для решения конкретной задачи. В данном анализе сравнивается традиционная точность EfficientDet с инновационной технологией с низкой задержкой YOLOv10, а также показывает, как современные решения, такие как Ultralytics , устанавливают новые стандарты для производственных сред.
EfficientDet: Наследие масштабирования соединений
Выпущенная командой Google , EfficientDet стала важной вехой в оптимизации эффективности нейронных сетей. Она представила концепцию Compound Scaling, которая равномерно масштабирует разрешение, глубину и ширину магистрали сети, а не настраивает только одно измерение.
Технические характеристики EfficientDet:
- Авторы: Мингксинг Тан, Руоминг Панг и Куок В. Ле
- Организация:Google Research
- Дата: 2019-11-20
- Arxiv:EfficientDet: Масштабируемое и эффективное обнаружение объектов
- GitHub:google/automl
В основе EfficientDet лежит двунаправленная пирамидальная сеть (BiFPN). В отличие от традиционных FPN, которые суммируют особенности из разных масштабов, BiFPN позволяет осуществлять сложное взвешенное слияние особенностей, благодаря чему модель может учитывать важность различных входных особенностей. Хотя эта архитектура достигла на тот момент передового уровня средней точности (mAP) на COCO , сложные взаимосвязи между слоями BiFPN приводят к значительным вычислительным затратам, что замедляет вывод, особенно на периферийных устройствах, по сравнению с современными архитектурами.
YOLOv10: Комплексная революция
YOLOv10, разработанный исследователями из Университета Цинхуа, решает основную проблему предыдущих YOLO : не максимальное подавление (NMS). Используя последовательную стратегию двойного назначения во время обучения, YOLOv10 предсказывать единственную оптимальную ограничивающую рамку для каждого объекта, фактически становясь детектором NMS, работающим от начала до конца.
YOLOv10 детали YOLOv10 :
- Авторы: Ao Wang, Hui Chen, Lihao Liu, и др.
- Организация:Университет Цинхуа
- Дата: 2024-05-23
- Arxiv:YOLOv10: Real-Time End-to-End Object Detection
- GitHub:THU-MIG/yolov10
Это архитектурное изменение позволяет значительно снизить задержку вывода. Модель также представляет собой целостную конструкцию, ориентированную на эффективность и точность, в которой используются свертки с большим ядром и частичное самовнимание для повышения производительности без раздувания параметров, характерного для более старых моделей.
Сравнение производительности: скорость против точности
Разница в производительности между этими двумя поколениями моделей разительна, особенно в отношении скорости вывода. EfficientDet-d7 обеспечивает высокую точность, но за счет значительной задержки (более 100 мс), тогда как YOLOv10 достигают аналогичной или даже более высокой точности за миллисекунды.
| Модель | размер (пиксели) | 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Архитектурный анализ
- Постобработка: EfficientDet в значительной степени полагается на NMS фильтрации перекрывающихся прямоугольников. В плотных сценах этот этап постобработки становится CPU , увеличивая общую задержку независимо от GPU . Конструкция YOLOv10 NMS полностью исключает этот этап.
- Использование памяти: EfficientDet, особенно при более высоких масштабах, таких как d7, потребляет значительный объем VRAM из-за структуры BiFPN. YOLOv10 для меньшего объема памяти, что делает его более подходящим для приложений искусственного интеллекта на периферии.
- Оптимизация: EfficientDet построен на TensorFlow может быть сложен для экспорта в такие форматы, как ONNX TensorRT по сравнению с нативной PyTorch современных YOLO в PyTorch .
Преимущество экосистемы Ultralytics
YOLOv10 впечатляющие архитектурные усовершенствования, а его использование в Ultralytics еще больше увеличивает его полезность. Разработчики часто сталкиваются с проблемой фрагментации академических репозиториев. Ultralytics эту проблему, объединяя модели в единый, хорошо поддерживаемый Python .
Почему стоит выбрать Ultralytics ?
- Простота использования: переключайтесь между YOLOv8, YOLOv10, YOLO11 и YOLO26 с помощью одной строки кода.
- Эффективность обучения: предварительно настроенные гиперпараметры и автоматическая обработка размера партии обеспечивают оптимальное использование ресурсов.
- Готовность к развертыванию: экспорт в TFLite, CoreML, OpenVINO и ONNX одним щелчком мыши.
- Ultralytics : беспрепятственно управляйте наборами данных, обучайте в облаке и развертывайте модели с помощью Ultralytics .
Пример кода
Выполнение инференции с помощью Ultralytics , чтобы быть питоническим и простым. Вот как можно загрузить YOLOv10 и выполнить прогнозирование:
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image from the internet
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
Рекомендации по производству: переход на YOLO26
В то время как EfficientDet служит важным историческим ориентиром, а YOLOv10 парадигму NMS, модельUltralytics представляет собой вершину этой эволюции для производственного использования.
Выпущенная в январе 2026 года, YOLO26 основана на прорывной технологии YOLOv10 , NMS, YOLOv10 усовершенствована для обеспечения надежности в реальных условиях. Она отличается удалением Distribution Focal Loss (DFL), что упрощает граф модели для облегчения экспорта и лучшей совместимости с периферийными устройствами с низким энергопотреблением.
Кроме того, YOLO26 включает в себя оптимизатор MuSGD, гибрид SGD Muon (вдохновленный инновациями в области обучения LLM), обеспечивающий более быструю конвергенцию и стабильное обучение. Благодаря таким оптимизациям, как ProgLoss и STAL (Shape-aware Task Alignment Loss), YOLO26 предлагает превосходную детектирование мелких объектов и работает на 43% быстрее на CPU предыдущими поколениями.
Реальные примеры использования
Выбор подходящей модели зависит от ваших конкретных ограничений:
- EfficientDet: Наилучшим образом подходит для академических исследований, где необходимо изучение масштабирования соединений или архитектур BiFPN. Также используется в устаревших системах, где стоимость миграции превышает преимущества новых моделей в плане производительности.
- YOLOv10 YOLO26: Идеальный выбор для приложения реального времени.
- Робототехника: конструкция NMS снижает джиттер задержки, что имеет решающее значение для навигации и обхода препятствий.
- Мониторинг трафика: высокая пропускная способность позволяет обрабатывать несколько видеопотоков на одном GPU отслеживания объектов.
- Мобильные приложения: меньшее количество параметров и меньшее использование памяти делают эти модели идеальными для развертывания на Android iOS Android .
Для разработчиков, стремящихся к оптимальному балансу скорости, точности и простоты внедрения, переход на Ultralytics или YOLO11 является рекомендуемым путем продвижения вперед.