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

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

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

YOLO: нейронная архитектура для поиска эффективности краев

YOLO был разработан компанией Alibaba Group с особым акцентом на максимальную производительность для промышленных приложений. Ее отличительной особенностью является использование нейронной архитектуры (NAS) для автоматизации проектирования магистрали, обеспечивающей оптимальную эффективность.

Архитектурные инновации

В YOLO реализовано несколько передовых технологий, направленных на снижение вычислительных затрат при сохранении высокой точности:

  1. Магистраль MAE-NAS (GiraffeNet): В отличие от традиционных магистралей, создаваемых вручную, в YOLO используется подход NAS с учетом эффективности метода (MAE). В результате была создана серия магистралей под названием GiraffeNet, которая обеспечивает превосходный компромисс между операциями с плавающей точкой (FLOPs) и задержкой при различных аппаратных ограничениях.
  2. Эффективная сеть RepGFPN: В модели используется обобщенная сеть пирамид признаков (GFPN), оптимизированная с помощью репараметризации. Эта "RepGFPN" позволяет эффективно объединять разномасштабные признаки, что необходимо для обнаружения объектов разного размера без больших вычислительных затрат, связанных со стандартными FPN.
  3. ZeroHead: новая конструкция "ZeroHead" значительно упрощает головку обнаружения. Разделяя задачи классификации и регрессии и удаляя сложный специфический слой, она сводит к нулю количество параметров головки во время вывода, экономя память и повышая скорость.
  4. AlignedOTA: Для повышения стабильности и точности обучения в YOLO используется AlignedOTA - стратегия динамического присвоения меток, которая решает проблему несоответствия между достоверностью классификации и точностью регрессии.

Сильные стороны и примеры использования

YOLO отлично подходит для сред, где задержка является критичной. Его более компактные варианты (Tiny/Small) особенно эффективны для развертывания пограничного ИИ.

  • Промышленная автоматизация: Идеально подходит для высокоскоростных сборочных линий, где счет идет на миллисекунды.
  • Мобильные приложения: Малое количество параметров позволяет использовать его на смартфонах с ограниченной вычислительной мощностью.

Узнайте больше о DAMO-YOLO

YOLOv7: оптимизация точности в реальном времени

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

Архитектурные инновации

В YOLOv7 появились методы "bag-of-freebies", которые повышают точность в процессе обучения, не влияя на структуру модели вывода:

  1. E-ELAN (Extended Efficient Layer Aggregation Network): Эта архитектура управляет кратчайшим и длинным градиентными путями, позволяя сети изучать более разнообразные характеристики. Она улучшает способность к обучению "кардинальности" без разрушения исходного состояния градиентного пути.
  2. Масштабирование модели для моделей на основе конкатенации: YOLOv7 предлагает комбинированный метод масштабирования, который одновременно масштабирует глубину и ширину для архитектур на основе конкатенации, обеспечивая оптимальное использование параметров.
  3. Обучаемый мешок бесплатных вещей: Используются такие методы, как плановая перепараметризация и наблюдение за вспомогательными головами (от грубого к тонкому). Они повышают устойчивость и точность модели во время обучения, но объединяются или отбрасываются во время вывода, сохраняя быстродействие модели.

Сильные стороны и примеры использования

YOLOv7 - это мощный инструмент для обнаружения объектов общего назначения, обеспечивающий превосходную среднюю точность (mAP) на стандартных наборах данных, таких как MS COCO.

  • Наблюдение в "умном городе": Высокая точность позволяет надежно обнаруживать пешеходов и транспортные средства в сложных городских условиях.
  • Автономные системы: Подходит для робототехники и беспилотников, требующих надежного обнаружения на больших расстояниях, где полезны входные данные с более высоким разрешением.

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

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

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Полученные данные показывают, что для сильно ограниченных сред YOLO предлагает очень легкое решение (8,5 М параметров для миниатюрной версии). Однако, YOLOv7 превосходит по точности свой X-вариант, достигая 53,1 % mAP, хотя и с большими вычислительными затратами.

Архитектурные компромиссы

В то время как основанная на NAS магистраль YOLO оптимизирована именно под задержку, ручной архитектурный дизайн YOLOv7 сосредоточен на эффективности градиентного потока. Пользователям следует провести бенчмарки на своем конкретном оборудовании, поскольку теоретические FLOP не всегда идеально соотносятся со скоростью вывода в реальном мире.

Преимущество Ultralytics : Зачем обновляться?

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

Модели Ultralytics разработаны не просто как исследовательские артефакты, а как комплексные производственные инструменты. Они решают проблемы "последней мили" в развертывании ИИ - удобство использования, интеграция и сопровождение.

Ключевые преимущества моделей Ultralytics

  • Простота использования: Благодаря унифицированному API и CLI на Python вы можете обучить самую современную модель всего за несколько строк кода. Нет необходимости вручную настраивать сложные конфигурационные файлы или бороться с зависимостями.
  • Хорошо поддерживаемая экосистема: Ultralytics обеспечивает процветающую экосистему с частыми обновлениями, быстро выявляя и исправляя ошибки. Поддержка легко доступна благодаря обширной документации и активным каналам сообщества.
  • Баланс производительности: Такие модели, как YOLO11 используют усовершенствованные безъякорные головки обнаружения и оптимизированные основы для достижения превосходного соотношения точности и скорости по сравнению с YOLOv7 и YOLO.
  • Универсальность: В отличие от старых моделей, часто ограничивающихся обнаружением, Ultralytics YOLO поддерживает сегментацию экземпляров, оценку позы, ориентированное обнаружение объектов (OBB) и классификацию "из коробки".
  • Эффективность обучения: Предварительно обученные веса и оптимизированные загрузчики данных обеспечивают более быструю сходимость, экономя время и энергию GPU .
from ultralytics import YOLO

# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")

# Train on COCO8 dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

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

Заключение

У YOLO и YOLOv7 есть свои достоинства. YOLO является сильным кандидатом для проектов, в которых скорость вывода граней является основным ограничением, используя NAS для экономии миллисекунд. YOLOv7 остается надежным выбором для исследователей, которым требуется высокоточное обнаружение с проверенной архитектурной линией.

Однако для большинства коммерческих и исследовательских приложений сегодня используется Ultralytics YOLO экосистема Ultralytics YOLO предлагает превосходный опыт. Сочетая современную производительность с непревзойденной простотой использования и универсальностью, модели Ultralytics позволяют разработчикам сосредоточиться на создании ценностей, а не на отладке кода. Вне зависимости от того, развертываете ли вы систему на облачном сервере или на периферийном устройстве, таком как NVIDIA Jetson, Ultralytics обеспечивает самый простой путь к производству.

Другие модели

Если вы изучаете архитектуры обнаружения объектов, вас также могут заинтересовать эти модели:

  • Ultralytics YOLOv8: универсальная модель, поддерживающая задачи обнаружения, сегментации и позирования.
  • Ultralytics YOLO11: последняя эволюция в серии YOLO , предлагающая передовую эффективность.
  • RT-DETR: детектор на основе трансформатора реального времени, позволяющий избежать задержек NMS .
  • YOLOv9: программируемая градиентная информация (PGI) для улучшения обучения.
  • YOLOv10: фокусируется на сквозном обучении NMS для снижения задержек.

Комментарии