Link to this sectionYOLOv10 против EfficientDet#
Выбор оптимальной нейронной сети для обнаружения объектов — это критически важное решение, определяющее успех современных систем компьютерного зрения. Две заметные архитектуры, которые существенно повлияли на эту область, — это YOLOv10 и EfficientDet. Хотя обе нацелены на повышение точности при минимизации вычислительных затрат, они используют совершенно разные архитектурные подходы для достижения этих целей.
Это подробное руководство погружает в их уникальные конструкции, методологии обучения и особенности развертывания, помогая разработчикам и ML-инженерам принимать решения на основе данных для приложений компьютерного зрения с ИИ. Мы рассмотрим, как они работают на оборудовании, начиная от встроенных edge AI устройств и заканчивая мощными облачными GPU.
Link to this sectionYOLOv10: первопроходец без NMS#
Созданная для расширения границ задержки в реальном времени, модель YOLOv10 устранила одно из самых стойких «узких мест» в семействе YOLO: немаксимальное подавление (NMS). Исключив этот шаг постобработки, модель достигает высокой предсказуемости задержки, что критически важно для автономных транспортных средств и высокоскоростной робототехники.
Link to this sectionАрхитектурные инновации#
YOLOv10 вводит согласованные двойные назначения для обучения без NMS. В процессе обучения модель использует как назначения меток «один-ко-многим», так и «один-к-одному», что позволяет сети изучать богатые представления, при этом выдавая один лучший ограничивающий прямоугольник (bbox) для каждого объекта во время инференса. Архитектура также включает целостный дизайн, ориентированный на эффективность и точность, оптимизируя классификационную голову и уменьшая вычислительную избыточность, характерную для предыдущих версий.
Link to this sectionПодробности о модели#
- Авторы: Ао Ван, Хуэй Чен, Лихао Лю и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- Статья: YOLOv10: Real-Time End-to-End Object Detection
- GitHub: THU-MIG/yolov10
- Документация: Документация YOLOv10
Поскольку YOLOv10 исключает шаг NMS, ее по своей сути проще экспортировать в такие форматы, как ONNX format и NVIDIA TensorRT, не полагаясь на пользовательские плагины времени выполнения для фильтрации bbox.
Преимущества:
- Предсказуемый инференс: Устранение NMS обеспечивает стабильное время инференса независимо от количества объектов в кадре.
- Меньшее использование памяти: По сравнению с моделями на основе Transformer, такими как RT-DETR, YOLOv10 требует значительно меньше памяти как во время обучения, так и при инференсе.
- Отличный баланс скорости и точности: Специально оптимизирована для сценариев с низкой задержкой без ущерба для метрик производительности.
Недостатки:
- Фокус на одной задаче: В отличие от более широкой экосистемы Ultralytics, оригинальный репозиторий YOLOv10 сильно сфокусирован на обнаружении и не имеет нативной поддержки сегментации экземпляров или оценки позы.
Link to this sectionEfficientDet: масштабируемость и баланс#
Представленная Google Brain, модель EfficientDet подходит к обнаружению объектов через призму систематического масштабирования сети. Она построена на основе бэкенда EfficientNet для классификации изображений и вводит новый механизм слияния признаков.
Link to this sectionАрхитектурные инновации#
Основой EfficientDet является Bi-directional Feature Pyramid Network (BiFPN), которая обеспечивает простое и быстрое многомасштабное слияние признаков. В отличие от традиционных FPN, которые суммируют признаки только сверху вниз, BiFPN вводит двунаправленные кросс-масштабные соединения и обучаемые веса для оценки важности различных входных признаков. Кроме того, EfficientDet использует метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину для всех сетей — бэкенда, сети признаков и сетей предсказания bbox/классов.
Link to this sectionПодробности о модели#
- Авторы: Минсин Тан, Руомин Пан и Куок В. Ле
- Организация: Google Brain
- Дата: 2019-11-20
- Статья: EfficientDet: Scalable and Efficient Object Detection
- GitHub: Google AutoML EfficientDet
Преимущества:
- Высокая эффективность: Отличное соотношение параметров к точности, что делает меньшие варианты от
-d0до-d2очень легковесными. - Принципиальное масштабирование: Составное масштабирование позволяет легко выбирать размер модели, соответствующий твоему вычислительному бюджету.
Недостатки:
- Интеграция с устаревшими фреймворками: Оригинальная реализация сильно полагается на старые версии TensorFlow, что может усложнить современные конвейеры развертывания.
- Более медленное обучение: Обучение EfficientDet «с нуля» крайне медленное и требует тщательной настройки гиперпараметров по сравнению с быстрой сходимостью архитектур YOLO.
- Скорость инференса: Несмотря на эффективность по параметрам, сложные операции BiFPN часто приводят к более медленной скорости инференса в реальных условиях на стандартном оборудовании по сравнению с высокооптимизированными моделями YOLO.
Link to this sectionПроизводительность и бенчмарки#
Истинная проверка этих моделей заключается в их эмпирической производительности на стандартных бенчмарках, таких как датасет COCO. Таблица ниже иллюстрирует критические различия в количестве параметров, операциях с плавающей запятой (FLOPs) и задержке инференса на GPU NVIDIA T4.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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-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 |
Как показано выше, YOLOv10 сохраняет значительное преимущество в «чистой» скорости инференса. Например, YOLOv10-S достигает 46.7 mAP при задержке TensorRT всего 2.66 мс, тогда как EfficientDet-d3 достигает схожих 47.5 mAP, но затрачивает почти 20 мс, что делает YOLOv10 значительно более подходящей для потокового видео в реальном времени или скоростных производственных конвейеров.
Link to this sectionСценарии использования и рекомендации#
Выбор между YOLOv10 и EfficientDet зависит от твоих конкретных требований к проекту, ограничений при развертывании и предпочтений в экосистеме.
Link to this sectionКогда стоит выбрать YOLOv10#
YOLOv10 — отличный выбор для:
- Детекции в реальном времени без NMS: Приложения, которым полезна сквозная (end-to-end) детекция без использования Non-Maximum Suppression, что снижает сложность развертывания.
- Сбалансированного соотношения скорости и точности: Проекты, требующие оптимального баланса между скоростью вывода и точностью детекции для различных масштабов моделей.
- Приложений с постоянной задержкой: Сценарии развертывания, где критически важна предсказуемость времени вывода, например, в робототехнике или автономных системах.
Link to this sectionКогда стоит выбрать EfficientDet#
EfficientDet рекомендуется для:
- Конвейеры Google Cloud и TPU: Системы с глубокой интеграцией в Google Cloud Vision API или инфраструктуру TPU, где EfficientDet имеет встроенную оптимизацию.
- Исследования составного масштабирования: Академическое тестирование, сфокусированное на изучении эффектов сбалансированного масштабирования глубины, ширины и разрешения сети.
- Мобильного развертывания через TFLite: Проектов, которые требуют экспорта в TensorFlow Lite специально для Android или встраиваемых устройств на базе Linux.
Link to this sectionКогда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и опыта разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Детектирования мелких объектов: сложных сценариев, таких как аэросъемка с дронов или анализ датчиков IoT, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Link to this sectionСовременный стандарт: встречай Ultralytics YOLO26#
Хотя YOLOv10 представила революционную парадигму без NMS, а EfficientDet продемонстрировала принципиальное масштабирование, ландшафт компьютерного зрения продолжает развиваться. Для разработчиков, начинающих новые проекты сегодня, Ultralytics YOLO26 представляет собой бесспорный современный стандарт. Выпущенная в январе 2026 года, она объединяет лучшее из обоих миров в отшлифованном и готовом к производству пакете в рамках платформы Ultralytics.
Link to this sectionПочему YOLO26 превосходит конкурентов#
- End-to-End дизайн без NMS: YOLO26 нативно использует архитектуру без NMS, впервые предложенную в YOLOv10, упрощая развертывание и ускоряя инференс.
- До 43% быстрее инференс на CPU: Для устройств, где нет специализированных ускорителей, YOLO26 специально оптимизирована для эффективной работы на стандартных CPU.
- Улучшенный оптимизатор MuSGD: Вдохновленная инновациями в обучении LLM, YOLO26 использует гибрид SGD и Muon для невероятно стабильного обучения и быстрой сходимости, что значительно повышает эффективность обучения по сравнению с EfficientDet.
- ProgLoss + STAL: Эти улучшенные функции потерь обеспечивают значительный прирост в распознавании мелких объектов, что было традиционно слабым местом как для YOLOv10, так и для EfficientDet.
- Удаление DFL: Удалив Distribution Focal Loss, модель YOLO26 легко экспортируется практически в любой аппаратный формат, включая OpenVINO и CoreML.
Более того, YOLO26 обеспечивает непревзойденную универсальность. В то время как EfficientDet и YOLOv10 являются моделями сугубо для обнаружения, YOLO26 легко справляется с ориентированными bbox, классификацией изображений и сегментацией экземпляров, используя тот же интуитивно понятный Python-пакет Ultralytics.
Link to this sectionПростота использования с 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", quantize=16)Link to this sectionЗаключение#
При сравнении YOLOv10 и EfficientDet выбор сильно зависит от предпочтений в фреймворке и ограничений по скорости. EfficientDet предлагает структурированный подход к масштабированию моделей в экосистеме TensorFlow. Однако YOLOv10 обеспечивает превосходную производительность в реальном времени, меньшее использование памяти и более простой путь развертывания благодаря своей архитектуре без NMS.
Для достижения наилучшего баланса производительности, простоты использования и многозадачной универсальности настоятельно рекомендуется перейти на платформу Ultralytics и использовать YOLO26. Она берет инновации без NMS из YOLOv10, применяет современные методы обучения, такие как оптимизатор MuSGD, и упаковывает всё это в надежный open-source фреймворк, поддерживаемый огромным мировым сообществом.