YOLOv10 YOLO: эволюция архитектур обнаружения объектов в реальном времени
В быстро развивающейся области компьютерного зрения поиск оптимального баланса между задержкой и точностью стимулирует постоянные инновации. Двумя важными вехами на этом пути являются YOLOv10, известная своим революционным обучением NMS, и YOLO, в которой для повышения эффективности использовался поиск нейронной архитектуры (NAS). В этом сравнении рассматриваются архитектурные различия, показатели производительности и пригодность для современных приложений искусственного интеллекта.
Анализ метрик производительности
В следующей таблице представлено подробное сравнение ключевых показателей эффективности. YOLOv10 демонстрирует превосходную эффективность в использовании параметров и скорости вывода на современных графических процессорах, особенно в более крупных вариантах модели.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
YOLOv10: Пионер сквозных решений
Выпущенный в мае 2024 года исследователями из Университета Цинхуа, YOLOv10 внедрила парадигмальный сдвиг, устранив необходимость в немаксимальном подавлении (NMS). Эта архитектура решает проблему вариации задержки, часто вызываемой этапами постобработки в традиционных детекторах.
Ключевые архитектурные особенности
- ОбучениеNMS: использует последовательные двойные задания для обучения NMS, что позволяет модели напрямую прогнозировать одну ограничивающую рамку для каждого объекта. Это крайне важно для приложений, требующих предсказуемой задержки, таких как автономные транспортные средства или промышленная робототехника.
- Комплексный подход к эффективности и точности: Авторы, Ao Wang и др., оптимизировали различные компоненты, включая магистраль и головку, чтобы уменьшить избыточность вычислений.
- Легкая классификация: снижает нагрузку на ветвь классификации, которая часто является узким местом в детекторах без анкеров.
Вы можете запустить YOLOv10 черезPython Ultralytics , воспользовавшись преимуществами стандартизированного интерфейса.
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
results[0].show()
YOLO: поиск нейронных архитектур в большом масштабе
YOLO, разработанный Alibaba Group и выпущенный в ноябре 2022 года, фокусируется на автоматическом поиске эффективных архитектур. Используя Neural Architecture Search (NAS), команда стремилась найти оптимальную глубину и ширину для базовых структур обнаружения при строгих вычислительных ограничениях.
Ключевые архитектурные особенности
- MAE-NAS Backbone: использует многоцелевой эволюционный поиск для нахождения базовых структур, которые обеспечивают баланс между точностью обнаружения и скоростью вывода.
- Эффективный RepGFPN: конструкция с тяжелым шеей, которая улучшает слияние характеристик, что имеет решающее значение для обнаружения объектов в различных масштабах, например, при анализе аэрофотоснимков.
- ZeroHead: Упрощенная голова обнаружения, которая снижает сложность финальных слоев предсказания.
ХотяYOLO высокую производительность, его зависимость от сложных процессов NAS может затруднять переобучение или модификацию архитектуры для пользовательских наборов данных для среднестатистических разработчиков по сравнению с удобной конфигурацией Ultralytics .
Преимущество Ultralytics: Представляем YOLO26
Хотя YOLOv10 YOLO значительным шагом вперед, развитие в этой области продолжается. Ultralytics основан на наследии YOLOv10 , NMS, YOLOv10 интегрирует его в более надежную, готовую к производству экосистему.
Почему стоит выбрать Ultralytics?
Ultralytics хорошо поддерживаемую экосистему, которая гарантирует, что ваши модели будут работать не только сегодня, но и в будущем, по мере развития аппаратного и программного обеспечения. В отличие от многих академических репозиториев, Ultralytics постоянные обновления, обширную документацию и беспроблемную интеграцию с инструментами развертывания, такими как TensorRT и OpenVINO.
Инновации YOLO26
Для разработчиков, стремящихся к абсолютной скорости и точности, YOLO26 предлагает несколько важных усовершенствований по сравнению с предшествующими версиями:
- Сквозной NMS: Как и YOLOv10, YOLO26 изначально является сквозным. Однако он еще больше усовершенствует это, удаляя Distribution Focal Loss (DFL), что упрощает график модели для лучшей совместимости с периферийными устройствами и чипами с низким энергопотреблением.
- Оптимизатор MuSGD: Вдохновленный инновациями в области обучения LLM (в частности, Kimi K2 от Moonshot AI), YOLO26 использует оптимизатор MuSGD. Этот гибрид SGD Muon обеспечивает беспрецедентную стабильность обучения, позволяя ускорить сходимость и сократить GPU .
- CPU : YOLO26 специально оптимизирован для пограничных вычислений, обеспечивая до 43% более быстрое вычисление на ЦП. Это делает его идеальным выбором для приложений IoT, где графические процессоры недоступны.
- Улучшенные функции потерь: внедрение ProgLoss и STAL (Self-Taught Anchor Learning) значительно улучшает производительность при работе с небольшими объектами и сложными фонами.
Сравнительные варианты использования
Выбор подходящей модели в значительной степени зависит от конкретных ограничений развертывания и требований к рабочему процессу.
Когда использовать DAMO-YOLO
YOLO отличный вариант для исследований, связанных с поиском нейронных архитектур (NAS). Если в вашем проекте нужно изучить, как автоматические стратегии поиска влияют на извлечение признаков, или если вы тесно связаны с экосистемой Alibaba, эта модель даст вам ценную информацию. Ее модуль RepGFPN — отличный ориентир для исследований по слиянию признаков.
Когда использовать YOLOv10
YOLOv10 отлично YOLOv10 для приложений, в которых критически важно низкое отклонение задержки. Его конструкция NMS гарантирует стабильное время вывода независимо от количества обнаруженных объектов, что жизненно важно для систем безопасности, работающих в режиме реального времени.
- Наблюдение в реальном времени: стабильная частота кадров при съемке многолюдных сцен.
- Робототехника: предсказуемое время для контуров управления.
Почему YOLO26 — лучший выбор
Для большинства разработчиков и коммерческих приложений Ultralytics предлагает наиболее привлекательный пакет. Он сочетает в себе преимущества YOLOv10 , NMS, YOLOv10 превосходной эффективностью обучения и широкой поддержкой оборудования.
- Простота использования: обучение, проверка и развертывание с помощью одного Python .
- Универсальность: в отличие отYOLO, YOLO26 поддерживает полный набор задач, включая сегментацию экземпляров, оценку позы, классификацию и ориентированные ограничивающие прямоугольники (OBB).
- Эффективность использования памяти: YOLO26 требует значительно меньше CUDA во время обучения по сравнению с гибридными моделями трансформатора, что позволяет проводить обучение на графических процессорах потребительского уровня.
- Интеграция платформы: беспрепятственный экспорт в ONNX, CoreML и TFLite Ultralytics , что упрощает путь от прототипа до производства.
Пример кода: Рабочий процесс YOLO26
С Ultralytics переход на новейшие технологии не требует никаких усилий. Следующий фрагмент кода демонстрирует, как загрузить современную модель YOLO26, запустить инференцию и экспортировать ее для развертывания.
from ultralytics import YOLO
# Load the YOLO26s model (Small version)
model = YOLO("yolo26s.pt")
# Train on COCO8 dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for simplified deployment
model.export(format="onnx", opset=13)
Заключение
Как YOLOv10 YOLO ценный вклад в развитие области компьютерного зрения. YOLOv10 доказал жизнеспособность обнаружения NMS, а YOLO продемонстрировал мощь NAS. Однако Ultralytics объединяет эти достижения в комплексном, удобном и высокопроизводительном инструменте. Благодаря превосходной скорости, универсальности задач и поддержке надежной экосистемы, YOLO26 является рекомендуемым решением для разработчиков, создающих приложения искусственного интеллекта нового поколения.
Для более подробного изучения рекомендуем ознакомиться с YOLO11 или трансформаторной моделью RT-DETR .