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

DAMO-YOLO против YOLOv7: Оценка детекторов объектов реального времени

Быстрое развитие компьютерного зрения привело к появлению высокоэффективных моделей обнаружения объектов, разработанных для баланса между точностью и вычислительными затратами. Две заметные модели, представленные в 2022 году, — это DAMO-YOLO и YOLOv7. Хотя обе стремятся расширить границы задач компьютерного зрения в реальном времени, они достигают своих результатов с помощью совершенно разных архитектурных парадигм и методологий обучения.

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

Истоки модели и метаданные

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

DAMO-YOLO

Разработанный исследователями из Alibaba Group, DAMO-YOLO был представлен для оптимизации как скорости, так и точности с помощью автоматизированного поиска архитектуры и дистилляции.

  • Авторы: Сяньчжэ Сюй, Ици Цзян, Вэйхуа Чэнь, Илунь Хуан, Юань Чжан и Сююй Сунь
  • Организация:Alibaba Group
  • Дата: 23 ноября 2022 г.
  • Arxiv:2211.15444v2
  • GitHub:tinyvision/DAMO-YOLO

Узнайте больше о DAMO-YOLO

YOLOv7

Выпущенный как передовое решение в середине 2022 года, YOLOv7 продвинул инференс в реальном времени дальше за счет внедрения обучаемых «бесплатных приемов» без увеличения затрат на развертывание.

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

Поддерживаемая экосистема

YOLOv7 официально поддерживается в экосистеме Ultralytics, обеспечивая бесшовное обучение, валидацию и экспорт с помощью унифицированного API.

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

DAMO-YOLO: NAS и дистилляция

DAMO-YOLO включает в себя несколько передовых методов, направленных на достижение максимальной эффективности:

  • Бэкбоны NAS: Использует нейронный поиск архитектуры (NAS) для автоматического проектирования оптимальных бэкбонов (MAE-NAS), адаптированных для сред с критически важной задержкой.
  • Эффективная RepGFPN: Модифицированная обобщенная пирамида признаков, которая значительно повышает эффективность слияния признаков в нескольких масштабах.
  • ZeroHead & AlignedOTA: Включает легковесную детекционную голову и оптимизированную стратегию присвоения меток (AlignedOTA) для снижения вычислительных издержек.
  • Улучшение дистилляции: Активно использует дистилляцию знаний во время обучения для повышения производительности меньших вариантов моделей без увеличения количества их параметров.

YOLOv7: E-ELAN и «Бесплатные приемы»

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

  • Архитектура E-ELAN: Архитектура Extended Efficient Layer Aggregation Network позволяет модели изучать более разнообразные признаки, контролируя кратчайшие и длиннейшие градиентные пути, обеспечивая эффективную сходимость обучения.
  • Масштабирование модели: Представляет составной метод масштабирования, адаптированный для моделей на основе конкатенации, одновременно масштабируя глубину и ширину для структурного выравнивания.
  • Обучаемый набор "бесплатных" улучшений: Использует такие методы, как репараметризованные свертки (RepConv) без связей идентичности, и стратегии динамического назначения меток, которые повышают точность во время обучения, не влияя на скорость инференса.

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

При оценке средней точности (mAP), скорости и эффективности обе модели демонстрируют впечатляющие метрики, хотя и ориентированы на несколько разные сегменты. YOLOv7 в значительной степени сфокусирована на развертывании с высокой точностью на GPU, в то время как структуры DAMO-YOLO, полученные с помощью NAS, нацелены на агрессивное развертывание с низкой задержкой на CPU и периферийных устройствах.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Как показывают метрики, хотя DAMO-YOLO предлагает чрезвычайно лёгкие варианты (например, крошечную модель всего с 8,5 млн параметров), YOLOv7 достигает более высокого пика общей точности, при этом YOLOv7x демонстрирует впечатляющие 53.1 mAP на наборе данных COCO.

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

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

  • Баланс производительности: Модели Ultralytics постоянно обеспечивают оптимальный компромисс между скоростью вывода и точностью обнаружения, что делает их идеальными как для периферийных устройств, так и для развертывания моделей в облаке.
  • Требования к памяти: В отличие от более тяжелых моделей на основе трансформеров, модели Ultralytics YOLO поддерживают низкие требования к памяти CUDA во время обучения. Это позволяет использовать большие размеры пакетов, оптимизируя процесс обучения даже на потребительском оборудовании.
  • Универсальность: Фреймворк Ultralytics выходит за рамки обнаружения объектов, охватывая такие задачи, как сегментация экземпляров и оценка позы, предоставляя разработчикам полный набор инструментов компьютерного зрения.

Эффективность обучения

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

Пример кода: Обучение YOLOv7 с Ultralytics

Интеграция YOLOv7 в ваш конвейер компьютерного зрения невероятно проста с использованием Ultralytics python API.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run inference and validate results
metrics = model.val()
predictions = model.predict("https://ultralytics.com/images/bus.jpg", save=True)

Новый стандарт: Представляем YOLO26

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

YOLO26 обеспечивает скачок производительности и удобства использования на поколение вперед, включая передовые инновации:

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

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

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

Выбор правильной архитектуры полностью зависит от целевой среды развертывания и ограничений проекта.

Когда выбрать DAMO-YOLO:

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

Когда выбрать YOLOv7:

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

Когда выбирать YOLO26 (Рекомендуется):

  • Вы создаете новое приложение компьютерного зрения с нуля, и вам требуется абсолютно передовое решение как по точности, так и по скорости вывода на CPU/граничных устройствах.
  • Вам требуется быстрое, бесшовное развертывание (например, экспорт в CoreML или TensorRT) без необходимости учитывать ограничения оператора NMS.
  • Вы хотите использовать все возможности Ultralytics Platform для облачного обучения, управления наборами данных и автоматизированного развертывания.

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


Комментарии