YOLO11 YOLOX: эволюция архитектуры и анализ производительности
В быстро развивающейся области компьютерного зрения выбор правильной модели обнаружения объектов имеет решающее значение для успеха проекта. Двумя важными вехами на этом пути являются YOLO11 и YOLOX. В то время как YOLOX представил революционные концепции без якорей в 2021 году, YOLO11 выпущенный в конце 2024 года) усовершенствовал эти идеи с помощью современных архитектурных улучшений, превосходной эффективности и надежной поддержки Ultralytics .
В этом руководстве представлено подробное техническое сравнение, которое поможет разработчикам, исследователям и инженерам выбрать оптимальную модель для своих конкретных задач, от развертывания на периферии в режиме реального времени до высокоточного анализа на стороне сервера.
Краткое изложение
YOLO11 представляет собой кульминацию многолетней работы Ultralytics по его совершенствованию. Он отличается универсальностью, предлагая встроенную поддержку обнаружения, сегментации, оценки позы и ориентированных ограничивающих прямоугольников (OBB). Его архитектура оптимизирована для современного оборудования, обеспечивая более высокую точность на FLOP по сравнению со старыми моделями.
YOLOX, разработанный Megvii в 2021 году, стал ключевым продуктом, который популяризировал парадигму обнаружения без анкоров. Он упростил процесс обучения за счет удаления анкорных рамок и внедрил передовые методы аугментации, такие как MixUp Mosaic. Несмотря на то, что это по-прежнему эффективный детектор, ему не хватает многозадачных возможностей и бесшовного конвейера развертывания, которые характерны для более новых Ultralytics .
Для разработчиков, начинающих сегодня новые проекты, YOLO11 или передовой YOLO26, поскольку они обладают превосходным соотношением производительности и эффективности и просты в использовании.
Технические показатели сравнения
В следующей таблице показаны различия в производительности двух архитектур для моделей разного размера.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
| 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 |
Анализ производительности
YOLO11m достигает более высокого mAP 51,5%) по сравнению с самым большим YOLOXx (51,1%), при этом используя примерно в 5 раз меньше параметров (20,1 млн против 99,1 млн) и работая почти в 3 раза быстрее на графических процессорах T4. Этот значительный прирост эффективности делает YOLO11 более дешевым для масштабного развертывания.
Архитектурное Глубокое Погружение
YOLO11: Повышенная эффективность и универсальность
Авторы: Гленн Джочер, Цзин Цю (Ultralytics)
Дата: сентябрь 2024 г.
YOLO11 на модулях C2f (CSP Bottleneck с 2 свертками), представленных в более ранних версиях, но усовершенствован для лучшего градиентного потока и извлечения признаков.
- Магистраль: оптимизированная магистраль на основе CSP, которая уравновешивает глубину и ширину, чтобы минимизировать вычислительную нагрузку и максимально увеличить рецептивные поля.
- Головка: унифицированная головка обнаружения, которая поддерживает несколько задач — обнаружение объектов, сегментацию экземпляров и оценку положения— без необходимости значительных изменений в архитектуре.
- Без анкеров: Как и YOLOX, YOLO11 подход без анкеров, что уменьшает количество параметров проектирования (таких как размеры и соотношения анкеров) и упрощает сложность модели.
- Динамика обучения: включает в себя передовые стратегии увеличения объема данных в рамках процесса Ultralytics , обеспечивая устойчивость к различным условиям освещения и окклюзии.
YOLOX: пионер Anchor-Free
Авторы: Zheng Ge и др. (Megvii)
Дата: июль 2021 г.
YOLOX был разработан для преодоления разрыва между научным сообществом и промышленными приложениями.
- Разделенная головка: YOLOX представил структуру разделенной головки, в которой задачи классификации и регрессии обрабатываются отдельными ветвями. Было обнаружено, что это улучшает скорость сходимости и точность.
- SimOTA: Ключевой инновацией стало «упрощенное оптимальное транспортное назначение» (SimOTA) для присвоения меток. Эта динамическая стратегия более эффективно присваивает объекты реальной действительности прогнозам, чем фиксированные IoU .
- Механизм без анкеров: благодаря удалению анкерных блоков YOLOX устранил необходимость в ручной настройке анкеров, что было распространенной проблемой в предыдущих YOLO (v2-v5).
- Сильное усиление: интенсивное использование MixUp Mosaic и MixUp позволило YOLOX эффективно обучаться с нуля.
Экосистема и простота использования
Одним из наиболее важных факторов для разработчиков является программная экосистема, окружающая модель. Она определяет, насколько легко модель можно обучить, проверить и внедрить.
Преимущество Ultralytics
YOLO11 преимущества зрелой и активно поддерживаемой Ultralytics . Эта интеграция предлагает несколько явных преимуществ:
- Единый API: переключение между задачами не представляет сложности. Вы можете перейти от обнаружения автомобилей к сегментации опухолей, изменив один параметр в Python или CLI.
- Гибкость развертывания: платформа включает встроенную функцию экспорта в такие форматы, как ONNX, TensorRT, CoreML и OpenVINO. Это позволяет разработчикам развертывать модели в производственных средах с помощью одной строки кода.
- Поддержка платформы: Ultralytics упрощает весь жизненный цикл, от аннотирования наборов данных до обучения в облаке и управления моделями.
from ultralytics import YOLO
# Load a model (YOLO11n)
model = YOLO("yolo11n.pt")
# Train on a custom dataset
# The system automatically handles data downloading and preparation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export for deployment
path = model.export(format="onnx")
Экосистема YOLOX
YOLOX в первую очередь используется в качестве хранилища исследований. Хотя код является открытым и высококачественным, он часто требует дополнительной ручной настройки. Пользователям обычно необходимо самостоятельно управлять загрузчиками данных, писать собственные скрипты экспорта для конкретного оборудования и ориентироваться в кодовой базе, которая обновляется реже, чем Ultralytics .
Приложения в реальном мире
Выбор между этими моделями часто зависит от конкретных ограничений среды применения.
Идеальные сценарии использования для YOLO11
- Аналитика видео в реальном времени: благодаря скорости вывода T4 всего 1,5 мс, YOLO11n идеально подходит для обработки видеопотоков с высокой частотой кадров для управления трафиком или спортивной аналитики.
- Многозадачные системы: если приложение требует одновременного отслеживания объектов и оценки позы (например, анализ тренировок в тренажерном зале), универсальная архитектура YOLO11 снижает потребность в нескольких тяжелых моделях.
- Коммерческое внедрение: благодаря беспроблемному экспорту в NVIDIA или Raspberry Pi YOLO11 стал YOLO11 для коммерческих продуктов IoT.
Идеальные варианты использования YOLOX
- Академический бенчмаркинг: YOLOX остается надежной базой для исследователей, сравнивающих методы обнаружения без анкоров в период 2021-2022 годов.
- Устаревшие системы: для проектов, в которых уже были сделаны значительные инвестиции в кодовую базу YOLOX и настраиваемые конвейеры интеграции, может оказаться более экономичным продолжать их поддержку, чем переходить на новую систему.
- Особые ограничения для мобильных устройств: Модель YOLOX-Nano чрезвычайно легкая (0,91 млн параметров), что делает ее полезной для мобильного оборудования с очень ограниченными возможностями, хотя более новые модели, такие как YOLO26n, теперь предлагают конкурентоспособные размеры с гораздо более высокой точностью.
Будущее: вступает YOLO26
Для разработчиков, стремящихся к абсолютному передовому уровню, Ultralytics выпустила YOLO26 (январь 2026 г.). Эта модель представляет собой значительный шаг вперед, эффективно заменяя YOLO11 YOLOX в большинстве случаев использования.
YOLO26 представляет несколько ключевых нововведений:
- Нативная сквозная обработка: устраняет немаксимальное подавление (NMS), этап постобработки, который часто является узким местом, снижающим скорость вывода. Это приводит к более быстрым и детерминированным результатам.
- Оптимизатор MuSGD: вдохновленный методами обучения LLM, этот оптимизатор обеспечивает стабильную конвергенцию и сокращает время обучения.
- Эффективность: YOLO26 обеспечивает на 43 % более быстрое CPU по сравнению с предыдущими поколениями, что делает его мощным инструментом дляGPU .
Если вы начинаете новый проект, мы настоятельно рекомендуем оценить YOLO26 наряду с YOLO11.
Заключение
И YOLO11 YOLOX заслужили свое место в истории компьютерного зрения. YOLOX был пионером, доказавшим жизнеспособность обнаружения без анкоров. Однако YOLO11 предлагает более привлекательный пакет для современных разработчиков: он быстрее, точнее, поддерживает более широкий спектр задач и опирается на экосистему, которая значительно сокращает время разработки.
Другие модели для изучения
- YOLO26: новейшая ультрасовременная модель от Ultralytics, отличающаяся сквозным обнаружением NMS.
- RT-DETR: детектор на основе трансформатора, обеспечивающий высокую точность, идеально подходит для сценариев с большим объемом GPU .
- YOLOv9: Известен своей архитектурой Programmable Gradient Information (PGI) и GELAN.
- YOLOv8: Надежная, широко используемая классика в семействе YOLO.