Перейти к содержанию

YOLOv7 против YOLOv5: подробное техническое сравнение

Выбор правильной архитектуры для detect объектов — это критически важное решение, которое влияет на скорость, точность и возможность развертывания ваших проектов в области компьютерного зрения. На этой странице представлено всестороннее техническое сравнение между YOLOv7 и Ultralytics YOLOv5 — двумя влиятельными моделями в линейке YOLO. Мы углубляемся в их архитектурные инновации, сравнительные тесты производительности и идеальные варианты использования, чтобы помочь вам выбрать наиболее подходящий вариант для вашего приложения.

В то время как YOLOv7 представила значительные академические достижения в 2022 году, Ultralytics YOLOv5 остается доминирующей силой в отрасли благодаря своей беспрецедентной простоте использования, надежности и гибкости развертывания. Для тех, кто ищет самые последние достижения в производительности, мы также рассмотрим, как эти модели прокладывают путь к передовой Ultralytics YOLO11.

Сравнение метрик производительности

В следующей таблице показаны компромиссы в производительности между двумя архитектурами. В то время как YOLOv7 стремится к более высокому среднему значению точности (mAP), YOLOv5 предлагает явные преимущества в скорости инференса и меньшее количество параметров для конкретных размеров моделей.

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

YOLOv7: Расширение границ точности

Выпущенный в июле 2022 года YOLOv7 был разработан, чтобы установить новый уровень для детекторов объектов в реальном времени. В ней большое внимание уделяется оптимизации архитектуры для повышения точности без значительного увеличения стоимости выводов.

Авторы: Чен-Яо Ван, Алексей Бочковский и Хун-Юань Марк Ляо
Организация:Институт информатики, Academia Sinica, Тайвань
Дата: 2022-07-06
Arxiv:https://arxiv.org/abs/2207.02696
GitHub:https://github.com/WongKinYiu/yolov7
Документация:https://docs.ultralytics.com/models/yolov7/

Архитектура и Ключевые Инновации

YOLOv7 представляет несколько сложных архитектурных изменений, направленных на улучшение обучения признакам:

  • E-ELAN (Extended Efficient Layer Aggregation Network): Усовершенствованная структура backbone, которая улучшает способность сети к обучению, контролируя кратчайшие и длиннейшие градиентные пути. Это позволяет модели изучать более разнообразные функции.
  • Масштабирование модели для моделей на основе конкатенации: В отличие от стандартного масштабирования, YOLOv7 масштабирует глубину и ширину одновременно для архитектур на основе конкатенации, обеспечивая оптимальное использование ресурсов.
  • Обучаемые Bag-of-Freebies: Сюда входит запланированная репараметризованная свертка (RepConv) и обучение вспомогательной головы. Вспомогательные головы генерируют иерархические метки от грубого к точному, которые помогают направлять процесс обучения, но удаляются во время инференса для поддержания скорости.

Что такое 'Bag of Freebies'?

"Bag of Freebies" относится к набору методов обучения и техник увеличения данных, которые повышают точность модели detectирования объектов без увеличения стоимости inference. В YOLOv7 это включает в себя сложные стратегии, такие как Coarse-to-Fine Lead Guided Label Assignment.

Идеальные варианты использования для YOLOv7

Благодаря своей ориентации на высокую точность, YOLOv7 особенно хорошо подходит для:

  • Академические исследования: Сравнение с моделями SOTA, где важна каждая доля mAP.
  • Развертывание на высокопроизводительных GPU: Приложения, где доступно мощное оборудование (например, NVIDIA A100) для обработки больших размеров моделей и требований к памяти.
  • Статический анализ: Сценарии, в которых задержка в реальном времени менее важна, чем точность, например, анализ спутниковых снимков высокого разрешения или медицинских сканов.

Узнайте больше о YOLOv7

Ultralytics YOLOv5: Промышленный стандарт

Ultralytics YOLOv5 широко известен как одна из самых практичных и удобных моделей обнаружения объектов. С момента своего выпуска в 2020 году он стал основой бесчисленных коммерческих приложений благодаря балансу скорости, точности и инженерного совершенства.

Авторы: Гленн Джокер
Организация:Ultralytics
Дата: 2020-06-26
GitHub:https://github.com/ultralytics/yolov5
Документация:https://docs.ultralytics.com/models/yolov5/

Архитектура и преимущества экосистемы

YOLOv5 использует основу CSP-Darknet53 с PANet neck и головой YOLOv3, оптимизированную для различных целей развертывания. Однако его истинная сила заключается в экосистеме Ultralytics:

  • Простота использования: Известный своей философией «установи и работай», YOLOv5 позволяет разработчикам начать обучение на пользовательских наборах данных за считанные минуты. API интуитивно понятен, а документация исчерпывающая.
  • Эффективность обучения: YOLOv5 обычно требует меньше памяти CUDA во время обучения по сравнению с новыми, более сложными архитектурами, что делает его доступным для разработчиков со средними GPU.
  • Гибкость развертывания: Он поддерживает экспорт в один клик в ONNX, TensorRT, CoreML, TFLite и другие форматы, что облегчает развертывание на всем, от облачных серверов до мобильных телефонов.
  • Хорошо поддерживаемая экосистема: Благодаря частым обновлениям, исправлениям ошибок и огромному сообществу Ultralytics обеспечивает стабильность и безопасность модели для производственных сред.

Идеальные варианты использования для YOLOv5

YOLOv5 превосходен в реальных сценариях, требующих надежности и скорости:

  • Edge AI: Запуск на таких устройствах, как NVIDIA Jetson или Raspberry Pi из-за легковесного Nano (yolov5n) и Small (yolov5s) вариантов.
  • Мобильные приложения: Интеграция в приложения iOS и Android через CoreML и TFLite для вывода на устройстве.
  • Быстрое прототипирование: Стартапы и разработчики, которым необходимо быстро перейти от концепции к MVP, выигрывают от оптимизированного рабочего процесса.
  • Промышленная автоматизация: Надежный detect для производственных линий, где задержка и стабильность имеют первостепенное значение.

Узнайте больше о YOLOv5

Подробный сравнительный анализ

При выборе между YOLOv7 и YOLOv5 в игру вступают несколько технических факторов, выходящих за рамки простого показателя mAP.

1. Компромисс между скоростью и точностью

YOLOv7 достигает более высокой пиковой точности на наборе данных COCO. Например, YOLOv7x достигает 53,1% mAP по сравнению с 50,7% у YOLOv5x. Однако это достигается за счет усложнения. YOLOv5 предлагает более плавный градиент моделей; модель YOLOv5n (Nano) невероятно быстрая (73,6 мс скорость CPU) и легкая (2,6M параметров), создавая нишу для сред со сверхнизкими ресурсами, на которые YOLOv7 явно не нацелен с такой же детализацией.

2. Архитектура и сложность

YOLOv7 использует архитектуру на основе конкатенации с E-ELAN, что увеличивает пропускную способность памяти, необходимую во время обучения. Это может замедлить обучение и потребовать больше памяти, чем YOLOv5. В отличие от этого, Ultralytics YOLOv5 использует оптимизированную архитектуру, которая хорошо оптимизирована для эффективности обучения, что позволяет быстрее сходиться и снижать использование памяти, что является значительным преимуществом для инженеров с ограниченным вычислительным бюджетом.

3. Удобство использования и опыт разработчиков

Именно здесь Ultralytics YOLOv5 действительно проявляет себя. Платформа Ultralytics предоставляет унифицированный опыт с надежными инструментами для аугментации данных, эволюции гиперпараметров и отслеживания экспериментов.

import torch

# Example: Loading YOLOv5s from PyTorch Hub for inference
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")

# Print results
results.print()

В то время как у YOLOv7 есть репозиторий, ему не хватает отлаженных, готовых к производству конвейеров CI/CD, обширных руководств по интеграции и поддержки сообщества, которые поддерживают экосистему Ultralytics.

4. Универсальность

Хотя обе модели в первую очередь являются архитектурами для обнаружения объектов, экосистема Ultralytics, окружающая YOLOv5, развилась для бесшовной поддержки сегментации экземпляров и классификации изображений. YOLOv7 также поддерживает эти задачи, но часто требует различных веток или форков кода, в то время как Ultralytics предлагает более унифицированный подход.

Простое развертывание

Модели Ultralytics поддерживают широкий спектр форматов экспорта из коробки. Вы можете легко преобразовать свою обученную модель в TFLite для Android, CoreML для iOS или TensorRT для оптимизированного вывода GPU с помощью простой команды CLI или скрипта python.

Заключение: какую модель вам следует выбрать?

Выбор между YOLOv7 и YOLOv5 зависит от приоритетов вашего проекта:

  • Выберите YOLOv7, если ваше основное ограничение — максимальная точность, и вы работаете в исследовательской среде или на высокопроизводительном оборудовании, где скорость inference и объем памяти являются второстепенными проблемами.
  • Выберите Ultralytics YOLOv5, если вам нужно надежное, готовое к производству решение. Простота использования, эффективное обучение, низкая задержка на периферийных устройствах и массивная экосистема поддержки делают его превосходным выбором для большинства коммерческих приложений и разработчиков, начинающих свой путь в компьютерном зрении.

Взгляд в будущее: YOLO11

Хотя YOLOv5 и YOLOv7 являются отличными моделями, область компьютерного зрения развивается стремительными темпами. Разработчикам, стремящимся к лучшему из обоих миров — превзойти точность YOLOv7 и скорость/удобство использования YOLOv5, — мы настоятельно рекомендуем изучить Ultralytics YOLO11.

YOLO11 представляет собой последнюю эволюцию, отличающуюся не привязанной к anchor архитектурой, которая упрощает конвейер обучения и повышает производительность во всех задачах, включая detect, segment, оценку позы и ориентированные ограничивающие рамки (obb).

Изучите другие модели

Если вам интересно сравнить другие модели семейства YOLO, ознакомьтесь с этими связанными страницами:


Комментарии