YOLOv5 vs YOLO11: Подробное техническое сравнение
При выборе подходящей архитектуры компьютерного зрения для нового проекта крайне важно понимать эволюцию современных моделей. Прогресс от ранних архитектур к современным унифицированным фреймворкам подчеркивает значительные скачки как в алгоритмической эффективности, так и в опыте разработчиков. Это руководство предоставляет углубленное техническое сравнение двух знаковых моделей, разработанных Ultralytics: новаторской YOLOv5 и высокоразвитой YOLO11.
Введение в модели
Обе эти архитектуры представляют собой значимые вехи в области обнаружения объектов в реальном времени, предлагая различные преимущества в зависимости от вашей среды развертывания и требований к унаследованным системам.
YOLOv5: Рабочая лошадка индустрии
Выпущенный летом 2020 года, YOLOv5 быстро стал отраслевым стандартом благодаря своей нативной реализации на PyTorch, что значительно снизило порог входа для обучения и развертывания. Он отошел от сложных C-фреймворков Darknet своих предшественников, предложив «питонический» подход к созданию моделей.
- Авторы: Гленн Джокер
- Организация:Ultralytics
- Дата: 2020-06-26
- GitHub:ultralytics/yolov5
- Документация:Документация YOLOv5
YOLOv5 установил прочную основу для простоты использования и представил мощные методологии обучения, включая продвинутую мозаичную аугментацию данных и авто-анкеринг. Он остается невероятно популярным среди исследователей, строящих свои работы на хорошо документированной и тщательно протестированной кодовой базе.
YOLO11: Единая платформа для компьютерного зрения
Основываясь на многолетних отзывах и архитектурных исследованиях, YOLO11 был представлен как часть унифицированного фреймворка, способного нативно обрабатывать несколько задач компьютерного зрения. Выходя за рамки просто ограничивающих рамок, он был разработан с нуля для максимальной универсальности и эффективности.
- Авторы: Гленн Джочер и Цзин Цю
- Организация:Ultralytics
- Дата: 2024-09-27
- GitHub:ultralytics/ultralytics
- Документация:Документация YOLO11
YOLO11 предлагает оптимизированный пользовательский опыт через ultralytics Пакет python, обладающий простым API, который унифицирует обнаружения объектов, instance segmentation, классификацию, оценку позы и ориентированные ограничивающие рамки (OBB). Он обеспечивает очень выгодный компромисс между скоростью и точностью, что делает его идеальным для различных сценариев развертывания в реальном мире.
Интегрированная платформа
Обе модели выигрывают от хорошо поддерживаемой экосистемы, предоставляемой платформой Ultralytics. Эта интегрированная среда упрощает аннотацию наборов данных, облачное обучение и экспорт моделей для различных аппаратных платформ.
Сравнение производительности и метрик
Прямое сравнение этих моделей показывает, как архитектурные усовершенствования приводят к ощутимым приростам производительности. В таблице ниже показана средняя точность (mAP), оцененная на наборе данных COCO, наряду со скоростью инференса на CPU и GPU и количеством параметров.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
Анализ результатов
Метрики подчеркивают явный скачок в балансе производительности, достигнутом YOLO11. Например, модель YOLO11n (nano) достигает 39.5% mAP по сравнению с 28.0% у YOLOv5n, одновременно сокращая время вывода на CPU при экспорте через ONNX. Кроме того, YOLO11 поддерживает значительно более низкие требования к памяти во время обучения по сравнению с тяжелыми моделями на основе трансформеров, что делает ее очень доступной для развертывания на потребительском оборудовании и периферийных устройствах.
Архитектурные различия
Улучшения производительности в YOLO11 обусловлены несколькими ключевыми архитектурными эволюциями. В то время как YOLOv5 использовал стандартный backbone CSPNet с модулями C3, YOLO11 представил более эффективные блоки извлечения признаков, такие как C2f, а затем C3k2, которые оптимизируют поток градиентов и снижают вычислительные издержки.
YOLO11 также имеет значительно усовершенствованную голову. Отходя от якорного дизайна старых моделей, новые архитектуры Ultralytics используют безякорный подход. Это уменьшает количество предсказаний ограничивающих рамок, оптимизирует конвейер постобработки и улучшает способность модели к обобщению на различных масштабах и соотношениях сторон. Кроме того, эти модели отличаются превосходной эффективностью обучения и легкодоступными предварительно обученными весами, которые ускоряют сходимость тонко настроенных наборов данных.
Примеры реализации и кода
Одной из выдающихся особенностей экосистемы Ultralytics является ее простота. В то время как YOLOv5 популяризировал использование torch.hub для быстрого вывода YOLO11 делает шаг вперед с унифицированным ultralytics пакет python.
Обучение с 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")
Устаревший вывод с 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, процесс развертывания тщательно задокументирован и поддерживается сообществом.
Идеальные варианты использования
Выбор между этими моделями во многом зависит от стадии жизненного цикла вашего проекта и специфических требований.
Когда выбирать YOLOv5
- Поддержка устаревших кодовых баз: Если ваша производственная среда сильно настроена вокруг структуры репозитория YOLOv5 или конкретных методов эволюции гиперпараметров.
- Academic Baselines: При публикации исследований, требующих прямого сравнения с устоявшимися стандартами компьютерного зрения 2020-2022 годов.
Когда следует выбирать YOLO11
- Многозадачные проекты: Когда ваше приложение требует сочетания задач, таких как оценка позы и сегментация экземпляров, с использованием единого унифицированного API.
- Развертывание на периферийных устройствах: Для сценариев периферийных вычислений, где критически важно достичь максимального mAP при заданном вычислительном бюджете (FLOPs).
- Коммерческие решения на базе ИИ: Идеально подходит для корпоративных приложений в розничной торговле и безопасности, используя надежную поддержку Ultralytics Platform.
Следующее поколение: Ultralytics YOLO26
Хотя YOLO11 представляет собой фантастический баланс скорости и точности, область искусственного интеллекта быстро развивается. Для разработчиков, начинающих новые проекты сегодня, мы настоятельно рекомендуем изучить новейший стандарт в области визуального ИИ: Ultralytics YOLO26.
Выпущенный в январе 2026 года, YOLO26 представляет прорывные достижения, меняющие парадигму, разработанные специально для современных требований развертывания:
- Сквозная архитектура без NMS: Основываясь на концепциях, впервые примененных в YOLOv10, YOLO26 изначально является сквозной. Это устраняет необходимость в постобработке 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 для обнаружения на основе трансформеров, или YOLO-World для отслеживания и обнаружения с открытым словарем. Использование этих хорошо поддерживаемых, высокооптимизированных инструментов гарантирует, что ваши конвейеры компьютерного зрения останутся эффективными, масштабируемыми и опережающими время.