YOLOv8 и PP-YOLOE+: сравнение#
В стремительно развивающейся области компьютерного зрения выбор подходящей модели для обнаружения объектов имеет решающее значение для достижения баланса между скоростью инференса и точностью. Две заметные модели, оказавшие значительное влияние на отрасль, — это Ultralytics YOLOv8 и PP-YOLOE+. В этом руководстве приведено подробное техническое сравнение, которое поможет разработчикам и инженерам по машинному обучению разобраться в особенностях их архитектур, показателях производительности и оптимальных сценариях развертывания.
Ultralytics YOLOv8: универсальный стандарт экосистемы#
Представленная Ultralytics модель YOLOv8 быстро стала основой для промышленных приложений компьютерного зрения. Она опирается на многолетние фундаментальные исследования и обеспечивает выдающуюся производительность в различных задачах.
- Авторы: Glenn Jocher, Ayush Chaurasia и Jing Qiu
- Организация: Ultralytics
- Дата: 2023-01-10
- GitHub: Репозиторий Ultralytics
- Документация: Документация YOLOv8
Архитектурные инновации и универсальность#
YOLOv8 использует высокооптимизированную безъякорную архитектуру и включает раздельную голову, которая независимо обрабатывает задачи определения объектности, классификации и регрессии. Это структурное усовершенствование обеспечивает более качественное представление признаков и более быструю сходимость во время обучения.
В отличие от многих специализированных моделей, YOLOv8 отличается исключительной универсальностью. Помимо обнаружения ограничивающих рамок, та же унифицированная архитектура и API изначально поддерживают сегментацию экземпляров, классификацию изображений, оценку позы и ориентированные ограничивающие рамки (OBB).
Унифицированная экосистема Ultralytics позволяет разработчикам без лишних усилий переключаться между задачами обнаружения, сегментации и трекинга, просто меняя веса модели, что значительно сокращает технический долг.
PP-YOLOE+: мощь PaddlePaddle#
PP-YOLOE+ — эволюционный шаг по сравнению с предыдущими версиями PP-YOLO, специально разработанный для эффективной работы на внутренних фреймворках Baidu.
- Авторы: авторы PaddlePaddle
- Организация: Baidu
- Дата: 2022-04-02
- Arxiv: Статья о PP-YOLOE
- GitHub: Репозиторий PaddleDetection
- Документация: Конфигурация PP-YOLOE+
Архитектурные особенности#
В PP-YOLOE+ были представлены базовая сеть CSPRepResNet и Efficient Task-aligned Head (ET-head) для повышения точности обнаружения. Модель в значительной степени опирается на фреймворк глубокого обучения PaddlePaddle. Хотя она обеспечивает высокую точность на стандартных наборах данных для тестирования, таких как набор данных COCO, ее архитектура тесно связана с определенными экосистемами, что может затруднять интеграцию в стандартные конвейеры на базе PyTorch или TensorFlow, популярные в более широком сообществе ИИ.
Сравнение производительности и метрик#
При развертывании моделей на периферийных устройствах или облачных серверах решающее значение имеет баланс между точностью (mAP), скоростью и количеством параметров. Модели Ultralytics известны низкими требованиями к памяти во время обучения и чрезвычайно высокой скоростью инференса.
Ниже приведена подробная сравнительная таблица моделей, протестированных на COCO val2017.
| Модель | размер (пиксели) | 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 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
Анализ компромиссов#
Модель PP-YOLOE+x немного превосходит YOLOv8x по абсолютному показателю mAP (54.7 против 53.9), но платой за это становятся почти 30 миллионов дополнительных параметров. Ultralytics YOLOv8 обеспечивает значительно лучшее соотношение количества параметров и точности. Облегченной модели YOLOv8n требуется всего 3.2M параметров и 8.7B FLOPs, что делает ее значительно эффективнее в условиях ограниченных ресурсов по сравнению с самой маленькой версией PP-YOLOE+.
Кроме того, модели YOLO значительно превосходят крупные архитектуры на базе Transformer по объему памяти, используемой во время обучения. Модели с большим объемом памяти CUDA часто требуют дорогостоящего оборудования, тогда как YOLOv8 позволяет эффективно обучать модели на потребительских GPU.
Экосистема, удобство использования и развертывание#
Именно пользовательский опыт является главным отличием этих архитектур.
Платформа Ultralytics предлагает хорошо поддерживаемую экосистему, которая избавляет от сложностей эксплуатации систем машинного обучения. Она предоставляет невероятно простой API, подробную документацию и встроенные инструменты для журналирования данных, настройки гиперпараметров и экспорта на разные платформы. Нужно ли тебе развернуть модель через ONNX, TensorRT или CoreML — Ultralytics без проблем справится с этим.
Напротив, для работы с PP-YOLOE+ часто требуются глубокие знания фреймворка PaddlePaddle. Преобразование этих моделей для эффективной работы на стандартных GPU NVIDIA или периферийных устройствах за пределами аппаратной экосистемы Baidu может оказаться сложным многоэтапным процессом, лишенным удобной автоматизации, доступной в инструментах Ultralytics.
Эффективное обучение с Ultralytics#
Для обучения модели Ultralytics практически не требуется шаблонный код. Ниже приведен полностью рабочий пример того, как легко обучить модель YOLOv8 в Python:
from ultralytics import YOLO
# Load a pre-trained YOLOv8 small model
model = YOLO("yolov8s.pt")
# Train the model on the COCO8 example dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Quickly export the trained model for TensorRT deployment
model.export(format="engine", device=0)Варианты применения и рекомендации#
Выбор между YOLOv8 и PP-YOLOE+ зависит от конкретных требований твоего проекта, ограничений развертывания и предпочтительной экосистемы.
Когда стоит выбрать YOLOv8#
YOLOv8 — отличный выбор для:
- Универсальное развертывание для нескольких задач: проектов, которым нужна проверенная модель для обнаружения, сегментации, классификации и оценки позы в экосистеме Ultralytics.
- Сформировавшиеся промышленные системы: существующих производственных сред, уже построенных на архитектуре YOLOv8 и использующих стабильные, тщательно протестированные конвейеры развертывания.
- Широкая поддержка сообщества и экосистемы: приложений, получающих преимущества от обширных руководств по YOLOv8, сторонних интеграций и активных ресурсов сообщества.
Когда выбирать PP-YOLOE+#
PP-YOLOE+ рекомендуется для следующих случаев:
- Интеграция с экосистемой PaddlePaddle: Организации с существующей инфраструктурой, построенной на фреймворке и инструментах PaddlePaddle от Baidu.
- Развертывание на периферийных устройствах с Paddle Lite: Развертывание на оборудовании с высокооптимизированными ядрами инференса, специально предназначенными для Paddle Lite или механизма инференса Paddle.
- Высокоточное обнаружение на сервере: Сценарии, в которых приоритетом является максимальная точность обнаружения на мощных GPU-серверах, а зависимость от фреймворка не имеет значения.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и удобства для разработчиков:
- Развертывания на периферийных устройствах без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложной постобработки с подавлением немаксимумов.
- Сред без GPU: устройств без выделенного ускорения GPU, где до 43% более быстрый вывод YOLO26 на CPU дает решающее преимущество.
- Обнаружения мелких объектов: сложных сценариев, таких как аэрофотосъемка с дронов или анализ данных IoT-сенсоров, где ProgLoss и STAL значительно повышают точность обнаружения крошечных объектов.
Взгляд в будущее: преимущества YOLO26#
Для тех, кто хочет создавать приложения, рассчитанные на будущее, недавно выпущенная Ultralytics YOLO26 представляет собой вершину современного компьютерного зрения. Выпущенная в январе 2026 года, она превосходит и YOLOv8, и промежуточную версию YOLO11, предлагая революционные возможности:
- Сквозная архитектура без NMS: YOLO26 изначально устраняет необходимость в постобработке Non-Maximum Suppression, значительно уменьшая вариативность задержки и упрощая логику развертывания.
- Оптимизатор MuSGD: Объединяя инновации обучения LLM с ИИ для компьютерного зрения, этот гибрид SGD и Muon обеспечивает исключительно стабильную динамику обучения и более быструю сходимость.
- До 43% более быстрый инференс на CPU: За счет удаления Distribution Focal Loss (DFL) YOLO26 обеспечивает непревзойденную скорость на периферийных устройствах и стандартных CPU, что делает модель идеальной для приложений IoT и мобильных устройств.
- ProgLoss + STAL: Эти продвинутые функции потерь заметно улучшают распознавание небольших объектов, что особенно важно для аналитики с дронов и аэрофотосъемки.
Хотя YOLOv8 остается надежным и хорошо поддерживаемым вариантом, YOLO26 рекомендуется в качестве архитектуры для всех новых корпоративных и исследовательских проектов, поскольку она обеспечивает более высокую точность, быстрый инференс на периферийных устройствах и встроенную сквозную обработку.
Заключение#
И YOLOv8, и PP-YOLOE+ расширили границы обнаружения объектов в реальном времени. Однако для подавляющего большинства разработчиков и исследователей Ultralytics YOLOv8 — а также ее преемник YOLO26 — остаются лучшим выбором. Сочетание интуитивно понятного API, активного сообщества с открытым исходным кодом, низких требований к памяти во время обучения и универсального унифицированного фреймворка обеспечивает максимально простой и эффективный путь от создания набора данных до развертывания в продакшене.