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

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

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

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

EfficientDet: Масштабируемая архитектура с BiFPN

Представленный Google Research, EfficientDet был разработан для систематического масштабирования как базовой сети (backbone), так и сети признаков с целью достижения высокой точности при меньшем количестве параметров по сравнению с предыдущими передовыми моделями.

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

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

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

Хотя EfficientDet является высокоточным, он сильно зависит от экосистемы TensorFlow и специфических библиотек AutoML. Эта зависимость иногда может затруднять его интеграцию в пользовательские, легковесные конвейеры развертывания или среды, которые отдают предпочтение динамическим вычислительным графам.

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

Ultralytics YOLOv5: Демократизация ИИ реального времени

Выпущенный вскоре после EfficientDet, Ultralytics YOLOv5 произвел революцию в отрасли, предложив невероятно доступную нативную реализацию архитектуры YOLO на PyTorch. Он установил новый стандарт для удобства разработчиков, эффективности обучения и гибкости развертывания в реальном времени.

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

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

YOLOv5 представил значительные улучшения по сравнению со своими предшественниками, используя основу CSPDarknet (Cross-Stage Partial), которая значительно улучшает поток градиентов, одновременно уменьшая общее количество параметров. Кроме того, YOLOv5 включает в себя Auto-Learning Anchor Boxes (автоматически обучаемые опорные рамки), которые автоматически рассчитывают оптимальные априорные значения ограничивающих рамок на основе ваших конкретных пользовательских обучающих данных, устраняя необходимость в ручной настройке гиперпараметров.

YOLOv5 также активно использует мозаичную аугментацию данных (Mosaic Data Augmentation), объединяя четыре разрозненных изображения в одну обучающую плитку. Это значительно улучшает способность модели detect мелкие объекты и обобщает контекстное понимание, делая ее очень надежной в различных средах.

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

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

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

Модельразмер
(пиксели)
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
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Анализ компромиссов

Хотя EfficientDet-d7 масштабируется до впечатляющего пикового mAP в 53.7, он страдает от значительной задержки инференса на аппаратном обеспечении GPU по сравнению с архитектурами YOLO. Напротив, YOLOv5 превосходит в аппаратном ускорении. Вариант YOLOv5n достигает поразительно быстрого времени инференса в 1.12 мс на T4 GPU с использованием NVIDIA TensorRT, что делает его значительно превосходящим для приложений реального времени, таких как автономное вождение или высокоскоростные производственные линии.

Кроме того, модели YOLOv5 демонстрируют значительно более низкие требования к памяти CUDA во время обучения по сравнению со сложными сетями с составным масштабированием или большими моделями-трансформерами. Этот экономичный профиль памяти демократизирует доступ к передовому ИИ, позволяя исследователям обучать надежные модели на стандартном потребительском оборудовании.

Максимизация эффективности оборудования

Чтобы получить максимальное количество кадров в секунду (FPS) от вашей модели YOLOv5 на периферийных устройствах, экспортируйте веса PyTorch в TensorRT для NVIDIA GPU или в OpenVINO для Intel CPU. Этот шаг часто позволяет удвоить скорость инференса.

Экосистема обучения и опыт разработчика

Истинное преимущество экосистемы Ultralytics заключается в ее оптимизированном пользовательском опыте. В то время как EfficientDet требует глубоких знаний API object detect TensorFlow, YOLOv5 предоставляет последовательный, простой Python API.

Хорошо поддерживаемая экосистема Ultralytics обеспечивает разработчикам доступ к частым обновлениям, активной поддержке сообщества и бесшовной интеграции с инструментами отслеживания экспериментов, такими как Weights & Biases и ClearML.

Пример кода: Начало работы с YOLOv5

Выполнение инференса с предварительно обученной моделью YOLOv5 требует всего нескольких строк кода через PyTorch Hub:

from ultralytics import YOLO

# Load the highly efficient YOLOv5s model
model = YOLO("yolov5su.pt")

# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")

# Display the detected bounding boxes
results[0].show()

Универсальность и применение в реальных условиях

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

Идеальные варианты использования

  • EfficientDet: Наилучшим образом подходит для офлайн-обработки, академических исследований и облачной аналитики, где максимальная точность имеет приоритет над задержкой, и где доступны серверные TPU или GPU с большим объемом памяти.
  • YOLOv5: Определенный выбор для развертываний ИИ на периферии. Его сочетание низкой задержки, малого количества параметров и высокой точности делает его идеальным для аналитики дронов, автоматизации розничной торговли в реальном времени и мобильных приложений через CoreML или TFLite.

Следующее поколение: Обновление до YOLO26

Хотя YOLOv5 остается надежной и широко развернутой моделью, область ИИ быстро развивается. Для команд, начинающих новые проекты или ищущих абсолютный пик современной производительности, Ultralytics представила YOLO26, выпущенную в январе 2026 года.

YOLO26 переопределяет границу Парето скорости и точности, представляя новаторские архитектурные изменения, которые упрощают развертывание и ускоряют инференцию.

Ключевые достижения YOLO26

  • Сквозная архитектура без NMS: YOLO26 изначально исключает постобработку Non-Maximum Suppression. Это значительно упрощает логику развертывания и снижает вариативность задержки — прорывной подход, усовершенствованный на основе ранних экспериментов в YOLOv10.
  • До 43% более быстрый инференс на CPU: Специально разработан для периферийных вычислений и маломощных IoT-устройств, работающих без выделенных GPU.
  • Оптимизатор MuSGD: Вдохновленный методами обучения больших языковых моделей (такими как Kimi K2 от Moonshot AI), этот гибрид SGD и Muon привносит инновации LLM в компьютерное зрение, обеспечивая более быструю сходимость и высокостабильную динамику обучения.
  • ProgLoss + STAL: Эти продвинутые функции потерь обеспечивают значительные улучшения в распознавании мелких объектов, что критически важно для аэрофотосъемки и робототехники.
  • Удаление DFL: Исключение Distribution Focal Loss значительно упрощает головную часть модели, что приводит к лучшей совместимости при экспорте на устаревшее или сильно ограниченное граничное оборудование.

Для команд, развертывающих многозадачные конвейеры, YOLO26 также представляет обновления для конкретных задач, такие как многомасштабный прототип для сегментации и специализированная угловая функция потерь для ориентированных ограничивающих рамок (OBB). Чтобы изучить другие современные альтернативы в экосистеме, вы также можете рассмотреть YOLO11 или архитектуру YOLOv8.

Заключение

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


Комментарии