YOLOX против PP-YOLOE+: комплексное техническое сравнение
При проектировании надежного конвейера компьютерного зрения выбор подходящей модели обнаружения объектов является критически важным решением. Ландшафт детекторов объектов реального времени крайне конкурентен, и множество архитектур стремятся обеспечить наилучший баланс между скоростью вывода и точностью обнаружения. В этом техническом сравнении мы оценим две известные модели: YOLOX и PP-YOLOE+. Изучая их архитектурные особенности, методологии обучения и показатели производительности, мы стремимся предоставить разработчикам и исследователям знания, необходимые для выбора правильного инструмента для их среды развертывания.
Архитектурные инновации и дизайн
Обе модели были разработаны для устранения конкретных проблем предыдущих версий YOLO, однако они используют принципиально разные подходы к решению проблемы компромисса между скоростью и точностью.
YOLOX: Наведение мостов между исследованиями и индустрией
Разработанный Чжэн Гэ, Сунтао Лю, Фэн Ваном, Земином Ли и Цзянь Сунем из Megvii, YOLOX был выпущен 18 июля 2021 года. Он ознаменовал значительный сдвиг в семействе YOLO, полностью перейдя на дизайн без привязки к анкорам (anchor-free). Ты можешь изучить фундаментальные исследования в их официальной статье на Arxiv и исходный код в репозитории YOLOX на GitHub.
YOLOX объединяет разделенную голову (decoupled head), отделяющую задачи классификации и регрессии, что значительно улучшает скорость сходимости во время обучения. Кроме того, он представил передовые стратегии назначения меток, такие как SimOTA, для динамического назначения положительных образцов. Это делает модель высокоэффективной, особенно в средах Edge AI, где вычислительные ресурсы строго ограничены.
PP-YOLOE+: высокопроизводительное промышленное обнаружение
Представленный авторами PaddlePaddle из Baidu 2 апреля 2022 года, PP-YOLOE+ представляет собой высокооптимизированную эволюцию серии PP-YOLO. Подробно описанный в их публикации на Arxiv, PP-YOLOE+ глубоко интегрирован в экосистему Baidu и требует фреймворк PaddlePaddle. Конфигурации модели можно найти в репозитории PaddleDetection на GitHub.
PP-YOLOE+ опирается на мощный бэкбон CSPRepResNet и использует эффективную голову, настроенную на задачу (Efficient Task-aligned head, ET-head), наряду с обучением выравниванию задач (Task Alignment Learning, TAL). Эта архитектура достигает выдающейся средней точности (mAP) на наборе данных COCO, что делает её грозным выбором для промышленного обнаружения дефектов и тяжелой серверной обработки, где точность важнее минимальных зависимостей.
Показатели производительности
Понимание того, как эти модели работают в разных масштабах, важно для развертывания. В таблице ниже приведены ключевые показатели, включая mAP и скорость вывода при экспорте в TensorRT.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| 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 обеспечивает высочайшую абсолютную точность, YOLOX предоставляет чрезвычайно легкие варианты (Nano и Tiny), которые отлично подходят для маломощных микроконтроллеров и устаревшего мобильного оборудования.
Варианты использования и рекомендации
Выбор между YOLOX и PP-YOLOE+ зависит от твоих конкретных требований к проекту, ограничений развертывания и предпочтений в экосистеме.
Когда выбирать YOLOX
YOLOX — сильный выбор, если:
- Исследований обнаружения без анкоров: Академических исследований, использующих чистую архитектуру YOLOX без анкоров в качестве базы для экспериментов с новыми головами обнаружения или функциями потерь.
- Сверхлегких граничных устройств: Развертывания на микроконтроллерах или устаревшем мобильном оборудовании, где критически важен чрезвычайно малый размер варианта YOLOX-Nano (0.91 млн параметров).
- Исследований назначения меток SimOTA: Исследовательских проектов, изучающих стратегии назначения меток на основе оптимального транспорта и их влияние на сходимость обучения.
Когда выбирать PP-YOLOE+
PP-YOLOE+ рекомендуется для:
- Интеграция с экосистемой PaddlePaddle: организации с существующей инфраструктурой, построенной на фреймворке и инструментах Baidu PaddlePaddle.
- Развертывание на Paddle Lite Edge: развертывание на оборудовании с высокооптимизированными ядрами вывода специально для двигателя Paddle Lite или вывода Paddle.
- Высокоточное обнаружение на стороне сервера: сценарии, отдающие приоритет максимальной точности обнаружения на мощных серверных GPU, где зависимость от фреймворка не является проблемой.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и опыта разработчика:
- Периферийное развертывание без NMS: Приложениям требуется стабильный вывод с низкой задержкой без сложности постобработки Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного GPU-ускорения, где преимущество YOLO26 в виде до 43% более быстрого вывода на CPU является решающим.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэросъемка с дронов или анализ данных IoT-датчиков, где ProgLoss и STAL значительно повышают точность распознавания крошечных объектов.
Преимущество Ultralytics: представляем YOLO26
Хотя и YOLOX, и PP-YOLOE+ обладают своими преимуществами, быстрое развитие ИИ требует инструментов, сочетающих в себе современную точность с непревзойденной простотой использования. Именно здесь модели Ultralytics, особенно недавно выпущенный Ultralytics YOLO26, превосходят устаревшие исследовательские репозитории.
Выпущенный в январе 2026 года, YOLO26 устанавливает новый стандарт для современного обнаружения объектов и не только, предлагая опыт разработчика, который просто не имеет аналогов среди конкурирующих фреймворков.
Почему разработчики выбирают YOLO26
- Комплексный дизайн без NMS: Развивая концепции, впервые примененные в YOLOv10, YOLO26 является нативно комплексным (end-to-end). Полностью удалив пост-обработку не-максимального подавления (NMS), он обеспечивает высокую стабильность задержки и значительно упрощает конвейеры экспорта для периферийных сред.
- Оптимизация нового поколения: Стабильность обучения радикально улучшена благодаря оптимизатору MuSGD, гибриду SGD и Muon (вдохновленному методологиями LLM, такими как Kimi K2 от Moonshot AI). Это гарантирует более быструю сходимость. Кроме того, YOLO26 использует ProgLoss + STAL для значительного улучшения распознавания мелких объектов — ключевой функции для приложений, связанных с аэрофотосъемкой и робототехникой.
- Unmatched Hardware Efficiency: By removing Distribution Focal Loss (DFL), YOLO26 drastically lowers memory requirements. It boasts up to 43% faster CPU inference, making it the definitive choice for devices lacking dedicated GPU acceleration.
- Экстремальная универсальность: В отличие от PP-YOLOE+, который фокусируется исключительно на обнаружении, YOLO26 предлагает унифицированную поддержку множества задач. Он включает специализированную функцию потерь семантической сегментации для сегментации экземпляров, оценку остаточного логарифмического правдоподобия (RLE) для точного оценивания позы и передовые механизмы потерь угла для ориентированных ограничивающих рамок (OBB).
Бесшовная интеграция с экосистемой
Ultralytics устраняет разочарование от сложной установки фреймворков. Используя унифицированный Python API или интуитивно понятную платформу Ultralytics, ты можешь обучать, проверять и экспортировать модели всего несколькими строками кода.
from ultralytics import YOLO
# Load the cutting-edge YOLO26 small model
model = YOLO("yolo26s.pt")
# Train on a custom dataset with minimal CUDA memory overhead
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Effortlessly run inference
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX natively, fully benefiting from the NMS-free architecture
model.export(format="onnx")Для пользователей, оценивающих другие надежные архитектуры в экосистеме Ultralytics, YOLO11 остается весьма надежным выбором для устаревших развертываний, в то время как RT-DETR на базе трансформеров предоставляет отличные возможности для тех, кто ищет решения, основанные на механизмах внимания (attention).
Резюме
Выбор между YOLOX и PP-YOLOE+ часто сводится к твоим основным ограничениям фреймворка — предпочитаешь ли ты гибкость на основе PyTorch или глубокую интеграцию с PaddlePaddle от Baidu. Однако для организаций, стремящихся обезопасить свою ИИ-инфраструктуру на будущее, Ultralytics YOLO26 предоставляет значительно превосходящую альтернативу. Благодаря своему революционному дизайну без NMS, легкому потреблению памяти и всесторонней универсальности задач, YOLO26 дает возможность командам создавать более быстрые, умные и эффективные приложения компьютерного зрения с беспрецедентной легкостью.