YOLOv5 против DAMO-YOLO: подробное техническое сравнение
Сфера computer vision реального времени постоянно развивается, а исследователи и инженеры стремятся к идеальному балансу точности, скорости и удобства использования. Две выдающиеся модели, которые определили этот путь, — это Ultralytics YOLOv5 и DAMO-YOLO от Alibaba.
Это руководство содержит глубокий технический анализ их архитектур, показателей производительности и методологий обучения, чтобы помочь тебе выбрать подходящую модель для твоего следующего развертывания.
История создания моделей
Прежде чем погружаться в технические нюансы, важно понять истоки и основные принципы проектирования, лежащие в основе каждой из этих влиятельных моделей компьютерного зрения.
Ultralytics YOLOv5
Разработанная Гленном Джочером (Glenn Jocher) и командой Ultralytics, YOLOv5 стала отраслевым стандартом с момента своего выпуска. Созданная на базе фреймворка PyTorch, она с самого начала уделяла приоритетное внимание оптимизированному опыту разработчика и надежным возможностям развертывания.
- Автор: Гленн Джочер
- Организация: Ultralytics
- Дата: 26.06.2020
- GitHub: https://github.com/ultralytics/yolov5
- Документация: Ultralytics YOLOv5 Documentation
DAMO-YOLO
Созданная исследователями Alibaba Group, DAMO-YOLO делает большой упор на Neural Architecture Search (NAS) и продвинутые методы дистилляции. Она раздвигает теоретические границы производительности для конкретного оборудования, что делает ее отличным выбором для исследований и периферийных сред, требующих экстремальной настройки.
- Авторы: Сяньчжэ Сюй (Xianzhe Xu), Ици Цзян (Yiqi Jiang), Вэйхуа Чэнь (Weihua Chen), Илунь Хуан (Yilun Huang), Юань Чжан (Yuan Zhang) и Сююй Сунь (Xiuyu Sun)
- Организация: Alibaba Group
- Дата: 23.11.2022
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
Архитектурные инновации
Обе модели используют уникальные структурные концепции для достижения производительности в реальном времени, хотя их подходы существенно различаются.
YOLOv5: стабильность и универсальность
YOLOv5 использует бэкбон Modified CSP (Cross Stage Partial) в сочетании с неком PANet (Path Aggregation Network). Эта структура крайне эффективна и минимизирует использование памяти CUDA как при обучении, так и при инференсе.
Одна из важнейших сильных сторон YOLOv5 — это ее универсальность в задачах. Помимо предсказания ограничивающих рамок (bounding boxes), она предлагает специализированные архитектуры для image segmentation и image classification, позволяя разработчикам стандартизировать свои конвейеры компьютерного зрения вокруг единого связного фреймворка.
DAMO-YOLO: автоматизированный поиск архитектуры
Ключевая инновация DAMO-YOLO — это бэкбон MAE-NAS. Используя многоцелевой эволюционный поиск, команда Alibaba обнаружила архитектуры бэкбонов, которые динамически балансируют между точностью детекции и скоростью инференса.
Кроме того, она оснащена неком Efficient RepGFPN для улучшенного слияния признаков, что крайне полезно для работы со сложными вариациями масштаба, часто встречающимися в анализе спутниковых снимков. Ее дизайн ZeroHead упрощает финальные слои предсказания для снижения задержки, хотя такая сложная структурная генерация может сделать архитектуру жесткой и затруднить её модификацию для кастомных приложений.
Архитектуры на базе Transformer часто сталкиваются с высоким потреблением VRAM. И YOLOv5, и DAMO-YOLO используют эффективные сверточные дизайны для минимизации занимаемой памяти, но модели Ultralytics заметно оптимизированы для потребительских GPU, что делает их гораздо более доступными для независимых исследователей и стартапов.
Производительность и метрики
Оценка детекторов объектов в реальном времени требует анализа матрицы mAP (mean Average Precision), скорости инференса и параметров размера модели.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
Хотя DAMO-YOLO достигает весьма конкурентных показателей mAP при определенных количествах параметров, YOLOv5 последовательно демонстрирует исключительную скорость TensorRT и невероятно малое количество параметров для своих nano и small конфигураций. Этот баланс производительности гарантирует, что YOLOv5 эффективно работает в различных сценариях развертывания на периферийных устройствах.
Эффективность обучения и экосистема
Теоретическая точность модели хороша лишь настолько, насколько ее можно применить на практике. Именно здесь модели существенно расходятся.
Сложность дистилляции
DAMO-YOLO сильно полагается на многоэтапную методологию обучения. Она реализует метод дистилляции знаний «учитель-ученик», известный как AlignedOTA. Хотя это позволяет извлечь максимум производительности из модели-ученика, сначала требуется обучить огромную модель-учитель. Это резко увеличивает время вычислений, энергозатраты и требования к оборудованию, создавая узкое место для гибких команд ML.
Преимущество Ultralytics: простота использования
Напротив, экосистема Ultralytics известна во всем мире своими интуитивно понятными API и эффективностью обучения. Благодаря активной разработке и огромному сообществу open-source, разработчики могут без проблем обучать, валидировать и развертывать модели.
from ultralytics import YOLO
# Load a pretrained YOLOv5 model
model = YOLO("yolov5s.pt")
# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export to ONNX format for deployment
model.export(format="onnx")Ultralytics также предоставляет встроенную поддержку отслеживания экспериментов с помощью таких инструментов, как Weights & Biases и Comet ML, что создает беспрепятственный рабочий процесс.
Реальные сценарии использования
- YOLOv5 превосходно подходит для динамичных производственных сред. Простая возможность экспорта делает ее основным выбором для интеллектуальной розничной аналитики, высокоскоростного обнаружения дефектов на производстве и интеграции в мобильные приложения через CoreML.
- DAMO-YOLO отлично подходит для строгого академического бенчмаркинга и сценариев, где доступны огромные вычислительные ресурсы для выполнения длительных циклов дистиллированного обучения, нацеленных на достижение незначительных улучшений mAP для конкретных фиксированных аппаратных целей.
Варианты использования и рекомендации
Выбор между YOLOv5 и DAMO-YOLO зависит от твоих конкретных требований к проекту, ограничений развертывания и предпочтений в экосистеме.
Когда выбирать YOLOv5
YOLOv5 — отличный выбор для:
- Проверенных производственных систем: Существующих развертываний, где ценятся долгая история стабильности YOLOv5, обширная документация и огромная поддержка сообщества.
- Обучения в условиях ограниченных ресурсов: Сред с ограниченными GPU-ресурсами, где эффективный конвейер обучения YOLOv5 и меньшие требования к памяти являются преимуществом.
- Широкой поддержки форматов экспорта: Проектов, требующих развертывания во множестве форматов, включая ONNX, TensorRT, CoreML и TFLite.
Когда выбирать DAMO-YOLO
DAMO-YOLO рекомендуется для:
- Высокопроизводительной видеоаналитики: Обработки видеопотоков с высоким FPS на фиксированной инфраструктуре NVIDIA GPU, где пропускная способность при размере пакета 1 является основным показателем.
- Линий промышленного производства: Сценариев со строгими ограничениями задержки GPU на специализированном оборудовании, таких как контроль качества в реальном времени на сборочных линиях.
- Исследований в области поиска архитектуры нейронных сетей: Изучения влияния автоматизированного поиска архитектуры (MAE-NAS) и эффективных репараметризованных основ на производительность обнаружения.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и опыта разработчика:
- Периферийное развертывание без NMS: Приложениям требуется стабильный вывод с низкой задержкой без сложности постобработки Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного GPU-ускорения, где преимущество YOLO26 в виде до 43% более быстрого вывода на CPU является решающим.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэросъемка с дронов или анализ данных IoT-датчиков, где ProgLoss и STAL значительно повышают точность распознавания крошечных объектов.
Следующая эволюция: YOLO26
Если ты начинаешь новый проект, настоятельно рекомендуется смотреть в будущее. Ultralytics YOLO26 опирается на невероятный фундамент YOLOv5, включая революционные достижения, которые переопределяют состояние дел в области AI-зрения.
Выпущенная под всеобщее признание, YOLO26 является нативно end-to-end моделью. Она отличается дизайном без NMS (End-to-End NMS-Free), что полностью устраняет необходимость в постобработке Non-Maximum Suppression для значительно более быстрого и простого развертывания.
Ключевые инновации в YOLO26 включают:
- Оптимизатор MuSGD: Вдохновленный инновациями в обучении LLM, этот гибрид SGD и Muon обеспечивает высокую стабильность обучения и быструю сходимость.
- До 43% более быстрый инференс на CPU: Значительно оптимизирована для граничных вычислений, что делает ее идеальной для IoT-устройств, работающих без выделенных GPU.
- ProgLoss + STAL: Продвинутые функции потерь, которые радикально улучшают распознавание мелких объектов, что критически важно для аэросъемки с дронов и робототехники.
- Улучшения для конкретных задач: От специализированной потери угла для Oriented Bounding Boxes (OBB) до оценки остаточного логарифмического правдоподобия (RLE) для точного определения поз (Pose estimation), YOLO26 легко справляется со сложными задачами.
Заключение
И YOLOv5, и DAMO-YOLO заняли свое место в истории обнаружения объектов. DAMO-YOLO остается интересным объектом для изучения Neural Architecture Search и дистилляции. Однако для организаций, отдающих приоритет хорошо поддерживаемой экосистеме, простоте использования и быстрому пути к продакшну, модели Ultralytics остаются непревзойденными.
Мы настоятельно рекомендуем использовать платформу Ultralytics для аннотирования, обучения и развертывания моделей следующего поколения, таких как YOLO26, чтобы убедиться, что твой конвейер компьютерного зрения надежен, быстр и невероятно точен.