Link to this sectionYOLOv10 против YOLOv5: всестороннее техническое сравнение#
Выбор правильной архитектуры нейронной сети критически важен для внедрения успешных конвейеров computer vision в производство. Эта страница содержит подробный технический анализ, сравнивающий YOLOv10 и YOLOv5 — две модели, оказавшие огромное влияние на эволюцию детектирования объектов в реальном времени. Хотя обе модели внесли значительный вклад в сообщество ИИ, они представляют разные эпохи и подходы к проектированию архитектур глубокого обучения.
Это руководство оценивает данные архитектуры на основе mean Average Precision (mAP), задержки вывода, эффективности параметров и поддержки экосистемы, помогая тебе выбрать лучшую модель для твоих задач развертывания.
Link to this sectionОбзор моделей#
Link to this sectionYOLOv10: детектирование объектов в реальном времени от начала до конца#
Разработанная исследователями из Университета Цинхуа, YOLOv10 представила новый подход к детектированию объектов, исключив необходимость в постобработке.
- Авторы: Ao Wang, Hui Chen, Lihao Liu и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- Научная статья: arXiv:2405.14458
- Исходный код: Репозиторий YOLOv10 на GitHub
Определяющим прорывом YOLOv10 является её End-to-End NMS-Free Design. Исторически модели YOLO полагались на Non-Maximum Suppression (NMS) для фильтрации избыточных ограничивающих рамок. YOLOv10 использует согласованные двойные назначения для обучения без NMS, что радикально снижает вариативность задержки вывода и упрощает логику развертывания. Кроме того, архитектура отличается дизайном, ориентированным на целостную эффективность и точность, что тщательно оптимизирует различные компоненты для сокращения вычислительной избыточности.
Link to this sectionYOLOv5: отраслевой стандарт удобства использования#
Выпущенная вскоре после создания репозитория Ultralytics PyTorch, YOLOv5 переопределила ожидания разработчиков от open-source фреймворка компьютерного зрения. Она остается одной из самых широко развертываемых архитектур в мире.
- Автор: Гленн Джочер
- Организация: Ultralytics
- Дата: 26.06.2020
- Исходный код: Репозиторий YOLOv5 на GitHub
YOLOv5 ценится за простоту использования и высококачественную поддерживаемую экосистему. Написанная полностью на PyTorch, она предлагает бесшовный опыт "от нуля до результата" с готовой поддержкой обучения, валидации и экспорта в форматы, такие как ONNX и TensorRT. В отличие от YOLOv10, которая фокусируется преимущественно на чистом детектировании объектов, YOLOv5 демонстрирует исключительную универсальность, поддерживая instance segmentation и image classification в рамках единого Python API.
Link to this sectionСравнение производительности и метрик#
Визуализация зависимости между скоростью и точностью необходима для выявления моделей, предлагающих наилучшую точность при заданном ограничении скорости. Понимание этих performance metrics является основополагающим для выбора модели, соответствующей твоим аппаратным ограничениям.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Link to this sectionТехнический анализ#
- Точность (mAP): YOLOv10 демонстрирует явное поколенческое преимущество в точности. Например, модель YOLOv10-X достигает 54.4% mAPval, превосходя YOLOv5x (50.7% mAP). Этот скачок во многом обусловлен стратегией обучения без NMS и архитектурными улучшениями, внедренными в 2024 году.
- Задержка вывода (Inference Latency): Хотя модели YOLOv5 исключительно быстры на бенчмарках T4 TensorRT (например, YOLOv5n — 1.12 мс), YOLOv10 полностью исключает этап постобработки NMS. В практических end-to-end развертываниях дизайн YOLOv10 без NMS обеспечивает более стабильную и детерминированную задержку, что критически важно для приложений реального времени, таких как autonomous vehicles и робототехника.
- Эффективность параметров: Модели YOLOv10 поддерживают высококонкурентный баланс производительности. YOLOv10-S достигает 46.7% mAP при всего 7.2M параметров, тогда как YOLOv5s достигает 37.4% mAP при 9.1M параметров.
При развертывании на устройствах edge AI, таких как NVIDIA Jetson, модели без логики NMS (как YOLOv10 и YOLO26) часто компилируются в TensorRT чище, избегая операций возврата к CPU.
Link to this sectionВарианты использования и рекомендации#
Выбор между YOLOv10 и YOLOv5 зависит от твоих конкретных требований к проекту, ограничений развертывания и предпочтений в экосистеме.
Link to this sectionКогда выбирать YOLOv10#
YOLOv10 — хороший выбор для:
- Обнаружение в реальном времени без NMS: Приложения, которые выигрывают от комплексного обнаружения без Non-Maximum Suppression, что снижает сложность развертывания.
- Сбалансированные компромиссы скорости и точности: Проекты, требующие хорошего баланса между скоростью вывода и точностью обнаружения для моделей различных масштабов.
- Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.
Link to this sectionКогда выбирать YOLOv5#
YOLOv5 рекомендуется для:
- Проверенных производственных систем: Существующих развертываний, где ценятся долгая история стабильности YOLOv5, обширная документация и огромная поддержка сообщества.
- Обучения в условиях ограниченных ресурсов: Сред с ограниченными GPU-ресурсами, где эффективный конвейер обучения YOLOv5 и меньшие требования к памяти являются преимуществом.
- Широкой поддержки форматов экспорта: Проектов, требующих развертывания во множестве форматов, включая ONNX, TensorRT, CoreML и TFLite.
Link to this sectionКогда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и опыта разработчика:
- Периферийное развертывание без NMS: Приложениям требуется стабильный вывод с низкой задержкой без сложности постобработки Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного GPU-ускорения, где преимущество YOLO26 в виде до 43% более быстрого вывода на CPU является решающим.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэросъемка с дронов или анализ данных IoT-датчиков, где ProgLoss и STAL значительно повышают точность распознавания крошечных объектов.
Link to this sectionПреимущество Ultralytics#
Хотя YOLOv10 предлагает отличные возможности детектирования, опора на академические репозитории иногда может усложнить производственные конвейеры. Используя официальный Ultralytics Python package, ты получаешь доступ к единой экосистеме, поддерживающей как YOLOv5, так и YOLOv10, наряду с продвинутыми функциями.
- Эффективность обучения: Архитектуры Ultralytics YOLO глубоко оптимизированы для снижения memory requirements во время обучения. В отличие от тяжелых Transformer-моделей (таких как RT-DETR), требующих огромного объема памяти CUDA, ты можешь с комфортом обучать YOLOv5 и YOLOv10 на стандартных потребительских GPU.
- Интеграция с экосистемой: Интеграция с Ultralytics Platform позволяет разработчикам визуально управлять наборами данных, отслеживать эксперименты с помощью Weights & Biases и автоматически настраивать гиперпараметры.
Link to this sectionПример кода: бесшовное обучение#
Используя библиотеку Ultralytics, переключение между этими архитектурами так же просто, как изменение строки модели. Конвейер обучения автоматически обрабатывает аугментацию данных, масштабирование и конфигурацию оптимизатора.
from ultralytics import YOLO
# To use YOLOv5:
# model = YOLO("yolov5s.pt")
# To use YOLOv10:
model = YOLO("yolov10s.pt")
# Train the model on a custom dataset
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device=0, # Use GPU 0
)
# Export the trained model to ONNX format
path = model.export(format="onnx")Link to this sectionСледующее поколение: Ultralytics YOLO26#
Если ты начинаешь новый проект по machine learning сегодня, мы настоятельно рекомендуем оценить новейшую Ultralytics YOLO26. Выпущенная в январе 2026 года, она представляет собой абсолютное состояние технологий, объединяя лучшие инновации последних пяти лет.
YOLO26 нативно включает End-to-End NMS-Free Design, впервые примененный в YOLOv10, обеспечивая быстрое и детерминированное развертывание. Более того, YOLO26 представляет несколько критических прорывов:
- До 43% более быстрый вывод на CPU: Удалив модуль Distribution Focal Loss (DFL), YOLO26 достигает значительного ускорения на стандартных CPU, что делает её первоклассным выбором для mobile deployment и маломощных IoT-сенсоров.
- Оптимизатор MuSGD: Вдохновленный техниками обучения Large Language Model (LLM), такими как Kimi K2 от Moonshot AI, YOLO26 использует гибрид SGD и Muon. Это гарантирует невероятно стабильные запуски обучения и значительно ускоренную сходимость по сравнению с оптимизаторами AdamW, используемыми в YOLOv10.
- ProgLoss + STAL: Эти продвинутые функции потерь дают заметные улучшения в распознавании мелких объектов, что критически важно для drone imagery и приложений воздушной безопасности.
- Мастерство в специфических задачах: В то время как YOLOv10 — это строго детектор ограничивающих рамок, YOLO26 предлагает специализированные архитектурные улучшения для всех задач, включая Residual Log-Likelihood Estimation (RLE) для поз и специализированные потери по углу для ориентированных ограничивающих рамок (OBB).
Если ты изучаешь более широкий ландшафт детектирования объектов, тебе может быть интересно сравнить эти архитектуры с другими фреймворками. Ознакомься с нашими глубокими разборами YOLO11 vs EfficientDet или RT-DETR vs YOLOv8 для получения более полных бенчмарков.
Независимо от того, полагаешься ли ты на надежное наследие YOLOv5, инновации без NMS в YOLOv10 или непревзойденную производительность YOLO26, экосистема Ultralytics предоставляет инструменты, необходимые для быстрого и эффективного воплощения твоих приложений компьютерного зрения в жизнь.