Ultralytics YOLO27:
Get Started

YOLOv7 и DAMO-YOLO#

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

Предыстория моделей и технические подробности#

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

Сведения о YOLOv7#

Созданная как продолжение семейства YOLO, YOLOv7 представила концепцию обучаемого «набора бесплатных улучшений» (bag-of-freebies), значительно повышающего точность без увеличения затрат на инференс.

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

Подробнее о DAMO-YOLO#

DAMO-YOLO, созданная исследователями Alibaba Group, активно использует поиск нейронной архитектуры (NAS) и продвинутую дистилляцию знаний для построения высокоэффективных моделей под разное оборудование.

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

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

YOLOv7: анализ градиентных путей и репараметризация#

YOLOv7 активно использует расширенные сети эффективной агрегации слоёв (E-ELAN). Авторы разработали E-ELAN, проанализировав градиентные пути сети, чтобы сеть могла непрерывно обучаться без ухудшения исходного градиентного пути. Кроме того, YOLOv7 эффективно применяет репараметризацию модели во время инференса, объединяя слои для сокращения FLOPs и ускорения выполнения. Благодаря этому модель отлично подходит для инференса в реальном времени на современных GPU.

DAMO-YOLO: поиск нейронной архитектуры и RepGFPN#

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

Различия в дистилляции

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

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

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

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

Эффективность обучения и требования к памяти#

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

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

Преимущества Ultralytics#

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

  • Простота использования: пакет Ultralytics Python предлагает унифицированный и простой API. Ты можешь быстро переключаться между архитектурами моделей, запускать циклы обучения или выполнять инференс всего несколькими строками кода.
  • Хорошо поддерживаемая экосистема: Ultralytics часто выпускает обновления, обеспечивая нативную совместимость с новейшими версиями PyTorch и драйверами CUDA. Кроме того, экспорт моделей в такие форматы, как ONNX, TensorRT и OpenVINO, становится проще.
  • Универсальность: в отличие от DAMO-YOLO, предназначенной только для обнаружения объектов, экосистема Ultralytics изначально поддерживает широкий спектр задач. Модели семейства Ultralytics решают задачи стандартного обнаружения объектов с помощью ограничивающих рамок, оценки позы, сегментации экземпляров и ориентированных ограничивающих рамок (OBB).

Пример кода: быстрый старт#

Вот как легко загружать и обучать модели Ultralytics, а также запускать инференс:

from ultralytics import YOLO

# Загрузи предварительно обученную модель YOLO26 (Ultralytics не поддерживает нативные веса YOLOv7)
model = YOLO("yolo26n.pt")

# Обучи модель на наборе данных COCO8 с автоматической настройкой гиперпараметров
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Запустить инференс на изображении
predictions = model("https://ultralytics.com/images/bus.jpg")

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

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

Следующее поколение: YOLO26#

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

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

Оптимальные сценарии применения#

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

  • Академические исследования NAS: если твоя организация активно изучает методы поиска нейронной архитектуры.
  • Крайне жёсткие ограничения по задержке на конкретном оборудовании: если у тебя есть ресурсы для исчерпывающего поиска NAS, чтобы подобрать бэкбон для специализированного ускорителя ИИ.

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

  • Существующие конвейеры на GPU: для команд, которые поддерживают устаревшие производственные конвейеры, глубоко оптимизированные под конкретную архитектуру E-ELAN YOLOv7 на мощном оборудовании NVIDIA.

Зачем переходить на современные модели Ultralytics (YOLO11 / YOLO26)#

Для подавляющего большинства корпоративных приложений — от аналитики розничной торговли и умного производства до здравоохранения — современные модели Ultralytics не имеют равных. Интеграция с платформой Ultralytics обеспечивает полный конвейер машинного обучения: простоту использования, качественную документацию, надёжную поддержку сообщества и универсальность для решения множества задач. Модели вроде YOLO26 обеспечивают оптимальный баланс производительности для будущего компьютерного зрения — будь то учёт запасов на Raspberry Pi или сложная аналитика в облаке.

Комментарии