DAMO-YOLO и YOLOX#
Сфера компьютерного зрения реального времени постоянно развивается. Важными этапами этого развития стали DAMO-YOLO и YOLOX: каждая модель предлагает уникальные решения для высокоскоростной и точной детекции объектов. Обе модели внесли значительный вклад в сообщество открытого исходного кода, однако инженерам машинного обучения важно понимать различия их архитектур, методик обучения и оптимальных сценариев развёртывания.
В этом подробном руководстве рассматриваются технические особенности обеих моделей и объясняется, почему современные альтернативы, например платформа Ultralytics YOLO26, обеспечивают более высокую производительность и удобство использования в современных промышленных средах.
Обзор моделей#
Подробнее о DAMO-YOLO#
DAMO-YOLO, разработанная командой исследователей Alibaba Group, была представлена как высокоэффективный метод детекции объектов, использующий автоматизированный поиск архитектуры.
- Авторы: Сяньчжэ Сюй, Ици Цзян, Вэйхуа Чэнь, Илуне Хуан, Юань Чжан и Сюйюй Сунь
- Организация: Alibaba Group
- Дата: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- Документация: Документация DAMO-YOLO
Подробно о YOLOX#
YOLOX, созданная исследователями Megvii, должна была сблизить исследовательское и промышленное сообщества. Для этого серия YOLO перешла на архитектуру без якорей, что значительно упростило модель и обеспечило более высокую на тот момент производительность.
- Авторы: Чжэн Гэ, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация: Megvii
- Дата: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- Документация: Документация YOLOX
Анализ архитектур#
Архитектура DAMO-YOLO#
DAMO-YOLO активно использует поиск нейросетевой архитектуры (NAS). К основным компонентам относятся:
- Магистральные сети MAE-NAS: Для поиска магистральных сетей, оптимально сочетающих скорость инференса и точность, используется поиск с направлением по максимальной энтропии.
- Эффективная RepGFPN: Массивная шейка для объединения признаков, позволяющая модели сохранять высокую точность при разных масштабах объектов.
- ZeroHead: Упрощённая облегчённая голова детекции, снижающая вычислительные затраты в конечных слоях предсказания.
Архитектура YOLOX#
YOLOX использует другой подход, делая упор на простоту структуры и архитектуру без якорей:
- Механизм без якорей: YOLOX напрямую предсказывает координаты ограничивающих рамок без заранее заданных якорей, что сокращает число параметров проектирования и объём необходимых эвристических настроек.
- Разделённая голова: Задачи классификации и регрессии распределены по разным ветвям признаков, что ускоряет сходимость и повышает общую точность.
- Назначение меток SimOTA: Продвинутая стратегия назначения меток, динамически распределяющая положительные примеры по эталонным объектам и повышающая эффективность обучения.
DAMO-YOLO использует машинный поиск NAS для подбора оптимальных архитектур в условиях жёстких ограничений, а YOLOX упрощает конвейер детекции объектов за счёт изящных решений, разработанных вручную, например голов без якорей.
Сравнение производительности#
Для оценки этих моделей нужно учитывать среднюю точность (mAP), скорость инференса и число параметров. Ниже приведена подробная таблица сравнения стандартных и облегчённых вариантов обеих архитектур.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Хотя YOLOXx достигает наивысшей абсолютной mAP — 51,1, DAMO-YOLOl показывает весьма конкурентный результат в 50,8 mAP при менее чем половине числа параметров (42,1M против 99,1M) и значительно более высокой скорости выполнения в TensorRT.
Методики обучения#
Обучение DAMO-YOLO#
Во время обучения DAMO-YOLO использует сложную дистилляцию. Часто сначала обучают крупную модель-«учителя», а затем переносят её знания в модели-«ученики» меньшего размера. Также применяется AlignedOTA для динамического назначения меток. Этот многоэтапный процесс весьма эффективен, но значительно увеличивает необходимое время вычислений на GPU и расход памяти.
Обучение YOLOX#
YOLOX использует мощные методы аугментации данных, такие как MixUp и Mosaic. Однако авторы обнаружили, что отключение этих интенсивных аугментаций на последних 15 эпохах помогает модели сократить разрыв между обучающими данными и реальностью, значительно повышая итоговые показатели точности.
Оптимальные сценарии применения#
- DAMO-YOLO: Лучше всего подходит для ответственных промышленных развёртываний, где можно использовать серверные конвейеры дистилляции, а целевое оборудование, например отдельные GPU NVIDIA, получает прямую выгоду от архитектуры NAS с массивной шейкой.
- YOLOX: Отличный выбор для разработчиков, которым нужен подход без якорей в чистом виде. Благодаря крайне лёгкому
YOLOXnanoмодель подходит для устаревших устройств Android, периферийных вычислений и сильно ограниченных датчиков IoT, где число параметров становится главным ограничением.
Преимущества Ultralytics: знакомство с YOLO26#
Хотя DAMO-YOLO и YOLOX стали важными достижениями, современным разработчикам нужны более комплексные, универсальные и простые в использовании решения. Именно здесь особенно заметны преимущества платформы Ultralytics и недавно выпущенной Ultralytics YOLO26.
Выпущенная в январе 2026 года, YOLO26 — рекомендуемая модель для любых задач компьютерного зрения. В ней реализован ряд прорывных решений, превосходящих более старые архитектуры:
- Сквозная архитектура без NMS: Опциональная голова один-к-одному YOLO26 (
nms=False) пропускает постобработку с подавлением немаксимумов (NMS). Это значительно упрощает и ускоряет развёртывание, устраняя задержки, характерные для традиционных голов детекции. - До 43% быстрее инференс на CPU: Благодаря целенаправленному удалению Distribution Focal Loss (DFL) и оптимизации слоёв YOLO26 обеспечивает непревзойдённую скорость на CPU и периферийном оборудовании.
- Оптимизатор MuSGD: Вдохновлённая методами обучения больших языковых моделей (LLM), YOLO26 представляет оптимизатор MuSGD — гибрид SGD и Muon. Он обеспечивает исключительно стабильное обучение и значительно ускоряет сходимость по сравнению с устаревшими конфигурациями YOLOX.
- ProgLoss + STAL: Эти продвинутые функции потерь заметно улучшают распознавание мелких объектов, делая YOLO26 намного эффективнее для анализа видео с дронов и робототехники.
- Универсальность: В отличие от DAMO-YOLO, предназначенной только для детекции объектов, YOLO26 без проблем выполняет сегментацию экземпляров, оценку позы, классификацию и детекцию ориентированных ограничивающих рамок (OBB) в рамках одной хорошо поддерживаемой экосистемы.
Простота использования с Ultralytics#
API Ultralytics для Python упрощает работу разработчиков. Для обучения современной модели YOLO26 требуется намного меньше шаблонного кода, а сложные конвейеры дистилляции DAMO-YOLO не нужны. Кроме того, при обучении моделям Ultralytics требуется исключительно мало памяти CUDA по сравнению с ресурсоёмкими моделями на основе трансформеров.
from ultralytics import YOLO
# Загрузи новейшую нано-модель Ultralytics YOLO26
model = YOLO("yolo26n.pt")
# Обучи модель на своём наборе данных одной строкой кода
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Выполни быстрый инференс изображения без NMS
results = model("https://ultralytics.com/images/bus.jpg", nms=False)
# Экспортируй в ONNX или TensorRT без проблем
model.export(format="onnx")С помощью платформы Ultralytics ты можешь автоматически размечать данные, обучать модели и развёртывать их на периферийных устройствах. Платформа также управляет версиями данных и автоматически выделяет облачные GPU.
Заключение#
Выбор между DAMO-YOLO и YOLOX зависит от конкретных ограничений: благодаря NAS DAMO-YOLO обеспечивает исключительное соотношение скорости и точности на отдельных GPU, а YOLOX предлагает простую архитектуру без якорей, подходящую для компактных периферийных сценариев.
Однако командам, которым нужно современное, перспективное решение с активным сообществом, однозначно стоит выбрать архитектуру Ultralytics YOLO26. Опциональный инференс без NMS, быстрый инференс на CPU и унифицированный API для детекции, сегментации и оценки позы делают модель непревзойдённым решением для плавного перехода от исследований к надёжным промышленным системам.
Разработчикам, которые хотят изучить другие современные архитектуры, также рекомендуем Ultralytics YOLO11 и модели на основе трансформеров, например RT-DETR, представленные в подробной документации Ultralytics.