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

DAMO-YOLO против YOLOv5: Глубокий анализ обнаружения объектов в реальном времени

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

Введение в DAMO-YOLO

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

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

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

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

DAMO-YOLO построена на основе Neural Architecture Search (NAS). Авторы использовали MAE-NAS для автоматического проектирования магистральных сетей, которые балансируют между задержкой и точностью. Модель представляет эффективную RepGFPN (перепараметризованную обобщенную пирамидальную сеть признаков), которая улучшает слияние признаков на разных масштабах. Кроме того, DAMO-YOLO включает в себя архитектуру "ZeroHead", которая отказывается от сложных многоветвевых предсказательных голов в пользу более простой и эффективной структуры, активно использующей репараметризацию во время инференса.

Для улучшения обучения модель использует AlignedOTA для назначения меток и интенсивный процесс улучшения дистилляции, где более крупная модель-«учитель» направляет меньшую модель-«ученика» для достижения более высокой точности.

Введение в Ultralytics YOLOv5

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

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

Стандарт экосистемы

YOLOv5 переопределил отраслевой стандарт удобства использования. Созданный нативно в PyTorch, он использует высокооптимизированный backbone CSPNet и шейку PANet для надежной агрегации признаков. Хотя он предшествовал тенденции безъякорных моделей, наблюдаемой в более поздних моделях, его высокоразвитый подход на основе якорей в сочетании с автоматическим обучением якорей обеспечивает отличную производительность «из коробки».

Истинная сила YOLOv5 заключается в ее хорошо поддерживаемой экосистеме. Она бесшовно интегрируется с инструментами track, такими как Comet и Weights & Biases, и поддерживает экспорт в один клик в такие форматы, как ONNX, TensorRT и CoreML.

Начало работы с YOLOv5

YOLOv5 невероятно легко обучать на пользовательских наборах данных. Оптимизированный API снижает трение на пути от прототипа до производства, что делает его фаворитом среди гибких инженерных команд.

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

При сравнении этих моделей крайне важно учитывать баланс средней точности (mAP), скорости инференса и количества параметров.

Модельразмер
(пиксели)
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
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

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

DAMO-YOLO достигает впечатляющих показателей mAP для своих размеров параметров, значительно выигрывая от фазы обучения с дистилляцией. Однако это достигается за счет снижения эффективности обучения. Многоэтапный процесс дистилляции требует предварительного обучения большой модели-учителя, что значительно увеличивает необходимое время вычислений на GPU и объем VRAM.

Напротив, YOLOv5 предлагает отличные требования к памяти. Модели Ultralytics YOLO известны более низким потреблением памяти как во время обучения, так и во время инференса по сравнению со сложными конвейерами дистилляции или моделями на основе трансформеров, такими как RT-DETR. Это позволяет эффективно обучать YOLOv5 на потребительском оборудовании или в доступных облачных средах, таких как Google Colab.

Практические применения и универсальность

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

В чем DAMO-YOLO превосходит другие модели

DAMO-YOLO — это строго модель обнаружения объектов. Это отличный выбор для академических исследований, особенно для команд, изучающих Neural Architecture Search, или тех, кто стремится воспроизвести методы репараметризации, подробно описанные в статье. Если проект располагает обширными вычислительными ресурсами для выполнения фазы обучения с дистилляцией и сосредоточен исключительно на выжимании последней доли точности для 2D ограничивающих рамок, DAMO-YOLO является сильным претендентом.

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

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

Например, новые итерации в семействе Ultralytics нативно поддерживают сегментацию экземпляров, оценку позы и detect ориентированных ограничивающих рамок (OBB). Эта многозадачная возможность гарантирует, что команды могут использовать единый, унифицированный Python API для сложных конвейеров, таких как объединение автоматического распознавания номерных знаков с сегментацией транспортных средств.

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

Выбор между DAMO-YOLO и YOLOv5 зависит от ваших конкретных требований проекта, ограничений развертывания и предпочтений экосистемы.

Когда следует выбирать DAMO-YOLO

DAMO-YOLO — это отличный выбор для:

  • Высокопроизводительная видеоаналитика: Обработка видеопотоков с высокой частотой кадров на стационарной инфраструктуре NVIDIA GPU, где пропускная способность при размере пакета 1 является основным показателем.
  • Промышленные производственные линии: Сценарии со строгими ограничениями по задержке GPU на специализированном оборудовании, например, контроль качества в реальном времени на сборочных линиях.
  • Исследования нейронного поиска архитектуры: Изучение влияния автоматизированного поиска архитектуры (MAE-NAS) и эффективных репараметризованных бэкбонов на производительность detect.

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

YOLOv5 рекомендуется для:

  • Проверенные производственные системы: Существующие развертывания, где ценятся долгий track-рекорд стабильности YOLOv5, обширная документация и массивная поддержка сообщества.
  • Обучение с ограниченными ресурсами: Среды с ограниченными ресурсами GPU, где эффективный конвейер обучения YOLOv5 и низкие требования к памяти являются преимуществом.
  • Обширная поддержка форматов экспорта: Проекты, требующие развертывания во многих форматах, включая ONNX, TensorRT, CoreML и TFLite.

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

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

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

Будущее: Переход к YOLO26

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

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

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

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

Пример кода: Простота в действии

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

from ultralytics import YOLO

# Load the state-of-the-art YOLO26 small model
model = YOLO("yolo26s.pt")

# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()

# Export the model for edge deployment
model.export(format="onnx")

Заключение

Как DAMO-YOLO, так и YOLOv5 внесли значительный вклад в развитие компьютерного зрения. DAMO-YOLO демонстрирует мощь поиска нейронной архитектуры и дистилляции, что делает его интересным объектом для исследований. Однако YOLOv5 остаётся мощным практическим решением благодаря своему балансу производительности, низким требованиям к памяти и беспрецедентной простоте использования.

Для разработчиков, начинающих новые проекты сегодня, рекомендуется использовать платформу Ultralytics и внедрять YOLO26. Он сочетает в себе полюбившуюся пользователям экосистему YOLOv5 с новаторскими архитектурными достижениями, обеспечивая высочайшую точность и молниеносный вывод для облачных и периферийных AI-приложений. Разработчики также могут рассмотреть другие эффективные модели, такие как YOLOv6 или YOLOX, в зависимости от конкретных ограничений устаревшего оборудования.


Комментарии