DAMO-YOLO против YOLOv8: техническое сравнение
Выбор подходящей модели обнаружения объектов — это критически важное решение, которое уравновешивает точность, скорость и простоту реализации. На этой странице представлено подробное техническое сравнение DAMO-YOLO, высокопроизводительной модели от Alibaba Group, и Ultralytics YOLOv8, современной модели, известной своей универсальностью и надежной экосистемой. Мы углубимся в их архитектурные различия, показатели производительности и идеальные варианты использования, чтобы помочь вам выбрать лучшую модель для вашего проекта в области компьютерного зрения.
DAMO-YOLO: Быстрый и точный метод от Alibaba
Авторы: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang и Xiuyu Sun
Организация: Alibaba Group
Дата: 2022-11-23
Arxiv: https://arxiv.org/abs/2211.15444v2
GitHub: https://github.com/tinyvision/DAMO-YOLO
Документация: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Архитектура и ключевые особенности
DAMO-YOLO — это мощный детектор объектов, разработанный в результате исследований Alibaba, представляющий несколько инновационных методов для расширения границ компромисса между скоростью и точностью. Его архитектура является результатом комплексного подхода, который сочетает в себе поиск нейронной архитектуры (NAS) с передовыми принципами проектирования.
- NAS-Powered Backbone: DAMO-YOLO использует backbone, созданный с помощью NAS, что позволяет обнаруживать высокоэффективные структуры извлечения признаков, разработанные специально для обнаружения объектов.
- Эффективный RepGFPN Neck: Он представляет новую структуру neck, Generalized Feature Pyramid Network (GFPN), которая улучшена с помощью методов повторной параметризации для улучшения слияния признаков с минимальными вычислительными затратами.
- ZeroHead: Модель использует облегченную anchor-free структуру обнаружения под названием ZeroHead, которая снижает вычислительную сложность при сохранении высокой производительности.
- Назначение меток AlignedOTA: Используется усовершенствованная стратегия назначения меток под названием AlignedOTA, которая повышает стабильность обучения и точность модели за счет лучшего согласования положительных выборок с соответствующими фактическими объектами.
- Дистилляция знаний: Более крупные модели в семействе DAMO-YOLO улучшены с помощью дистилляции знаний для дальнейшего повышения производительности.
Сильные стороны
- Высокая точность и скорость на GPU: DAMO-YOLO высоко оптимизирован для оборудования GPU, обеспечивая отличный баланс между mAP и скоростью инференса, что делает его сильным претендентом для приложений, где производительность GPU имеет решающее значение.
- Инновационная архитектура: Использование NAS и пользовательских компонентов, таких как RepGFPN и ZeroHead, демонстрирует передовые исследования и обеспечивает высокоэффективную архитектуру.
Слабые стороны
- Ограниченная экосистема: По сравнению с Ultralytics YOLO, экосистема вокруг DAMO-YOLO менее развита. Ей не хватает обширной документации, учебных пособий и интегрированных инструментов, таких как Ultralytics HUB, которые упрощают сквозной рабочий процесс.
- Специфичность задачи: DAMO-YOLO в основном разработан для обнаружения объектов. Он не предлагает встроенной поддержки других задач компьютерного зрения, таких как сегментация, оценка позы или классификация, в рамках одной и той же структуры.
- Сообщество и поддержка: Будучи ценным вкладом с открытым исходным кодом, модель не имеет такого же уровня активной поддержки сообщества или частых обновлений, как серия Ultralytics YOLO.
Ultralytics YOLOv8: Универсальность и производительность
Авторы: Glenn Jocher, Ayush Chaurasia и Jing Qiu
Организация: Ultralytics
Дата: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
Документация: https://docs.ultralytics.com/models/yolov8/
Архитектура и ключевые особенности
Ultralytics YOLOv8 — это современная модель, основанная на успехе предыдущих версий YOLO. Она разработана, чтобы быть быстрой, точной и невероятно простой в использовании, а также предоставляет унифицированный фреймворк для различных задач компьютерного зрения.
- Улучшенная архитектура CSPDarknet: YOLOv8 использует усовершенствованную архитектуру CSPDarknet, оптимизируя процесс извлечения признаков для повышения производительности.
- C2f Neck: Он включает модуль C2f в свою neck-часть, который заменяет модуль C3 из YOLOv5, обеспечивая более эффективное объединение признаков.
- Decoupled Head без Anchor: Как и DAMO-YOLO, YOLOv8 не использует anchor, что упрощает процесс сопоставления во время обучения. Его decoupled head разделяет задачи классификации и регрессии, повышая общую точность модели.
Сильные стороны
- Простота использования: YOLOv8 славится своим удобным дизайном. Благодаря оптимизированному Python API и CLI разработчики могут обучать, проверять и развертывать модели всего несколькими строками кода.
- Хорошо поддерживаемая экосистема: Поддерживается всесторонней экосистемой Ultralytics, которая включает обширную документацию, активную разработку, сильную поддержку сообщества и простую интеграцию с такими инструментами, как Ultralytics HUB, для обучения без кода и MLOps.
- Баланс производительности: YOLOv8 предлагает исключительный компромисс между скоростью и точностью на различном оборудовании, от периферийных устройств до мощных облачных GPU.
- Универсальность: Ключевым преимуществом YOLOv8 является его встроенная поддержка множества задач: обнаружение объектов, сегментация экземпляров, классификация изображений, оценка позы и обнаружение ориентированных объектов (OBB). Это делает его универсальным решением для сложных проектов машинного зрения.
- Эффективность обучения и памяти: Модели YOLOv8 разработаны для эффективного обучения, часто требуя меньше памяти CUDA, чем альтернативы. Наличие предварительно обученных весов на наборах данных, таких как COCO, ускоряет разработку пользовательских моделей.
Слабые стороны
- Потребности в ресурсах для больших моделей: Самая большая модель, YOLOv8x, обеспечивает наивысшую точность, но требует значительных вычислительных ресурсов, что является обычным компромиссом для самых производительных моделей.
Анализ производительности: скорость и точность
Прямое сравнение на наборе данных COCO выявляет конкурентную среду между DAMO-YOLO и YOLOv8. В следующей таблице приведены сводные данные об их показателях производительности.
Модель | размер (пиксели) |
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 |
YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
На основании таблицы можно сделать несколько выводов:
- Точность: YOLOv8x достигает самого высокого mAP в 53,9%, превосходя все варианты DAMO-YOLO. В среднем размере YOLOv8m (50,2 mAP) более точен, чем DAMO-YOLOm (49,2 mAP). Однако DAMO-YOLOs (46,0 mAP) немного опережает YOLOv8s (44,9 mAP).
- Скорость GPU: Обе модели демонстрируют чрезвычайно высокую скорость на GPU. YOLOv8n является самой быстрой в целом, показывая результат 1,47 мс. DAMO-YOLOt демонстрирует впечатляющую скорость в 2,32 мс, что быстрее, чем YOLOv8s.
- Скорость CPU: YOLOv8 предоставляет четкие бенчмарки для инференса на CPU, что является критическим фактором для многих приложений периферийного AI. Отсутствие официальных бенчмарков CPU для DAMO-YOLO затрудняет оценку для развертываний, связанных с CPU, тогда как YOLOv8 является проверенным исполнителем в этих сценариях.
- Эффективность: Модели YOLOv8, как правило, более эффективны по параметрам. Например, YOLOv8s имеет меньше параметров (11.2M против 16.3M) и FLOPs (28.6B против 37.8B), чем DAMO-YOLOs, обеспечивая при этом сопоставимую точность.
Методологии обучения и удобство использования
В процессе обучения DAMO-YOLO используются передовые методы, такие как AlignedOTA и knowledge distillation, которые позволяют достичь высокой производительности, но могут потребовать более глубоких знаний для настройки и отладки.
В отличие от них, фреймворк Ultralytics отдает приоритет удобству работы пользователя. Обучение модели YOLOv8 не вызывает затруднений, будь то с использованием CLI или Python SDK. Фреймворк абстрагирует большую часть сложности, позволяя пользователям сосредоточиться на своих данных и целях приложения. Эффективный процесс обучения в сочетании с легкодоступными предварительно обученными весами и обширными руководствами по таким темам, как настройка гиперпараметров, делает YOLOv8 доступным как для новичков, так и для экспертов.
Заключение: какую модель вам следует выбрать?
И DAMO-YOLO, и YOLOv8 - исключительные модели обнаружения объектов, которые расширяют границы современного уровня.
DAMO-YOLO — отличный выбор для исследователей и разработчиков, которые отдают приоритет необработанной производительности GPU и которым удобно работать в рамках, ориентированных на исследования. Его инновационная архитектура обеспечивает впечатляющие результаты, особенно в сценариях, где ресурсы GPU в изобилии.
Однако, для подавляющего большинства разработчиков и приложений Ultralytics YOLOv8 выделяется как превосходный выбор. Его ключевые преимущества делают его более практичным и мощным инструментом для создания решений компьютерного зрения для реального мира:
- Беспрецедентная универсальность: Поддержка обнаружения, сегментации, определения позы, классификации и отслеживания в одном фреймворке значительно экономит время разработки.
- Превосходная простота использования: Простой, интуитивно понятный API и обширная документация снижают порог входа и ускоряют сроки реализации проекта.
- Надежная экосистема: Непрерывные обновления, сильная поддержка сообщества и такие инструменты, как Ultralytics HUB, обеспечивают комплексную среду для всего жизненного цикла ИИ.
- Balanced Performance: YOLOv8 обеспечивает выдающееся сочетание скорости и точности как на CPU, так и на GPU, обеспечивая гибкость для различных целей развертывания.
В конечном счете, хотя DAMO-YOLO является свидетельством передовых исследований, YOLOv8 предлагает более полный, удобный и универсальный пакет, что делает его рекомендуемым выбором для создания надежных и масштабируемых решений на основе ИИ.
Изучите другие сравнения моделей
Если вам интересно, как эти модели соотносятся с другими ведущими архитектурами, ознакомьтесь с этими дополнительными сравнениями:
- YOLOv9 vs. DAMO-YOLO
- YOLO11 vs. DAMO-YOLO
- RT-DETR против DAMO-YOLO
- YOLOv8 vs. YOLOv9
- YOLOv8 vs. RT-DETR
- YOLOv8 vs. YOLOv7