YOLOX против YOLO11: техническое погружение в эволюцию обнаружения объектов
Выбор оптимальной архитектуры обнаружения объектов имеет решающее значение для разработчиков, стремящихся найти баланс между точностью, задержкой и вычислительной эффективностью. В этом комплексном анализе сравниваются YOLOX, новаторская модель без якорей от Megvii, и Ultralytics YOLO11последней современной итерации от Ultralytics. В то время как YOLOX внедрил значительные инновации в 2021 году, YOLO11 представляет собой передовой край компьютерного зрения в 2024 году, предлагая единую структуру для решения различных задач - от обнаружения до сегментации объектов.
YOLOX: соединение исследований и промышленности
Выпущенный в 2021 году, YOLOX ознаменовал собой значительный сдвиг в семействе YOLO , приняв безъякорный механизм и отсоединив предсказательную головку. Он был разработан для преодоления разрыва между академическими исследованиями и промышленным применением.
- Авторы: Чжэн Ге, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация:Megvii
- Дата: 18.07.2021
- Arxiv:YOLOX: Превышение серии YOLO в 2021 году
- GitHub:Megvii-BaseDetection/YOLOX
- Документы:Документация YOLOX
Архитектура и инновации
YOLOX отличается от предыдущих итераций, таких как YOLOv5 удалив якорные блоки, что позволило снизить сложность конструкции и уменьшить количество эвристических гиперпараметров. Архитектура YOLOX включает в себя разделенную голову, разделяющую задачи классификации и регрессии на разные ветви, что повысило скорость сходимости и точность. Кроме того, в ней появилась SimOTA, усовершенствованная стратегия присвоения меток, которая динамически присваивает положительные образцы, что еще больше повышает производительность.
Сильные и слабые стороны
Преимущества:
- Безъякорная конструкция: Устраняет необходимость в ручной кластеризации якорных ящиков, упрощая процесс обучения.
- Decoupled Head: повышает точность локализации за счет независимой оптимизации классификации и регрессии.
- Базовая линия исследований: Служит надежной отправной точкой для изучения безъякорных детекторов.
Слабые стороны:
- Ограниченная поддержка задач: Основное внимание уделяется обнаружению объектов, отсутствует встроенная поддержка сегментации, оценки позы или ориентированных ограничительных блоков (OBB).
- Фрагментированная экосистема: Отсутствие единого, активно поддерживаемого набора инструментов для развертывания, отслеживания и MLOps по сравнению с современными фреймворками.
- Низкая эффективность: Как правило, для достижения точности, сравнимой с новыми моделями, такими как YOLO11, требуется больше параметров и FLOP.
Ultralytics YOLO11: новый стандарт искусственного интеллекта для зрения
Ultralytics YOLO11 совершенствует традицию обнаружения объектов в реальном времени, уделяя особое внимание эффективности, гибкости и простоте использования. Это решение предназначено как для быстрого создания прототипов, так и для крупномасштабных производственных развертываний.
- Авторы: Гленн Джохер, Цзин Цю
- Организация:Ultralytics
- Дата: 2024-09-27
- GitHub:РепозиторийUltralytics
- Док-ты:Ultralytics YOLO11 Docs
Архитектура и преимущества экосистемы
В YOLO11 используется высокооптимизированная архитектура без якорей, которая улучшает извлечение признаков, минимизируя при этом вычислительные затраты. В отличие от YOLOX, YOLO11 - это не просто модель, а часть комплексной экосистемы. Она поддерживает широкий спектр задач компьютерного зрения -классификацию, сегментацию, оценку положения и отслеживание - в рамках единого и удобного API.
Интегрированные МОТ
YOLO11 легко интегрируется с Ultralytics HUB и сторонними инструментами, такими как Weights & Biases и Cometчто позволяет визуализировать эксперименты и управлять наборами данных без особых усилий.
Почему стоит выбрать YOLO11?
- Универсальность: Единая структура для обнаружения объектов, сегментации объектов, оценки позы и классификации изображений.
- Простота использования: оптимизированный Python API и CLI позволяют разработчикам обучать и развертывать модели с помощью всего нескольких строк кода.
- Баланс производительности: Достижение превосходства mAP при более высокой скорости вычислений как на CPU, так и на GPU по сравнению с предшественниками и конкурентами.
- Эффективность использования памяти: Разработана с меньшими требованиями к памяти при обучении и выводе, что делает ее более доступной по сравнению с моделями на основе трансформаторов, такими как RT-DETR.
- Готовность к развертыванию: Встроенная поддержка экспорта в такие форматы, как ONNX, TensorRT, CoreML и TFLite обеспечивает совместимость с различным оборудованием, от NVIDIA Jetson до мобильных устройств.
Анализ производительности
В таблице ниже показаны различия в производительности между YOLOX и YOLO11. YOLO11 постоянно демонстрирует более высокую точностьmAP) при меньшем количестве параметров и FLOP, что приводит к более высокой скорости вычислений.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Основные выводы
- Доминирование эффективности: Модели YOLO11 обеспечивают значительно лучший компромисс между скоростью и точностью. Например, YOLO11m достигает 51,5 mAP всего с 20,1 млн параметров, превосходя массивную модель YOLOX-x (51,1 mAP, 99,1 млн параметров) при примерно 5-кратном уменьшении размера.
- Скорость вывода: На GPU T4 с использованием TensorRTYOLO11n достигает 1,5 мс, что делает его исключительным выбором для приложений, работающих в режиме реального времени, где задержка является критически важной.
- ПроизводительностьCPU : Ultralytics предоставляет прозрачные бенчмарки CPU , демонстрируя жизнеспособность YOLO11 для развертывания на устройствах без специальных ускорителей.
- Эффективность обучения: Архитектура YOLO11 позволяет быстрее сходиться в процессе обучения, экономя ценное вычислительное время и ресурсы.
Приложения в реальном мире
В чем YOLO11 преуспевает
- Умные города: Благодаря высокой скорости и точности YOLO11 идеально подходит для систем управления дорожным движением и мониторинга безопасности пешеходов.
- Производство: Возможность сегментации и обнаружения OBB делает его идеальным для контроля качества и обнаружения дефектов в ориентированных деталях на сборочных линиях.
- Здравоохранение: Высокая точность при эффективном использовании ресурсов позволяет проводить анализ медицинских изображений на периферийных устройствах в клинических условиях.
Где используется YOLOX
- Устаревшие системы: Проекты, созданные примерно в 2021-2022 годах, которые еще не перешли на более новые архитектуры.
- Академические исследования: Исследования, специально изучающие эффекты отсоединенных головок или безъякорных механизмов в отдельности.
Пользовательский опыт и сравнение кода
Ultralytics уделяет первостепенное внимание упрощению работы пользователей. В то время как YOLOX часто требует сложных конфигурационных файлов и ручной настройки, YOLO11 может быть использован с минимальным кодом.
Использование Ultralytics YOLO11
Разработчики могут загружать предварительно обученную модель, проводить расчеты и даже тренироваться на пользовательских данных с помощью нескольких строк языка Python:
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Display results
results[0].show()
Легкость обучения
Обучение модели YOLO11 на пользовательском наборе данных не менее просто. Библиотека автоматически справляется с расширением данных, настройкой гиперпараметров и ведением журнала.
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
Заключение
Хотя YOLOX сыграл ключевую роль в популяризации безъякорного обнаружения объектов, Ultralytics YOLO11 представляет собой лучший выбор для современной разработки ИИ.
YOLO11 превосходит YOLOX по точности, скорости и эффективности, предлагая при этом надежную и хорошо поддерживаемую экосистему. Его универсальность в решении различных задач технического зрения - отсутствие необходимости использовать различные библиотеки для обнаружения, сегментации и оценки позы - значительно снижает сложность разработки. Разработчикам, которые ищут перспективное и высокопроизводительное решение, опирающееся на активную поддержку сообщества и исчерпывающую документацию, рекомендуется использовать YOLO11 .
Узнайте больше моделей
Изучите сравнение YOLO11 с другими ведущими архитектурами, чтобы найти оптимальный вариант для ваших нужд: