Link to this sectionDAMO-YOLO против YOLOv7#
Стремительное развитие компьютерного зрения привело к созданию высокоэффективных моделей обнаружения объектов, спроектированных для поиска баланса между точностью и вычислительными затратами. Две примечательные модели, представленные в 2022 году, — это DAMO-YOLO и YOLOv7. Хотя обе они нацелены на расширение границ задач компьютерного зрения в реальном времени, они достигают своих результатов с помощью принципиально разных архитектурных парадигм и методологий обучения.
Это всестороннее техническое сравнение исследует различные подходы обеих моделей, анализируя их архитектуры, потенциал развертывания и метрики производительности, чтобы помочь инженерам машинного обучения выбрать правильный инструмент для их конкретных приложений компьютерного зрения.
Link to this sectionПроисхождение моделей и метаданные#
Прежде чем погружаться в глубокий технический анализ, необходимо составить контекст происхождения этих двух моделей компьютерного зрения.
Link to this sectionDAMO-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
Link to this sectionYOLOv7#
Выпущенная как state-of-the-art решение в середине 2022 года, модель YOLOv7 продвинула инференс в реальном времени еще дальше за счет внедрения обучаемых «наборов бесплатных улучшений» (bag-of-freebies) без увеличения стоимости развертывания.
- Авторы: Chien-Yao Wang, Alexey Bochkovskiy и Hong-Yuan Mark Liao
- Организация: Институт информационных наук, Academia Sinica, Тайвань
- Дата: 6 июля 2022 г.
- Arxiv: 2207.02696
- Документация: Документация YOLOv7
YOLOv7 официально поддерживается в экосистеме Ultralytics, что позволяет выполнять бесшовное обучение, валидацию и экспорт с помощью единого API.
Link to this sectionАрхитектурные инновации#
Link to this sectionDAMO-YOLO: NAS и дистилляция#
DAMO-YOLO включает в себя несколько передовых методов, направленных на максимальную эффективность:
- Бэкенды NAS: Использует поиск архитектуры нейронных сетей (NAS) для автоматического проектирования оптимальных бэкендов (MAE-NAS), адаптированных для сред с критической задержкой.
- Эффективная RepGFPN: Модифицированная обобщенная пирамида признаков (Generalized Feature Pyramid Network), которая значительно повышает эффективность объединения признаков по нескольким масштабам.
- ZeroHead и AlignedOTA: Включает легкую голову детектирования и оптимизированную стратегию назначения меток (AlignedOTA) для снижения вычислительных накладных расходов.
- Улучшение дистилляции: Активно использует дистилляцию знаний в процессе обучения для повышения производительности меньших вариантов модели без увеличения количества их параметров.
Link to this sectionYOLOv7: E-ELAN и наборы бесплатных улучшений (Bag-of-Freebies)#
YOLOv7 применила более структурный инженерный подход, сосредоточившись на оптимизации градиентного пути и надежных стратегиях обучения.
- Архитектура E-ELAN: Расширенная сеть агрегации эффективных слоев (Extended Efficient Layer Aggregation Network) позволяет модели изучать более разнообразные признаки путем контроля кратчайших и длиннейших градиентных путей, обеспечивая эффективную сходимость обучения.
- Масштабирование модели: Представляет метод составного масштабирования, адаптированный для моделей на основе конкатенации, одновременно масштабируя глубину и ширину для структурного согласования.
- Обучаемый Bag-of-Freebies: Использует такие методы, как перепараметризованные свертки (RepConv) без identity-связей и динамические стратегии назначения меток, которые повышают точность во время обучения, не влияя на скорость инференса.
Link to this sectionАнализ производительности#
При оценке средней точности (mAP), скорости и эффективности обе модели демонстрируют впечатляющие метрики, хотя и нацелены на несколько разные сегменты. YOLOv7 в значительной степени ориентирована на развертывание на GPU с высокой точностью, в то время как структуры DAMO-YOLO, полученные с помощью NAS, нацелены на агрессивное развертывание на CPU и Edge-устройствах с низкой задержкой.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Как видно из метрик, хотя DAMO-YOLO предоставляет чрезвычайно легкие варианты (например, tiny-модель всего с 8,5 млн параметров), YOLOv7 достигает более высокого общего пика точности, при этом модель YOLOv7x достигает впечатляющих 53,1 mAP на наборе данных COCO.
Link to this sectionПреимущества экосистемы Ultralytics#
Хотя теоретическая архитектура важна, практичность модели диктуется ее экосистемой. Модели, поддерживаемые Ultralytics, такие как YOLOv7, выигрывают от хорошо поддерживаемой экосистемы и непревзойденной простоты использования.
- Баланс производительности: Модели Ultralytics последовательно находят оптимальный компромисс между скоростью инференса и точностью обнаружения, что делает их идеальными как для граничных (edge) устройств, так и для облачного развертывания моделей.
- Требования к памяти: В отличие от более тяжелых моделей на базе Transformer, модели Ultralytics YOLO поддерживают низкие требования к памяти CUDA во время обучения. Это позволяет использовать большие размеры пакетов (batch sizes), упрощая процесс обучения даже на потребительском оборудовании.
- Универсальность: Фреймворк Ultralytics выходит за рамки обнаружения объектов, охватывая такие задачи, как сегментация экземпляров и оценка позы, предоставляя разработчикам полный набор инструментов компьютерного зрения.
Пакет Ultralytics позволяет тебе плавно перейти от наборов данных к полностью обученной модели всего за несколько минут, используя высокооптимизированные загрузчики данных и предобученные веса.
Link to this sectionПример кода: Обучение YOLOv7 с помощью Ultralytics#
Интеграция YOLOv7 в твой конвейер компьютерного зрения невероятно проста с использованием Python API от Ultralytics.
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)Link to this sectionНовый стандарт: представляем YOLO26#
Хотя YOLOv7 и DAMO-YOLO представляли собой значительные прорывы в 2022 году, область Vision AI быстро развивается. Для команд, начинающих новые проекты сегодня, рекомендуется использовать передовую модель Ultralytics YOLO26, выпущенную в январе 2026 года.
YOLO26 обеспечивает качественный скачок в производительности и удобстве использования, включая современные инновации:
- Сквозной дизайн без NMS: YOLO26 является нативно end-to-end моделью. Исключая постпроцессинг с использованием Non-Maximum Suppression (NMS), она обеспечивает более быструю и простую логику развертывания — парадигмальный сдвиг, впервые предложенный YOLOv10.
- Оптимизатор MuSGD: Вдохновленный инновациями в больших языковых моделях, такими как Kimi K2 от Moonshot AI, YOLO26 использует гибрид SGD и Muon. Этот оптимизатор обеспечивает высокую стабильность динамики обучения и значительно более быструю сходимость.
- До 43% быстрее инференс на CPU: Благодаря целевому удалению Distribution Focal Loss (DFL) и глубоким структурным улучшениям, YOLO26 сильно оптимизирована для маломощных edge-вычислений, превосходя предыдущие поколения на оборудовании без GPU.
- ProgLoss + STAL: Включает в себя передовые новые функции потерь, которые целенаправленно улучшают распознавание мелких объектов — важную возможность для приложений в аэрофотосъемке, робототехнике и мониторинге безопасности.
- Улучшения для конкретных задач: Помимо стандартного обнаружения, YOLO26 содержит специализированные улучшения для разнообразных задач, включая многомасштабное прототипирование для сегментации, RLE для оценки позы и специфические угловые потери для ориентированных ограничивающих рамок (OBB).
Link to this sectionИдеальные варианты использования#
Выбор правильной архитектуры полностью зависит от твоей целевой среды развертывания и ограничений проекта.
Когда выбирать DAMO-YOLO:
- Ты работаешь в сильно ограниченных по ресурсам граничных (edge) средах, где количество параметров должно быть крайне низким (например, микроконтроллеры).
- Ты используешь автоматизированные конвейеры машинного обучения, специально интегрированные с проприетарными облачными сервисами Alibaba.
Когда выбирать YOLOv7:
- У тебя есть унаследованные конвейеры на GPU, уже оптимизированные для инференса на основе якорей (anchor-based) с высокой точностью.
- Ты работаешь в средах, где точность в реальном времени имеет первостепенное значение, таких как высокоскоростные автономные транспортные средства или продвинутая робототехника.
Когда выбирать YOLO26 (рекомендуется):
- Ты создаешь новое приложение компьютерного зрения с нуля и тебе требуется абсолютный state-of-the-art как по точности, так и по скорости инференса на CPU/edge-устройствах.
- Тебе требуется быстрое и бесшовное развертывание (например, экспорт в CoreML или TensorRT) без необходимости работать с ограничениями оператора NMS.
- Ты хочешь использовать все возможности платформы Ultralytics для облачного обучения, управления наборами данных и автоматизированного развертывания.
Используя надежную экосистему моделей Ultralytics, разработчики могут существенно сократить время проектирования, обеспечивая при этом первоклассную прогностическую эффективность для своих реальных приложений.