Link to this sectionYOLOv5 против YOLO11#
При выборе подходящей архитектуры компьютерного зрения для нового проекта критически важно понимать эволюцию современных моделей. Переход от ранних архитектур к современным унифицированным фреймворкам подчеркивает значительные скачки как в алгоритмической эффективности, так и в опыте разработки. Это руководство содержит глубокий технический анализ двух знаковых моделей, разработанных Ultralytics: новаторской YOLOv5 и высокотехнологичной YOLO11.
Link to this sectionВведение в модели#
Обе эти архитектуры представляют собой важные вехи в области обнаружения объектов в реальном времени, предлагая различные преимущества в зависимости от среды развертывания и требований к поддержке унаследованных систем.
Link to this sectionYOLOv5: Рабочая лошадка индустрии#
Выпущенная летом 2020 года, YOLOv5 быстро стала отраслевым стандартом благодаря своей нативной реализации на PyTorch, что значительно снизило порог вхождения для обучения и развертывания. Она отошла от сложных C-фреймворков Darknet своих предшественников, предложив Pythonic-подход к построению моделей.
- Авторы: Glenn Jocher
- Организация: Ultralytics
- Дата: 2020-06-26
- GitHub: ultralytics/yolov5
- Документация: документация YOLOv5
YOLOv5 заложила прочную основу для простоты использования и представила мощные методологии обучения, включая продвинутую аугментацию данных мозаикой и авто-анкоринг. Она остается невероятно популярной среди исследователей, создающих решения на базе хорошо документированной и тщательно протестированной кодовой базы.
Link to this sectionYOLO11: Унифицированный фреймворк компьютерного зрения#
Основываясь на годах обратной связи и архитектурных исследований, YOLO11 была представлена как часть унифицированного фреймворка, способного нативно обрабатывать несколько задач компьютерного зрения. Выходя за рамки простых ограничивающих рамок, она была разработана с нуля для максимальной универсальности и эффективности.
- Авторы: Glenn Jocher и Jing Qiu
- Организация: Ultralytics
- Дата: 2024-09-27
- GitHub: ultralytics/ultralytics
- Документация: Документация YOLO11
YOLO11 предлагает оптимизированный пользовательский опыт через Python-пакет ultralytics, обладая простым API, который объединяет обнаружение объектов, сегментацию экземпляров, классификацию, оценку позы и ориентированные ограничивающие рамки (OBB). Она достигает исключительно выгодного баланса между скоростью и точностью, что делает ее идеальной для различных сценариев развертывания в реальном мире.
Обе модели выигрывают от хорошо поддерживаемой экосистемы, предоставляемой Ultralytics Platform. Эта интегрированная среда упрощает аннотирование наборов данных, облачное обучение и экспорт моделей на различные целевые аппаратные платформы.
Link to this sectionСравнение производительности и метрик#
Прямое сравнение этих моделей показывает, как архитектурные доработки преобразуются в ощутимый прирост производительности. В таблице ниже показана средняя точность (mAP), оцененная на наборе данных COCO, наряду со скоростью вывода на CPU и GPU, а также количеством параметров.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Link to this sectionАнализ результатов#
Показатели подчеркивают явный скачок в балансе производительности, достигнутом в YOLO11. Например, модель YOLO11n (nano) достигает 39,5% mAP по сравнению с 28,0% у YOLOv5n, одновременно сокращая время вывода на CPU при экспорте через ONNX. Кроме того, YOLO11 поддерживает значительно более низкие требования к памяти во время обучения по сравнению с тяжелыми моделями на базе Transformer, что делает ее легко доступной для развертывания на потребительском оборудовании и граничных устройствах.
Link to this sectionАрхитектурные различия#
Улучшения производительности в YOLO11 обусловлены несколькими ключевыми архитектурными изменениями. В то время как YOLOv5 использовала стандартный backbone CSPNet с модулями C3, YOLO11 представила более эффективные блоки извлечения признаков, такие как C2f и более поздний C3k2, которые оптимизируют градиентный поток и снижают вычислительные затраты.
YOLO11 также получила существенно доработанную «голову» (head). Отходя от анкорного дизайна старых моделей, новые архитектуры Ultralytics применяют подход без анкоров (anchor-free). Это сокращает количество предсказаний рамок, оптимизируя конвейер постобработки и улучшая способность модели к обобщению на разных масштабах и соотношениях сторон. Кроме того, эти модели обладают превосходной эффективностью обучения и легкодоступными предобученными весами, которые ускоряют сходимость при дообучении на пользовательских данных.
Link to this sectionРеализация и примеры кода#
Одной из выдающихся особенностей экосистемы Ultralytics является ее простота. В то время как YOLOv5 популяризировала использование torch.hub для быстрого вывода, YOLO11 идет еще дальше с унифицированным Python-пакетом ultralytics.
Link to this sectionОбучение с YOLO11#
Загрузка, обучение и валидация модели требуют минимум шаблонного кода. API легко справляется с настройкой гиперпараметров и управлением моделями.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11s.pt")
# Train on a custom dataset for 50 epochs
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run fast inference and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
# Easily export the model to TensorRT for hardware acceleration
model.export(format="engine")Link to this sectionУнаследованный вывод с YOLOv5#
Если ты поддерживаешь старый конвейер, YOLOv5 напрямую интегрируется с механизмом загрузки PyTorch, что позволяет легко внедрить ее в существующие скрипты вывода.
import torch
# Load a custom or pretrained YOLOv5 model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Perform inference on an image URL
results = model("https://ultralytics.com/images/zidane.jpg")
# Print prediction details to the console
results.print()Обе модели поддерживают широкие форматы экспорта. Независимо от того, нацеливаешься ли ты на NVIDIA Jetson с использованием TensorRT или на iOS-приложение с использованием CoreML, процесс развертывания подробно документирован и поддерживается сообществом.
Link to this sectionИдеальные варианты использования#
Выбор между этими моделями во многом зависит от стадии жизненного цикла твоего проекта и конкретных требований.
Link to this sectionКогда стоит выбрать YOLOv5#
- Поддержка унаследованных кодовых баз: Если твоя производственная среда сильно настроена под структуру репозитория YOLOv5 или специфические методы эволюции гиперпараметров.
- Академические эталоны: При публикации исследований, требующих прямого бенчмаркинга по сравнению с установленными стандартами компьютерного зрения 2020-2022 годов.
Link to this sectionКогда выбирать YOLO11#
- Многозадачные проекты: Когда твое приложение требует сочетания таких задач, как оценка позы и сегментация экземпляров, с использованием единого унифицированного API.
- Граничные развертывания (Edge Deployments): Для сценариев граничных вычислений, где критически важно получить максимальный mAP при заданном вычислительном бюджете (FLOPs).
- Коммерческие AI-решения: Идеально подходит для корпоративных приложений в розничной торговле и безопасности, используя надежную поддержку Ultralytics Platform.
Link to this sectionСледующее поколение: Ultralytics YOLO26#
Хотя YOLO11 представляет собой фантастический баланс скорости и точности, область искусственного интеллекта развивается быстро. Разработчикам, начинающим новые проекты сегодня, мы настоятельно рекомендуем изучить новейший стандарт в Vision AI: Ultralytics YOLO26.
Выпущенная в январе 2026 года, YOLO26 представляет прорывные достижения, разработанные специально для нужд современного развертывания:
- End-to-End дизайн без NMS: Развивая концепции, впервые примененные в YOLOv10, YOLO26 является нативно сквозной (end-to-end). Это исключает необходимость в постобработке Non-Maximum Suppression (NMS), значительно упрощая конвейеры развертывания и снижая задержку.
- Оптимизатор MuSGD: Вдохновленный инновациями в обучении LLM из таких моделей, как Kimi K2 от Moonshot AI, этот гибрид SGD и Muon обеспечивает невероятно стабильное обучение и значительно более быструю сходимость.
- Беспрецедентная скорость на CPU: Удалив Distribution Focal Loss (DFL), YOLO26 достигает до 43% более быстрого вывода на CPU, что делает ее абсолютно лучшим выбором для граничных устройств и сред без выделенных GPU.
- Продвинутые функции потерь: Интеграция ProgLoss и STAL дает заметные улучшения в распознавании мелких объектов, что критически важно для аналитики дронов, интернета вещей (IoT) и робототехники.
- Специфические для задач улучшения: Представлены специализированные оптимизации, такие как оценка остаточного логарифмического правдоподобия (RLE) для оценки позы и специализированная функция потерь угла для ориентированных ограничивающих рамок, обеспечивающие превосходную производительность во всех задачах компьютерного зрения.
Для пользователей, интересующихся специализированными архитектурами помимо стандартного обнаружения объектов, ты можешь изучить такие модели, как RT-DETR для обнаружения на базе Transformer или YOLO-World для трекинга и обнаружения с открытым словарем. Использование этих хорошо поддерживаемых и высокооптимизированных инструментов гарантирует, что твои конвейеры компьютерного зрения останутся эффективными, масштабируемыми и передовыми.