YOLOv5 против PP-YOLOE+: Глубокий технический анализ современного обнаружения объектов.
Выбор правильной архитектуры нейронной сети имеет решающее значение для любого современного проекта компьютерного зрения. Когда разработчики и исследователи оценивают модели для обнаружения объектов в реальном времени, решение часто сводится к балансу между точностью, скоростью вывода и простотой развертывания. Это техническое сравнение рассматривает YOLOv5 и PP-YOLOE+, исследуя их архитектуры, метрики производительности и методологии обучения, чтобы помочь вам выбрать оптимальное решение для вашего приложения.
Понимание архитектур
Обе модели значительно повлияли на ландшафт ИИ в области компьютерного зрения, но они подходят к задачам обнаружения объектов с помощью различных структурных методологий и зависимостей от фреймворков.
Ultralytics YOLOv5: Промышленный стандарт
Выпущенный в середине 2020 года, Ultralytics YOLOv5 произвел революцию в доступности передовых моделей компьютерного зрения. Будучи первой нативной реализацией PyTorch в семействе YOLO, он значительно снизил порог входа для Python-разработчиков и ML-инженеров по всему миру.
Подробности о YOLOv5:
- Автор: Гленн Джочер
- Организация: Ultralytics
- Дата: 26.06.2020
- GitHub: ultralytics/yolov5
- Документация: Документация YOLOv5
YOLOv5 использует модифицированный бэкбон CSPDarknet, который эффективно извлекает богатые признаки, сохраняя при этом небольшое количество параметров. Он представил автоматически обучаемые якорные боксы, автоматически рассчитывая оптимальные размеры якорей для пользовательских наборов данных еще до начала обучения. Кроме того, интеграция аугментации данных Mosaic значительно повышает способность модели detect мелкие объекты и обобщать в сложных пространственных контекстах.
Одной из величайших сильных сторон YOLOv5 является ее невероятная универсальность. В отличие от стандартных детекторов объектов, семейство YOLOv5 бесшовно поддерживает классификацию изображений, сегментацию экземпляров и обнаружение ограничивающих рамок в рамках унифицированного API. Ее высокооптимизированная архитектура также приводит к значительно меньшему потреблению памяти во время обучения и инференса по сравнению с тяжелыми сетями на основе трансформеров.
PP-YOLOE+: Претендент от PaddlePaddle
Представленный примерно два года спустя, PP-YOLOE+ основывается на фундаменте предыдущих итераций PP-YOLO. Разработанный для демонстрации возможностей фреймворка глубокого обучения Baidu, он представляет несколько архитектурных усовершенствований для повышения средней точности (mean Average Precision).
Детали PP-YOLOE+:
- Авторы: PaddlePaddle Authors
- Организация: Baidu
- Дата: 2022-04-02
- Arxiv: 2203.16250
- GitHub: PaddlePaddle/PaddleDetection
- Документация: PP-YOLOE+ README
PP-YOLOE+ опирается на безанкерную парадигму и использует backbone CSPRepResNet. Он включает мощную технику Task Alignment Learning и Efficient Task-aligned Head для повышения точности. Хотя PP-YOLOE+ достигает впечатляющих показателей точности, его основной недостаток заключается в строгой зависимости от фреймворка PaddlePaddle. Это часто создает крутую кривую обучения и трения в экосистеме для исследовательских групп и предприятий, уже глубоко интегрированных в среды PyTorch или TensorFlow.
Производительность и сравнительное тестирование
При оценке этих моделей для производства крайне важно понимать компромиссы между точностью, скоростью инференса и объемом параметров. В таблице ниже представлены ключевые метрики производительности для различных вариантов размера.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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+ достигает высоких пределов точности, YOLOv5 последовательно демонстрирует превосходную эффективность параметров и более быструю инференцию на ограниченном оборудовании. Для периферийных развертываний, где память ограничена, YOLOv5n предлагает непревзойденную скорость и чрезвычайно малый объем памяти.
Эффективность памяти
Модели Ultralytics специально разработаны для эффективности обучения. По сравнению с тяжелыми визуальными трансформерами, такими как RT-DETR, YOLOv5 использует значительно меньше памяти CUDA, что позволяет обучать модели на больших размерах пакетов или на потребительском оборудовании.
Преимущество Ultralytics: Экосистема и простота использования
Истинная ценность архитектуры машинного обучения выходит за рамки сухих цифр; она охватывает весь опыт разработчика. Платформа Ultralytics и соответствующие ей инструменты с открытым исходным кодом предоставляют высокоразвитую, хорошо поддерживаемую экосистему, которая значительно ускоряет циклы разработки.
- Простота использования: Ultralytics абстрагирует сложный шаблонный код. Вы можете обучать, проверять и тестировать модели с помощью интуитивно понятного Python API или CLI.
- Гибкость развертывания: Экспорт моделей чрезвычайно прост. С помощью одной команды вы можете преобразовать обученные веса YOLOv5 в такие форматы, как ONNX, TensorRT или OpenVINO, обеспечивая широкую совместимость в периферийных и облачных средах.
- Активное сообщество: Активное сообщество гарантирует частые обновления, обширную документацию и надежные решения общих проблем компьютерного зрения.
В отличие от этого, PP-YOLOE+ в значительной степени полагается на сложные файлы конфигурации, специфичные для PaddleDetection, что может замедлить быстрое прототипирование и усложнить интеграцию в современные конвейеры MLOps.
Практические реализации и примеры кода
Начало работы с Ultralytics удивительно просто. Вот полный, исполняемый пример того, как загрузить предварительно обученную модель YOLOv5, обучить ее на пользовательском наборе данных и экспортировать результаты:
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset for 50 epochs
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on a sample image
predict_results = model("https://ultralytics.com/images/bus.jpg")
# Export the optimized model to ONNX format
path = model.export(format="onnx")
Сценарии использования и рекомендации
Выбор между YOLOv5 и PP-YOLOE+ зависит от конкретных требований вашего проекта, ограничений развертывания и предпочтений экосистемы.
Когда выбирать YOLOv5
YOLOv5 является оптимальным выбором для:
- Проверенные производственные системы: Существующие развертывания, где ценятся долгий track-рекорд стабильности YOLOv5, обширная документация и массивная поддержка сообщества.
- Обучение с ограниченными ресурсами: Среды с ограниченными ресурсами GPU, где эффективный конвейер обучения YOLOv5 и низкие требования к памяти являются преимуществом.
- Обширная поддержка форматов экспорта: Проекты, требующие развертывания во многих форматах, включая ONNX, TensorRT, CoreML и TFLite.
Когда следует выбирать PP-YOLOE+
PP-YOLOE+ рекомендуется для:
- Интеграция с экосистемой PaddlePaddle: Для организаций с существующей инфраструктурой, построенной на фреймворке и инструментарии Baidu PaddlePaddle.
- Развертывание Paddle Lite на периферийных устройствах: Развертывание на аппаратном обеспечении с высокооптимизированными ядрами вывода специально для механизма вывода Paddle Lite или Paddle.
- Высокоточное серверное обнаружение: Сценарии, где приоритетом является максимальная точность обнаружения на мощных GPU-серверах, и зависимость от фреймворка не является проблемой.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Альтернативные современные модели для рассмотрения
Хотя YOLOv5 является надежным и проверенным стандартом, область компьютерного зрения быстро развивается. Для команд, начинающих новые проекты, мы настоятельно рекомендуем изучить наши новые архитектуры.
Ultralytics YOLO26
Выпущенный в январе 2026 года, YOLO26 представляет собой абсолютную вершину наших исследований. Он обеспечивает значительные улучшения как в точности, так и в скорости. Ключевые инновации включают:
- Сквозная архитектура без NMS: Основываясь на концепциях из YOLOv10, YOLO26 изначально исключает постобработку Non-Maximum Suppression (NMS), сокращая задержку и упрощая логику развертывания.
- Удаление DFL: Исключение Distribution Focal Loss позволяет YOLO26 достигать до 43% более быстрой инференции на CPU, что делает его невероятно мощным для маломощных граничных устройств.
- Оптимизатор MuSGD: Вдохновленный передовыми методами обучения LLM, этот гибрид SGD и Muon обеспечивает исключительно стабильные циклы обучения и более быструю сходимость.
- ProgLoss + STAL: Эти передовые функции потерь обеспечивают заметные улучшения в распознавании мелких объектов, что критически важно для изображений с дронов и умного сельского хозяйства.
Кроме того, вы можете рассмотреть YOLO11, которая предлагает отличную производительность и служит очень надежным мостом между устаревшими системами и передовыми возможностями YOLO26.
Реальные примеры использования
Выбор между YOLOv5 и PP-YOLOE+ в конечном итоге зависит от вашей среды развертывания и ограничений проекта.
Идеальные области применения YOLOv5: Минимальные требования к ресурсам YOLOv5 и невероятная простота использования делают его лучшим выбором для периферийного ИИ. Он превосходен в приложениях, требующих высокой частоты кадров на ограниченном оборудовании, таких как робототехника в реальном времени, интеграция мобильных приложений и системы мониторинга трафика с несколькими камерами. Его способность одновременно выполнять задачи оценки позы и ориентированных ограничивающих рамок (OBB) в рамках одной и той же структуры делает его легко адаптируемым.
Идеальные области применения PP-YOLOE+: PP-YOLOE+ лучше всего подходит для сценариев, где абсолютная максимальная точность на статичных изображениях имеет приоритет над ограничениями обработки в реальном времени. Он находит нишевое применение в конвейерах промышленного контроля, особенно в азиатских производственных секторах, имеющих предустановленные технические стеки, активно использующие экосистему Baidu и PaddlePaddle.
Подводя итог, хотя PP-YOLOE+ демонстрирует высокие показатели точности, модели Ultralytics YOLO предлагают непревзойденное сочетание сбалансированной производительности, бесшовного развертывания и удобного для разработчиков дизайна, что способствует успешной реализации проектов компьютерного зрения от концепции до производства.