DAMO-YOLO vs. EfficientDet: техническое сравнение
В быстро развивающейся области компьютерного зрения выбор правильной архитектуры обнаружения объектов имеет решающее значение для успеха приложения. В этом комплексном анализе противопоставляются YOLO, высокопроизводительная модель от Alibaba, и EfficientDet, масштабируемая и эффективная архитектура от Google. Обе модели внесли значительные инновации в эту область, решив извечную проблему компромисса между скоростью, точностью и вычислительными затратами.
Обзоры моделей
Прежде чем перейти к рассмотрению показателей производительности, необходимо понять происхождение и архитектурную философию каждой модели.
DAMO-YOLO
Разработанная компанией Alibaba Group система YOLO (Distillation-Enhanced Neural Architecture Search-based YOLO) нацелена на максимальное увеличение скорости вычислений без ущерба для точности. В ней реализованы такие технологии, как нейронная архитектура поиска (NAS) для опорных сетей, эффективная сеть RepGFPN (Reparameterized Generalized Feature Pyramid Network) и легкая головка обнаружения, известная как ZeroHead.
YOLO Детали:
- Авторы: Сяньчжэ Сюй, Ици Цзян, Вэйхуа Чэнь, Илунь Хуан, Юань Чжан и Сююй Сунь
- Организация:Alibaba Group
- Дата: 23.11.2022
- Arxiv:YOLO: отчет о разработке системы обнаружения объектов в реальном времени
- GitHub:YOLO
EfficientDet
EfficientDet, созданный командой Google Brain, произвел революцию в обнаружении объектов, предложив метод комбинированного масштабирования. Этот подход равномерно масштабирует разрешение, глубину и ширину опорной сети, сети признаков и сети предсказаний. В нем используется BiFPN (Bi-directional Feature Pyramid Network), которая позволяет легко и быстро объединять признаки.
EfficientDet Details:
- Авторы: Мингксинг Тан, Руоминг Панг и Куок В. Ле
- Организация:Google
- Дата: 20.11.2019
- Arxiv:EfficientDet: Масштабируемое и эффективное обнаружение объектов
- GitHub:google
Узнайте больше об EfficientDet
Анализ производительности: скорость, точность и эффективность
На следующих графике и в таблице представлено количественное сравнение моделей EfficientDet и YOLO на наборе данныхCOCO . Эти бенчмарки подчеркивают различные цели оптимизации каждой архитектуры.
| Модель | размер (пиксели) | 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 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
Основные выводы
Из полученных данных можно сделать вывод, что у каждого семейства моделей есть свои сильные стороны:
- Задержка GPU : YOLO доминирует по скорости вычислений на GPU . Например,
DAMO-YOLOmдостигает Средняя точностьmAP) 49,2 при задержке всего 5,09 мс на GPU T4. Для сравнения,EfficientDet-d4при аналогичном mAP 49,7, значительно медленнее - 33,55 мс. - Эффективность параметров: EfficientDet очень легка в плане параметров и Операции с плавающей запятой (FLOPs).
EfficientDet-d0В ней используется всего 3,9 М параметров, что делает ее очень эффективной для хранения данных, хотя это не всегда приводит к более быстрому выводу на современных графических процессорах по сравнению с оптимизированными по архитектуре моделями, такими как YOLO. - ПроизводительностьCPU : EfficientDet обеспечивает надежные бенчмарки для CPU , что позволяет говорить о том, что он остается жизнеспособным вариантом для устаревшего оборудования, в котором недоступно GPU .
Архитектурная заметка
Преимущество YOLO в скорости обусловлено оптимизацией аппаратной задержки с использованием нейронной архитектуры (NAS), в то время как EfficientDet оптимизирует теоретические FLOP, которые не всегда линейно коррелируют с реальной задержкой.
Архитектурное Глубокое Погружение
EfficientDet: Сила сложного масштабирования
EfficientDet построена на базе EfficientNet, использующей мобильные инвертированные свертки (MBConv). Ее отличительной особенностью является BiFPN- взвешенная двунаправленная сеть пирамид признаков. В отличие от традиционных FPN, которые суммируют признаки только сверху вниз, BiFPN позволяет информации течь как сверху вниз, так и снизу вверх, рассматривая каждый слой признаков с обучаемыми весами. Это позволяет сети понимать важность различных входных признаков.
Модель масштабируется с помощью составного коэффициента phi, который равномерно увеличивает ширину, глубину и разрешение сети, поэтому большие модели (такие как d7) остаются сбалансированными по точности и эффективности.
YOLO: инновации, ориентированные на скорость
YOLO использует другой подход, фокусируясь на задержках в реальном времени. Он использует MAE-NAS (метод автоматизации поиска архитектуры) для поиска оптимальной структуры магистрали при определенных ограничениях на время ожидания.
Ключевые инновации включают:
- RepGFPN: Улучшение стандартного GFPN, дополненное репараметризацией для оптимизации путей слияния признаков с целью повышения скорости.
- ZeroHead: упрощенная головка обнаружения, которая снижает вычислительную нагрузку, обычно связанную с последними слоями предсказания.
- AlignedOTA: стратегия присвоения меток, которая решает проблему несоответствия между задачами классификации и регрессии во время обучения.
Случаи использования и приложения
Различия в архитектуре определяют, в чем каждая модель превосходит другие в реальных условиях.
- EfficientDet идеально подходит для сред с ограниченным объемом памяти или приложений, полагающихся на выводы CPU , где минимизация количества FLOP имеет решающее значение. Он часто используется в мобильных приложениях и встраиваемых системах, где время работы от батареи (коррелирующее с FLOPs) является первоочередной задачей.
- YOLO отлично подходит для промышленной автоматизации, автономного вождения и охранного видеонаблюдения, где требуются выводы в реальном времени на GPU. Низкая задержка позволяет обрабатывать видеопотоки с высокой частотой кадров без выпадения кадров.
Преимущество Ultralytics
В то время как YOLO и EfficientDet являются способными моделями, Ultralytics Ultralytics экосистема Ultralytics предлагает более комплексное решение для разработки современного ИИ. Такие модели, как ультрасовременная YOLO11 и универсальная YOLOv8 обеспечивают значительные преимущества в удобстве использования, производительности и наборе функций.
Почему стоит выбрать Ultralytics?
- Баланс производительности: Модели Ultralytics разработаны таким образом, чтобы обеспечить оптимальный компромисс между скоростью и точностью. Например, модель YOLO11 обеспечивает превосходную mAP по сравнению с предыдущими поколениями, сохраняя при этом исключительную скорость вычислений как на CPU, так и на GPU.
Простота использования: Используя философию "батарейки в комплекте", Ultralytics предоставляет простой API на Python и мощный интерфейс командной строки (CLI). Разработчики могут пройти путь от установки до обучения за считанные минуты.
from ultralytics import YOLO # Load a pre-trained YOLO11 model model = YOLO("yolo11n.pt") # Run inference on an image results = model("path/to/image.jpg")Хорошо поддерживаемая экосистема: В отличие от многих исследовательских моделей, которые забрасываются после публикации, Ultralytics поддерживает активный репозиторий с частыми обновлениями, исправлениями ошибок и поддержкой сообщества через проблемы и обсуждения на GitHub.
- Универсальность: Модели Ultralytics не ограничиваются ограничивающими рамками. Они поддерживают сегментацию объектов, оценку позы, классификацию изображений и ориентированные ограничительные рамки (OBB)- все в рамках единой унифицированной структуры.
- Эффективность памяти: Модели Ultralytics YOLO разработаны таким образом, чтобы не занимать много памяти во время обучения. В отличие от моделей на основе трансформаторов или старых архитектур, которые часто требуют значительного объема памяти CUDA , это делает модели Ultralytics доступными на оборудовании потребительского класса.
- Эффективность обучения: Фреймворк поддерживает такие функции, как автоматическая смешанная точность (AMP), обучение на нескольких GPU и кэширование, обеспечивая быстрое и экономичное обучение пользовательских наборов данных.
Заключение
И YOLO, и EfficientDet представляют собой значительные вехи в истории компьютерного зрения. EfficientDet продемонстрировал возможности принципиального масштабирования и эффективного объединения признаков, а YOLO раздвинул границы поиска архитектуры с учетом задержки.
Однако разработчикам требуется готовое к производству решение, сочетающее высокую производительность с исключительными возможностями для разработчиков, Ultralytics YOLO11 является рекомендуемым выбором. Интеграция в надежную экосистему, поддержка множества задач компьютерного зрения и постоянное совершенствование делают его наиболее практичным инструментом для преобразования визуальных данных в полезные сведения.
Изучите другие сравнения моделей
Чтобы еще больше облегчить процесс выбора модели, изучите эти связанные с ней сравнения в документации Ultralytics :
- YOLOv8 vs. DAMO-YOLO
- YOLO11 vs. DAMO-YOLO
- RT-DETR против EfficientDet
- YOLOv10 против YOLO
- YOLOv9 против EfficientDet