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

EfficientDet против YOLOX: всестороннее техническое сравнение

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

В этом руководстве представлен подробный анализ их архитектур, показателей производительности и идеальных сценариев развертывания, чтобы помочь вам выбрать наиболее подходящий для вашего проекта. Кроме того, мы рассмотрим, как современные альтернативы, такие как Ultralytics YOLO11 объединяют сильные стороны этих предшественников в единую, удобную для пользователя структуру.

EfficientDet: Масштабируемая эффективность

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

Архитектура и ключевые особенности

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

  • Составное масштабирование: Одновременное масштабирование ширины сети, глубины и разрешения изображения с помощью простого составного коэффициента.
  • BiFPN: Обеспечивает простое и быстрое слияние разномасштабных признаков.
  • Эффективность: оптимизирована для минимизации использования ресурсов при максимизации mAP (средняя точность).

Метаданные модели

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

YOLOX: Эволюция без якоря

YOLOX представляет собой сдвиг в серии YOLO в сторону безъякорного дизайна. Устраняя необходимость в предопределенных якорных ящиках, YOLOX упрощает процесс обучения и улучшает обобщение на различных наборах данных.

Архитектура и ключевые особенности

YOLOX отделяет головку обнаружения, разделяя задачи классификации и регрессии на разные ветви. Такая конструкция "отсоединенной головки" обычно приводит к ускорению сходимости и повышению производительности. Кроме того, в ней реализована SimOTA- передовая стратегия присвоения меток, которая динамически назначает положительные образцы, сокращая время обучения и повышая точность.

  • Без якорей: устраняет необходимость в ручной настройке анкерных коробок, снижая сложность конструкции.
  • Decoupled Head: повышает производительность за счет разделения задач классификации и локализации.
  • Продвинутые дополнения: Использует дополнения Mosaic и MixUp для надежной тренировки.

Метаданные модели

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

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

Компромиссы между этими двумя моделями различны. EfficientDet ориентирована на эффективность параметров, что делает ее сильным соперником для приложений,CPU, или сценариев, в которых размер модели (хранилище) является основным ограничением. И наоборот, YOLOX оптимизирован под задержкиGPU , используя дружественные аппаратные операции для обеспечения высокой скорости вычислений на таких устройствах, как NVIDIA T4 или V100.

В таблице ниже показаны эти различия на наборе данных COCO . Обратите внимание, что модели YOLOX в целом обеспечивают более высокую скорость вычислений на GPU по сравнению с вариантами EfficientDet аналогичной точности.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Основные выводы

  • Латентность по сравнению с пропускной способностью: YOLOX-s достигает молниеносной скорости 2,56 мс на T4 TensorRT, что значительно быстрее, чем у EfficientDet-d0 (3,92 мс), несмотря на большее количество параметров. Это иллюстрирует превосходную оптимизацию YOLOX для вычислений в реальном времени на GPU.
  • Размер модели: EfficientDet-d0 остается весьма конкурентоспособной для краевых устройств с крайне ограниченным объемом памяти, отличаясь компактным количеством параметров - 3,9 М.
  • Масштабирование: EfficientDet-d7 достигает высокого показателя mAP 53,7, но ценой высокой задержки (128 мс), что делает его менее пригодным для передачи видеопотоков в реальном времени по сравнению с более легкими моделями.

Преимущество Ultralytics

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

Разработчикам и исследователям Ultralytics предлагает неоспоримые преимущества по сравнению с устаревшими моделями:

  • Простота использования: API Ultralytics Python разработан для простоты. Вы можете загрузить модель, предсказать по изображению и визуализировать результаты всего в нескольких строках кода, что снижает барьер для внедрения решений на основе искусственного интеллекта.
  • Всеобъемлющая экосистема: В отличие от автономных хранилищ, модели Ultralytics поддерживаются надежной экосистемой. Она включает в себя бесшовную интеграцию с такими инструментами MLOps, как Weights & Biases и ClearMLа также активную поддержку сообщества.
  • Баланс производительности: Модели Ultralytics YOLO разработаны таким образом, чтобы обеспечить оптимальный компромисс между скоростью и точностью. Они часто превосходят YOLOX по задержке и при этом соответствуют по параметрам эффективности EfficientDet.
  • Требования к памяти: Модели Ultralytics оптимизированы для меньшего использования памяти CUDA во время обучения по сравнению со многими архитектурами CNN на основе трансформаторов или более старыми архитектурами, что позволяет обучать большие партии на стандартном оборудовании.
  • Универсальность: Один фреймворк Ultralytics поддерживает обнаружение объектов, сегментацию объектов, оценку позы, классификацию и ориентированные граничные коробки (OBB). Такая универсальность избавляет от необходимости изучать разные кодовые базы для разных задач.

Пример простого умозаключения

Оцените, насколько проще выполнять выводы с помощью Ultralytics YOLO11 по сравнению со сложными традиционными конвейерами:

from ultralytics import YOLO

# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")

# Run inference on a local image
results = model("bus.jpg")

# Display the results
results[0].show()

Заключение: Идеальные варианты использования

Выбор между EfficientDet, YOLOX и Ultralytics YOLO зависит от ваших конкретных ограничений.

  • Выбирайте EfficientDet, если ваше приложение развертывается на оборудовании, где пространство для хранения данных и FLOP являются абсолютным узким местом, например, на очень маленьких встроенных микроконтроллерах. Принципиальное масштабирование позволяет тонко контролировать размер модели.
  • Выбирайте YOLOX, если вы развертываете систему на графических процессорах и нуждаетесь в высокой скорости. Его архитектура позволяет избежать некоторых операционных накладок, присущих методам на основе якорей, что делает его весьма эффективным для видеоаналитики в реальном времени на поддерживаемом оборудовании.
  • Выберите Ultralytics YOLO11, чтобы получить наилучшую универсальную производительность. Он сочетает в себе скорость YOLOX и эффективность современных архитектурных решений. Кроме того, его экосистема, документация и поддержка многозадачности значительно сокращают время разработки, что делает его лучшим выбором как для быстрого создания прототипов, так и для масштабируемых производственных развертываний.

Сравнения с другими моделями

Изучите технические различия между ведущими моделями компьютерного зрения:


Комментарии