Перейти к содержанию

YOLOv10 против EfficientDet: Сравнение архитектур обнаружения объектов реального времени

Выбор оптимальной нейронной сети для обнаружения объектов является критически важным решением, определяющим успех современных систем компьютерного зрения. Две выдающиеся архитектуры, оказавшие значительное влияние на эту область, — это YOLOv10 и EfficientDet. Хотя обе нацелены на максимизацию точности при минимизации вычислительных затрат, они используют совершенно разные архитектурные подходы для достижения этих целей.

Это всеобъемлющее руководство углубляется в их уникальные конструкции, методологии обучения и характеристики развертывания, помогая разработчикам и инженерам машинного обучения принимать решения, основанные на данных, для приложений визуального ИИ. Мы рассмотрим, как они работают на оборудовании, начиная от встроенных периферийных ИИ-устройств до мощных облачных GPU.

YOLOv10: Пионер без NMS

Разработанный для расширения границ задержки в реальном времени, YOLOv10 решил одну из самых стойких проблем в семействе YOLO: Non-Maximum Suppression (NMS). Устранив этот этап постобработки, модель достигает высокопредсказуемой задержки, что критически важно для автономных транспортных средств и высокоскоростной робототехники.

Архитектурные инновации

YOLOv10 представляет согласованные двойные назначения для обучения без NMS. Во время обучения он использует как назначения меток "один-ко-многим", так и "один-к-одному", что позволяет сети изучать богатые представления, при этом нативно выводя один лучший ограничивающий прямоугольник для каждого объекта во время вывода. Архитектура также включает в себя комплексный подход, ориентированный на эффективность и точность, оптимизируя классификационный головной модуль и снижая вычислительную избыточность, присущую предыдущим итерациям.

Детали модели

Оптимизированное развертывание

Поскольку YOLOv10 исключает шаг NMS, ее изначально легче экспортировать в такие форматы, как формат ONNX и NVIDIA TensorRT, без использования пользовательских плагинов среды выполнения для фильтрации ограничивающих рамок.

Преимущества:

  • Предсказуемый инференс: Удаление NMS обеспечивает стабильное время инференса независимо от количества объектов на сцене.
  • Сниженное потребление памяти: По сравнению с моделями на основе трансформеров, такими как RT-DETR, YOLOv10 имеет значительно более низкие требования к памяти как во время обучения, так и во время инференса.
  • Отличный компромисс между скоростью и точностью: Специально оптимизирован для сценариев с низкой задержкой без ущерба для метрик производительности.

Слабые стороны:

Узнайте больше о YOLOv10

EfficientDet: Масштабируемый и сбалансированный

Представленный Google Brain, EfficientDet подходит к обнаружению объектов через призму систематического масштабирования сети. Он основывается на базовой архитектуре EfficientNet для классификации изображений и вводит новый механизм слияния признаков.

Архитектурные инновации

Основой EfficientDet является двунаправленная пирамидальная сеть признаков (BiFPN), которая обеспечивает простое и быстрое слияние признаков на разных масштабах. В отличие от традиционных FPN, которые суммируют признаки только сверху вниз, BiFPN вводит двунаправленные межмасштабные связи и обучаемые веса для определения значимости различных входных признаков. Кроме того, EfficientDet использует метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину для всех базовых сетей, сетей признаков и сетей предсказания ограничивающих рамок/классов.

Детали модели

Преимущества:

  • Высокая эффективность: Отличное соотношение параметров к точности, что делает меньшие модели -d0 в -d2 варианты очень легковесны.
  • Принципиальное масштабирование: Составное масштабирование позволяет пользователям легко выбирать размер модели, который соответствует их точному вычислительному бюджету.

Слабые стороны:

  • Интеграция с устаревшими фреймворками: Исходная реализация сильно зависит от старых версий TensorFlow, что может усложнить современные конвейеры развертывания.
  • Более медленное обучение: Обучение EfficientDet с нуля общеизвестно медленное и требует тщательной настройки гиперпараметров по сравнению с быстрой сходимостью архитектур YOLO.
  • Скорость инференса: Хотя и эффективны по параметрам, сложные операции BiFPN часто приводят к более низким скоростям инференса в реальных условиях на стандартном оборудовании по сравнению с высокооптимизированными моделями YOLO.

Узнайте больше об EfficientDet

Производительность и сравнительное тестирование

Истинная проверка этих моделей заключается в их эмпирической производительности на стандартных бенчмарках, таких как набор данных COCO. В таблице ниже показаны критические различия в количестве параметров, операциях с плавающей запятой (FLOPs) и задержке инференса на GPU NVIDIA T4.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

Как показано выше, YOLOv10 сохраняет значительное преимущество в чистой скорости вывода. Например, YOLOv10-S достигает 46.7 mAP с задержкой TensorRT всего 2.66 мс, тогда как EfficientDet-d3 достигает аналогичного 47.5 mAP, но занимает почти 20 мс, что делает YOLOv10 значительно превосходящим для потоковой передачи видео в реальном времени или быстродвижущихся производственных конвейеров.

Сценарии использования и рекомендации

Выбор между YOLOv10 и EfficientDet зависит от конкретных требований вашего проекта, ограничений развертывания и предпочтений экосистемы.

Когда выбирать YOLOv10

YOLOv10 — отличный выбор для:

  • Обнаружение в реальном времени без NMS: Приложения, выигрывающие от сквозного обнаружения без Non-Maximum Suppression, что снижает сложность развертывания.
  • Сбалансированный компромисс между скоростью и точностью: Проекты, требующие оптимального баланса между скоростью инференса и точностью обнаружения для моделей различных масштабов.
  • Приложения с предсказуемой задержкой: Сценарии развертывания, где критически важны предсказуемые времена инференса, например, в робототехнике или автономных системах.

Когда следует выбирать EfficientDet

EfficientDet рекомендуется для:

  • Конвейеры Google Cloud и TPU: Системы, глубоко интегрированные с API Google Cloud Vision или инфраструктурой TPU, где EfficientDet имеет нативную оптимизацию.
  • Исследование составного масштабирования: Академическое бенчмаркинг, сфокусированное на изучении влияния сбалансированного масштабирования глубины, ширины и разрешения сети.
  • Мобильное развертывание через TFLite: Проекты, которые специально требуют экспорта TensorFlow Lite для Android или встраиваемых устройств на Linux.

Когда выбирать Ultralytics (YOLO26)

Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:

  • Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
  • Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
  • Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.

Современный стандарт: Представляем Ultralytics YOLO26

Хотя YOLOv10 представила новаторскую парадигму без NMS, а EfficientDet продемонстрировала принципиальное масштабирование, область компьютерного зрения продолжает развиваться. Для разработчиков, начинающих новые проекты сегодня, Ultralytics YOLO26 представляет собой бесспорное состояние передовых технологий. Выпущенная в январе 2026 года, она объединяет лучшее из всех миров в высококачественный, готовый к производству пакет в рамках платформы Ultralytics.

Почему YOLO26 превосходит конкурентов

  1. Сквозная архитектура без NMS: YOLO26 изначально использует сквозную архитектуру без NMS, впервые примененную в YOLOv10, что упрощает развертывание и ускоряет инференс.
  2. До 43% более быстрая инференция на CPU: Для периферийных устройств без выделенных ускорителей, YOLO26 специально оптимизирован для эффективной работы на стандартных CPU.
  3. Продвинутый оптимизатор MuSGD: Вдохновленный инновациями в обучении LLM, YOLO26 использует гибрид SGD и Muon для невероятно стабильного обучения и быстрой сходимости, значительно повышая эффективность обучения по сравнению с EfficientDet.
  4. ProgLoss + STAL: Эти улучшенные функции потерь обеспечивают значительное повышение в распознавании мелких объектов, что является традиционно слабым местом как для YOLOv10, так и для EfficientDet.
  5. Удаление DFL: Удаление Distribution Focal Loss позволяет YOLO26 беспрепятственно экспортироваться практически в любой аппаратный формат, включая OpenVINO и CoreML.

Кроме того, YOLO26 обеспечивает непревзойденную универсальность. В то время как EfficientDet и YOLOv10 являются строго моделями обнаружения, YOLO26 бесшовно обрабатывает ориентированные ограничивающие рамки, классификацию изображений и сегментацию экземпляров, используя тот же интуитивно понятный пакет Ultralytics Python.

Хорошо поддерживаемая экосистема

Как YOLO11, так и YOLOv8 остаются полностью поддерживаемыми в экосистеме Ultralytics. Для оптимального сочетания производительности, стабильности и долгосрочной поддержки мы рекомендуем использовать официально поддерживаемые модели Ultralytics.

Простота использования с Ultralytics

Хорошо поддерживаемая экосистема, предоставляемая Ultralytics, обеспечивает бесперебойный опыт для разработчиков. Обучение модели, её валидация и экспорт для интеграции с TensorRT занимают всего несколько строк кода.

from ultralytics import YOLO

# Load a pre-trained YOLOv10 model (or upgrade to YOLO26 natively)
model = YOLO("yolov10n.pt")

# Train the model efficiently on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run inference and immediately visualize results
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()

# Export for rapid deployment
model.export(format="engine", half=True)

Заключение

При сравнении YOLOv10 и EfficientDet выбор во многом зависит от ваших предпочтений в отношении фреймворка и ограничений по скорости. EfficientDet предлагает структурированный подход к масштабированию моделей в экосистеме TensorFlow. Однако YOLOv10 обеспечивает превосходную производительность в реальном времени, меньшее потребление памяти и более простой путь развертывания благодаря своей NMS-free архитектуре.

Для достижения наилучшего баланса производительности, простоты использования и многозадачности настоятельно рекомендуется обновиться до платформы Ultralytics и использовать YOLO26. Она берет инновации YOLOv10 без NMS, применяет передовые методы обучения, такие как оптимизатор MuSGD, и объединяет их в надежный, открытый фреймворк, поддерживаемый огромным мировым сообществом.


Комментарии