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

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

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

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

  • Авторы: Сяньчжэ Сюй (Xianzhe Xu), Ици Цзян (Yiqi Jiang), Вэйхуа Чэнь (Weihua Chen), Илунь Хуан (Yilun Huang), Юань Чжан (Yuan Zhang) и Сююй Сунь (Xiuyu Sun)
  • Организация: Alibaba Group
  • Дата: 23 ноября 2022 г.
  • Arxiv: 2211.15444v2
  • GitHub: tinyvision/DAMO-YOLO
  • Документация: README.md

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

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

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

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

Введение в Ultralytics YOLOv5

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

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

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

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

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

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

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

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

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(М)
FLOPs
(Б)
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 compute и использование VRAM.

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

Применение в реальном мире и универсальность

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

В чем силен DAMO-YOLO

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Будущее: переход на YOLO26

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

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

YOLO26 устраняет традиционные «бутылочные горлышки» развертывания на устройствах Edge и нестабильности обучения:

  • Дизайн End-to-End без NMS: YOLO26 изначально исключает пост-обработку Non-Maximum Suppression. Это прорыв упрощает логику развертывания и радикально снижает вариативность задержек, делая модель идеальной для высокоскоростной robotics и автономных систем.
  • Оптимизатор MuSGD: Вдохновленный инновациями в обучении LLM (такими как Kimi K2 от Moonshot AI), YOLO26 использует оптимизатор MuSGD (гибрид SGD и Muon). Это обеспечивает крайне стабильные запуски обучения и заметно более быструю сходимость.
  • До 43% быстрее инференс на CPU: Стратегически удалив Distribution Focal Loss (DFL), YOLO26 достигает значительно более высоких скоростей на процессорах и Edge-устройствах по сравнению со своими предшественниками, такими как YOLO11 и YOLOv8.
  • ProgLoss + STAL: Эти продвинутые функции потерь дают заметные улучшения в распознавании мелких объектов, что критически важно для анализа aerial drone imagery и потоков данных с датчиков 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 демонстрирует мощь Neural Architecture Search и дистилляции, что делает его интересным объектом изучения для исследователей. Однако YOLOv5 остается практической «рабочей лошадкой» благодаря своему балансу производительности, низким требованиям к памяти и непревзойденной простоте использования.

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

Комментарии