YOLOv8 vs. EfficientDet: техническое сравнение
Выбор подходящей модели обнаружения объектов предполагает компромисс между точностью, скоростью и вычислительными затратами. На этой странице представлено подробное техническое сравнение двух влиятельных архитектур: Ultralytics YOLOv8, современной модели, известной своей скоростью и универсальностью, и EfficientDet, семейства моделей от Google, разработанных для исключительной эффективности параметров. Хотя обе модели являются мощными, они основаны на разных принципах проектирования, что делает их подходящими для разных приложений.
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, модуль C2f для расширенного объединения признаков и отделенная от якорей голова. Такая конструкция не только повышает производительность, но и обеспечивает гибкость при выполнении широкого спектра задач компьютерного зрения.
Сильные стороны YOLOv8
- Баланс производительности: YOLOv8 обеспечивает отличный компромисс между скоростью вывода и точностью, что делает его подходящим для различных реальных сценариев развертывания, от периферийных устройств до мощных облачных серверов.
- Универсальность: Важным преимуществом YOLOv8 является встроенная поддержка различных задач компьютерного зрения в рамках единой унифицированной структуры. Это включает в себя обнаружение объектов, сегментацию экземпляров, классификацию изображений, оценку позы и обнаружение ориентированных ограничивающих прямоугольников (OBB).
- Простота использования: Модель является частью хорошо поддерживаемой экосистемы, в которой приоритет отдан удобству использования. Она предлагает оптимизированный Python API и простой CLI, поддерживаемые обширной документацией и многочисленными руководствами.
- Эффективность обучения: YOLOv8 отличается эффективными процессами обучения и предоставляет легкодоступные предварительно обученные веса, что упрощает разработку пользовательских моделей. Как правило, для обучения требуется меньше памяти CUDA по сравнению с более сложными архитектурами.
- Хорошо поддерживаемая экосистема: Пользователи получают выгоду от непрерывной разработки, сильного open-source сообщества, частых обновлений и бесшовной интеграции с такими инструментами, как Ultralytics HUB, для комплексных рабочих процессов MLOps.
Слабые стороны YOLOv8
- Более крупные модели, такие как YOLOv8x, требуют значительных вычислительных ресурсов для обучения и развертывания.
- Может потребоваться дальнейшая оптимизация, такая как квантование, для развертывания на оборудовании с крайне ограниченными ресурсами.
Идеальные сценарии использования YOLOv8
YOLOv8 идеально подходит для приложений, требующих высокой точности и производительности в реальном времени, таких как передовая робототехника, интеллектуальные системы безопасности и инфраструктура умного города. Ее универсальность также делает ее лучшим выбором для проектов, которые могут быть расширены и включать другие задачи компьютерного зрения, помимо простого обнаружения объектов.
EfficientDet: Масштабируемость и эффективность
Авторы: Mingxing Tan, Ruoming Pang и Quoc V. Le
Организация: Google
Дата: 2019-11-20
Arxiv: https://arxiv.org/abs/1911.09070
GitHub: https://github.com/google/automl/tree/master/efficientdet
Документация: https://github.com/google/automl/tree/master/efficientdet#readme
EfficientDet — это семейство моделей обнаружения объектов, представленное командой Google Brain. Его основное нововведение — это акцент на эффективности и масштабируемости. В архитектуре используется backbone EfficientNet, новая Bi-directional Feature Pyramid Network (BiFPN) для эффективного объединения многомасштабных признаков и метод составного масштабирования. Этот метод равномерно масштабирует глубину, ширину и разрешение backbone, сети признаков и head предсказания, что позволяет адаптировать модель к различным ограничениям ресурсов.
Сильные стороны EfficientDet
- Высокая эффективность: EfficientDet разработан для минимизации количества параметров и FLOPs при максимальном увеличении точности, что делает его одной из самых вычислительно эффективных архитектур для своего времени.
- Масштабируемость: Комплексный подход к масштабированию предоставляет семейство моделей (от D0 до D7), которые можно выбирать в зависимости от доступного вычислительного бюджета, от мобильных устройств до крупных облачных серверов.
- Точность: Более крупные модели EfficientDet достигают конкурентоспособной точности на стандартных бенчмарках, таких как набор данных COCO.
Слабые стороны EfficientDet
- Скорость инференса: Несмотря на эффективность по FLOPs, EfficientDet не всегда обеспечивает самую быструю скорость инференса в реальных условиях, особенно на GPU, по сравнению с архитектурами, такими как YOLOv8, которые высоко оптимизированы для параллельной обработки.
- Ограниченная универсальность: EfficientDet — это в первую очередь модель для обнаружения объектов, и ей не хватает встроенной поддержки других задач, таких как сегментация или оценка позы, которые есть во фреймворке Ultralytics.
- Экосистема и обслуживание: Официальный репозиторий не так активно поддерживается новыми функциями и интеграциями, как экосистема Ultralytics, что может затруднить внедрение и развертывание для разработчиков.
Идеальные сценарии использования EfficientDet
EfficientDet превосходен в сценариях, где количество параметров и теоретическая вычислительная стоимость (FLOPs) являются наиболее важными ограничениями. Это отличный выбор для приложений на определенных устройствах edge AI, где размер модели строго ограничен, или в облачных средах, где минимизация вычислительных затрат является приоритетом.
Узнайте больше об EfficientDet
Прямое сравнение производительности: скорость, точность и эффективность
При сравнении YOLOv8 и EfficientDet становится ясно, что они оптимизированы для разных целей. YOLOv8 отдает приоритет превосходному балансу скорости и точности инференса в реальных условиях, в то время как EfficientDet фокусируется на минимизации параметров модели и FLOPs.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
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 |
На основании таблицы можно отметить следующее:
- Точность и количество параметров: Модели YOLOv8 стабильно достигают более высоких показателей mAP, чем модели EfficientDet, с аналогичным или даже большим количеством параметров. Например, YOLOv8s (11,2M параметров) достигает 44,9 mAP, превосходя EfficientDet-d2 (8,1M параметров) с 43,0 mAP.
- Скорость инференса: YOLOv8 демонстрирует значительное преимущество в скорости инференса, особенно на GPU с оптимизацией TensorRT. Модель YOLOv8x более чем в 8 раз быстрее, чем сопоставимая модель EfficientDet-d7, на T4 GPU, несмотря на большее количество параметров. YOLOv8 также демонстрирует гораздо более высокую скорость инференса на CPU.
- Компромисс эффективности: Хотя модели EfficientDet имеют более низкие FLOPs, это не означает более быструю работу. Архитектура YOLOv8 лучше подходит для современного аппаратного ускорения, что приводит к снижению задержки в практических сценариях.
Почему стоит выбрать модели Ultralytics YOLO?
В то время как EfficientDet была новаторской моделью для своего времени, новые модели Ultralytics YOLO, такие как YOLOv8 и новейшая YOLO11, предлагают значительные преимущества для современных разработчиков и исследователей:
- Превосходная производительность: Модели Ultralytics обеспечивают лучший баланс между скоростью и точностью, что критически важно для вывода в реальном времени.
- Современная архитектура: Они включают в себя последние достижения в области глубокого обучения, такие как обнаружение без anchor и передовые сети слияния признаков.
- Комплексная экосистема: Экосистема Ultralytics обеспечивает удобство работы от обучения до развертывания благодаря широкой поддержке, документации и интеграциям.
- Многозадачные возможности: Возможность обрабатывать обнаружение, сегментацию и другие задачи в рамках одной платформы экономит время разработки и снижает сложность.
Заключение
EfficientDet остается примечательной архитектурой, особенно благодаря своему инновационному подходу к масштабированию и эффективности модели. Это отличный выбор для приложений, где минимизация количества параметров и FLOPs является абсолютным приоритетом.
Однако, для подавляющего большинства современных приложений компьютерного зрения YOLOv8 представляет собой более убедительный вариант. Он обеспечивает превосходную скорость, более высокую точность и непревзойденную универсальность. В сочетании с удобной и активно поддерживаемой экосистемой Ultralytics, YOLOv8 позволяет разработчикам быстрее и эффективнее создавать и развертывать высокопроизводительные решения на основе искусственного интеллекта. Для тех, кто ищет самое передовое и простое в использовании решение, модели Ultralytics являются рекомендуемым выбором.
Сравнения с другими моделями
Для дальнейшего изучения рассмотрите эти сравнения с участием YOLOv8, EfficientDet и других соответствующих моделей:
- YOLOv8 vs. YOLOv7
- EfficientDet против YOLOv7
- YOLOv8 vs. YOLOv5
- EfficientDet vs. YOLOv5
- RT-DETR против YOLOv8
- RT-DETR против EfficientDet
- Ознакомьтесь с последними моделями, такими как YOLOv10 и YOLO11.