Link to this sectionYOLOv5 против EfficientDet: оценка архитектур для обнаружения объектов в реальном времени#
Когда ты приступаешь к новому проекту по computer vision, выбор правильной архитектуры нейронной сети становится одним из самых важных решений. Это руководство предлагает подробное техническое сравнение Ultralytics YOLOv5 и EfficientDet от Google. Анализируя их архитектуры, показатели производительности и среды обучения, мы стремимся помочь разработчикам и исследователям выбрать лучшую модель для object detection для их конкретных сред развертывания.
Хотя EfficientDet представил новые концепции составного масштабирования и объединения признаков, YOLOv5 совершил революцию в отрасли, сделав высокопроизводительный ИИ доступным благодаря невероятно интуитивной реализации на PyTorch, оптимизированному пользовательскому опыту и непревзойденному балансу скорости и точности.
Link to this sectionUltralytics YOLOv5: отраслевой стандарт доступности#
Выпущенный летом 2020 года, YOLOv5 ознаменовал ключевой сдвиг в линейке YOLO. Перейдя с фреймворка Darknet на языке C на нативный PyTorch, он стал предпочтительной архитектурой для разработчиков, стремящихся быстро создавать, обучать и развертывать модели.
- Авторы: Glenn Jocher
- Организация: Ultralytics
- Дата: 2020-06-26
- GitHub: https://github.com/ultralytics/yolov5
- Документация: https://docs.ultralytics.com/models/yolov5
Link to this sectionАрхитектурные инновации#
YOLOv5 славится своей высокооптимизированной архитектурой, которая ставит во главу угла бесперебойный жизненный цикл machine learning. В нем используется модифицированный бэкенд CSPDarknet53 в сочетании с неком Path Aggregation Network (PANet), что значительно улучшает распространение признаков по нескольким пространственным масштабам.
Ключевые достижения включают:
- Mosaic Data Augmentation: Эта техника обучения объединяет четыре различных тренировочных изображения в одну мозаику. Это заставляет модель учиться распознавать объекты в сложных пространственных контекстах и значительно повышает ее способность обнаруживать мелкие цели.
- Автообучение анкорных боксов: Перед началом обучения YOLOv5 анализирует твои пользовательские training data и автоматически вычисляет оптимальные размеры anchor box с помощью кластеризации k-means.
- Эффективность памяти: По сравнению с тяжелыми моделями на базе Transformer, YOLOv5 поддерживает значительно меньший объем используемой памяти как во время обучения, так и во время инференса, что позволяет ему плавно работать на потребительском оборудовании.
Link to this sectionEfficientDet: масштабируемое обнаружение объектов#
Представленный Google Research в 2019 году, EfficientDet был нацелен на создание семейства масштабируемых детекторов объектов. Он базируется на бэкенде классификации изображений EfficientNet и внедряет новый механизм объединения признаков.
- Авторы: Минсин Тан, Руомин Пан и Куок В. Ле
- Организация: Google
- Дата: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
- Документация: https://github.com/google/automl/tree/master/efficientdet#readme
Link to this sectionАрхитектурные инновации#
Основное предложение EfficientDet заключается в системном подходе к масштабированию и агрегации признаков:
- BiFPN (Bi-directional Feature Pyramid Network): В отличие от традиционных FPN, которые передают информацию только сверху вниз, BiFPN обеспечивает быстрое и легкое объединение признаков разных масштабов за счет введения обучаемых весов для определения важности различных входных признаков.
- Составное масштабирование: EfficientDet совместно масштабирует разрешение, глубину и ширину для всех сетей бэкенда, сети признаков и сетей предсказания bbox/класса, что позволяет создавать модели от облегченной D0 до массивной D7.
В то время как EfficientDet в значительной степени полагается на экосистему TensorFlow и библиотеки AutoML, YOLOv5 работает нативно в PyTorch, предлагая то, что многие разработчики находят более интуитивным, «питоническим» и отлаживаемым рабочим процессом.
Link to this sectionСравнение производительности и метрик#
При сравнении этих моделей крайне важно оценивать их производительность на стандартных бенчмарках, таких как COCO dataset. Таблица ниже подсвечивает компромиссы между размером, вычислительными затратами (FLOPs) и скоростью инференса.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
Link to this sectionСбалансированный анализ#
YOLOv5 превосходит конкурентов по гибкости развертывания и совместимости с аппаратным ускорением. Обрати внимание на молниеносную скорость TensorRT на GPU T4. Это делает YOLOv5 невероятно подходящим для видеоаналитики с высокой пропускной способностью и конвейеров real-time inference. Кроме того, экосистема Ultralytics делает экспорт в такие форматы, как ONNX, CoreML и TensorRT, командой из одной строки.
EfficientDet предлагает отличную эффективность параметров. Для заданного количества параметров он часто выдает высокий mean Average Precision (mAP). Однако эта теоретическая эффективность не всегда трансформируется в более быстрое время инференса на edge GPU из-за сложной маршрутизации слоя BiFPN, который может быть ограничен пропускной способностью памяти, а не вычислительной мощностью.
Link to this sectionЭкосистема и простота использования#
Главное преимущество выбора модели Ultralytics заключается в окружающей экосистеме. YOLOv5 является частью активно поддерживаемого и развиваемого репозитория с огромной поддержкой сообщества.
С появлением Ultralytics Platform пользователи могут легко переходить от сбора данных к развертыванию. Эта платформа поддерживает автоматическую разметку, облачное обучение и мониторинг моделей «из коробки». Напротив, обучение EfficientDet часто требует работы со сложностями старых API обнаружения объектов TensorFlow, что может представлять собой крутую кривую обучения для быстрого прототипирования.
Более того, универсальность YOLOv5 выходит за рамки ограничивающих рамок. Благодаря постоянным обновлениям фреймворк Ultralytics нативно поддерживает instance segmentation и image classification, предоставляя унифицированный API для множества задач компьютерного зрения.
Link to this sectionИдеальные варианты использования#
- Выбирай YOLOv5, когда: Тебе нужно быстрое прототипирование, легкий опыт обучения и высокооптимизированное развертывание на edge-устройствах. Он идеально подходит для дронов, retail analytics и мобильных приложений, где низкая задержка критически важна.
- Выбирай EfficientDet, когда: Ты работаешь строго в среде Google Cloud/TensorFlow AutoML и требуешь максимальной точности на параметр без строгих ограничений по задержке в реальном времени.
Link to this sectionНовое поколение: знакомство с YOLO26#
Хотя YOLOv5 остается надежной «рабочей лошадкой», ландшафт компьютерного зрения шагнул вперед. Для разработчиков, ищущих абсолютный state-of-the-art в 2026 году, YOLO26 представляет собой новую вершину линейки Ultralytics.
Опираясь на наследие своих предшественников (таких как YOLOv8 и YOLO11), YOLO26 внедряет новаторские инновации:
- End-to-End NMS-Free дизайн: YOLO26 нативно устраняет необходимость в постобработке Non-Maximum Suppression. Это значительно снижает вариативность задержки и упрощает архитектуру развертывания.
- Up to 43% Faster CPU Inference: Heavily optimized for edge AI, it brings unprecedented speeds to low-power edge devices and standard CPUs without dedicated GPUs.
- Оптимизатор MuSGD: Вдохновленный методами обучения больших языковых моделей (LLM), этот гибрид SGD и Muon обеспечивает очень стабильное обучение и быструю сходимость.
- Продвинутые функции потерь: Интеграция ProgLoss и STAL значительно улучшает распознавание мелких объектов, что жизненно важно для съемки с дронов на большой высоте и robotics.
- Удаление DFL: Благодаря удалению Distribution Focal Loss процесс экспорта модели стал более эффективным, что еще больше улучшило совместимость с различными аппаратными ускорителями.
Пользователи, заинтересованные в изучении других недавних архитектур в экосистеме Ultralytics, могут также сравнить такие модели, как YOLOv10 или RT-DETR.
Python API Ultralytics разработан с учетом обратной и прямой совместимости. Обновление с YOLOv5 до YOLO26 буквально так же просто, как изменение строки весов модели в твоем коде!
Link to this sectionПример кода: обучение и инференс#
Чтобы продемонстрировать непревзойденную простоту использования экосистемы Ultralytics, вот как ты можешь обучить современную модель YOLO и запустить инференс. Этот код на 100% рабочий и автоматически обрабатывает скачивание датасета, циклы обучения и валидацию.
from ultralytics import YOLO
# Load a modern model (Swap 'yolov5s.pt' for 'yolo26n.pt' to test the newest architecture!)
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 example dataset for 20 epochs
results = model.train(data="coco8.yaml", epochs=20, imgsz=640)
# Run inference on an image from the web
inference_results = model("https://ultralytics.com/images/bus.jpg")
# Display the image with bounding boxes
inference_results[0].show()Ставя во главу угла пользовательский опыт, поддерживая надежную экосистему и постоянно раздвигая границы возможного с такими обновлениями, как YOLO26, Ultralytics гарантирует, что у разработчиков всегда есть лучшие инструменты для решения реальных задач визуального интеллекта.