Ultralytics YOLO27:
Get Started

EfficientDet и YOLOv10#

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

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

EfficientDet: первопроходец составного масштабирования#

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

Ключевые инновации и архитектура#

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

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

Подробнее об EfficientDet

YOLOv10: новаторская архитектура без NMS#

Выпущенная в середине 2024 года YOLOv10 кардинально изменила подход к обнаружению объектов в реальном времени, устранив необходимость в подавлении немаксимумов (NMS) при постобработке и значительно сократив задержку инференса.

Ключевые инновации и архитектура#

YOLOv10 представляет согласованную стратегию двойного назначения меток для обучения без NMS. Используя во время обучения как назначение «один ко многим», так и назначение «один к одному», сеть учится предсказывать уникально соответствующие ограничивающие рамки без применения NMS для удаления дубликатов. Такой целостный подход к проектированию, ориентированный на эффективность и точность, сокращает избыточные вычисления, что делает модель отличным кандидатом для периферийных вычислений и приложений потокового видео с низкой задержкой. Модель легко интегрируется в экосистему Ultralytics, предоставляя разработчикам предельно простой Python API.

Подробнее о YOLOv10

Преимущества работы без NMS

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

Сравнение производительности: точность, скорость и эффективность#

При развёртывании моделей в реальных условиях разработчикам необходимо сопоставлять среднюю точность (mAP) с количеством параметров и вычислительных операций (FLOPs). В таблице ниже представлены эти показатели для масштабируемых вариантов обеих моделей.

Модельразмер
(пиксели)
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
YOLOv10n64038.5-1.842.36.7
YOLOv10s64046.3-2.497.221.6
YOLOv10m64051.1-4.7415.459.1
YOLOv10b64052.5-5.7419.192.0
YOLOv10l64053.2-7.2824.4120.3
YOLOv10x64054.4-10.7029.5160.4

Примечание: вариант YOLOv10n требует значительно меньше параметров (2.3M) и обеспечивает намного более высокую скорость на TensorRT (1.84ms), чем ранние версии EfficientDet, что делает его гораздо более подходящим для инференса в реальном времени в производственных системах.

Почему стоит выбрать Ultralytics для развёртывания моделей?#

Несмотря на историческую и структурную значимость обеих моделей, их интеграция в современные конвейеры может стать непростой задачей. Здесь преимущества платформы Ultralytics особенно заметны. Благодаря единой экосистеме Ultralytics упрощает весь жизненный цикл — от разметки данных до развёртывания.

  1. Простота использования: пакет Ultralytics для Python предоставляет единый интерфейс для обучения моделей, валидации и экспорта, заменяя сотни строк шаблонного кода короткими командами.
  2. Экосистема и универсальность: EfficientDet узкоспециализирована для обнаружения объектов, тогда как модели Ultralytics YOLO подходят также для сегментации экземпляров, оценки позы, ориентированных ограничивающих рамок (OBB) и классификации.
  3. Эффективность обучения: благодаря передовым методам, таким как автоматическое пакетирование и распределённое обучение, модели Ultralytics обучаются быстрее и потребляют значительно меньше памяти CUDA, чем крупные модели на основе трансформеров или старые многоветвевые архитектуры TensorFlow.

Пример кода: обучение YOLOv10#

Развёртывать YOLOv10 с Ultralytics очень просто. Следующий фрагмент кода показывает, как инициализировать, обучить и оценить сеть YOLOv10 непосредственно через Python API.

from ultralytics import YOLO

# Загрузи предварительно обученную модель YOLOv10 (компактный вариант для высокой скорости на периферийных устройствах)
model = YOLO("yolov10n.pt")

# Обучи модель на датасете COCO8
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, batch=16)

# Оцени модель на валидационном наборе
metrics = model.val()

# Экспортируем модель в ONNX для развертывания в промышленной среде
model.export(format="onnx")

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

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

Когда стоит выбрать EfficientDet#

EfficientDet — хороший выбор для:

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

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

YOLOv10 рекомендуется для таких задач:

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

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

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

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

Будущее уже наступило: встречай Ultralytics YOLO26#

Хотя YOLOv10 представила революционную архитектуру без NMS, технология продолжила развиваться. Выпущенная в январе 2026 года Ultralytics YOLO26 — передовая модель для компьютерного зрения и ИИ. Она объединяет лучшие стороны предыдущих архитектур — например, многозадачные возможности YOLO11 и стабильность RT-DETR — в одной высокооптимизированной модели.

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

Если ты начинаешь новый проект, мы настоятельно рекомендуем перейти на YOLO26. Модель обеспечивает непревзойдённую гибкость и простоту использования через платформу Ultralytics.

Ключевые прорывы YOLO26:

  • Сквозная архитектура без NMS: развивая основы, заложенные YOLOv10, YOLO26 предлагает дополнительную сквозную голову один-к-одному (nms=False), которая пропускает NMS и предельно упрощает логику развёртывания.
  • Инференс на CPU до 43% быстрее: отказ от функции потерь Distribution Focal Loss (DFL) значительно сокращает вычислительные накладные расходы YOLO26, делая её бесспорным лидером для устройств периферийного ИИ.
  • Оптимизатор MuSGD: YOLO26 использует инновации из обучения больших языковых моделей (LLM). Объединяя стабильность SGD со скоростью Muon, он сходится быстрее и надёжнее любой предыдущей модели.
  • ProgLoss + STAL: улучшенные функции потерь эффективно решают давние проблемы обнаружения небольших объектов — область, в которой EfficientDet традиционно уступала.

Вывод: выбираем модель для конкретной задачи#

Окончательный выбор между этими сетями зависит от ограничений развёртывания:

  • EfficientDet по-прежнему представляет академический интерес как пример составного масштабирования и подходит исследователям, поддерживающим существующие системы TensorFlow, для которых размер файла весов модели важнее скорости выполнения.
  • YOLOv10 отлично подходит для приложений, которым необходима сверхнизкая задержка, например для высокоскоростного отслеживания нескольких объектов и мониторинга дорожного движения, благодаря новаторской архитектуре без NMS.
  • Однако YOLO26 — лучший выбор для современных проектов компьютерного зрения: модель обеспечивает наилучший баланс производительности, сочетая точность, минимальное потребление памяти и универсальность для множества задач, и поддерживается надёжной экосистемой Ultralytics.

Комментарии