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

YOLOv5 против YOLOv6.0: Баланс между зрелостью экосистемы и промышленной точностью

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

Ultralytics YOLOv5

Авторы: Гленн Джочер
Организация: Ultralytics
Дата: 2020-06-26
GitHub: yolov5
Docs: https:yolov5

С момента своего выхода в 2020 году YOLOv5 зарекомендовали себя как одна из самых популярных и надежных моделей AI в мире. Построенная на PyTorch в приоритете удобство использования, возможность экспорта и производительность "из коробки", что обеспечивает демократизацию доступа к современному искусственному интеллекту зрения.

Архитектура и экосистема

В YOLOv5 используется магистраль CSPDarknet в сочетании с шеей PANet и головой в стиле YOLOv3. Его архитектура основана на якорях, использующих якорные ящики для предсказания местоположения объектов. Ключевым отличием является интеграция в развитую экосистему. В отличие от многих исследовательских кодовых баз, YOLOv5 создавался как продукт для инженеров, обеспечивая беспрепятственный экспорт в такие форматы, как ONNX, CoreML и TFLite, что делает его исключительно универсальным для развертывания на мобильных устройствах и на границах.

Основные сильные стороны

  • Простота использования:YOLOv5 ОпытYOLOv5 " определяется его простотой. Рабочие процессы - от обучения пользовательских наборов данных до проведения выводов - оптимизированы и хорошо документированы.
  • Хорошо поддерживаемая экосистема: Пользователи выигрывают от активной поддержки, частых обновлений и большого сообщества. Интеграция с такими инструментами MLOps, как Weights & Biases и Comet являются родными.
  • Универсальность: Помимо стандартного обнаружения, хранилище поддерживает сегментацию экземпляров и классификацию изображений, обеспечивая многозадачное решение на одной кодовой базе.
  • Эффективность использования памяти: YOLOv5 известен тем, что занимает относительно мало памяти во время обучения по сравнению с моделями на основе трансформаторов, что делает его доступным на графических процессорах потребительского класса.

Бесшовное развертывание

Упор в YOLOv5 на экспортируемость позволяет разработчикам без труда развертывать модели в различных средах, от облачных серверов до пограничных устройств, таких как Raspberry Pi или NVIDIA Jetson.

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

Meituan YOLOv6.0

Авторы: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organization: Meituan
Дата: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: YOLOv6
Docs: https:ultralytics

YOLOv6.0, разработанный командой искусственного интеллекта Meituan, позиционируется как промышленный соперник, ориентированный на баланс между скоростью и точностью, специально для аппаратно-ориентированных приложений. Он был разработан для максимального увеличения производительности на графических процессорах с использованием TensorRT оптимизации.

Архитектура и промышленность

YOLOv6 использует основу EfficientRep и шейку Rep-PAN, используя методы репараметризации (стиль RepVGG) для повышения скорости вывода без снижения точности. Во время обучения модель использует многоразветвленную структуру, которая сворачивается в одноразветвленную структуру во время вывода. В версии 3.0 появились такие стратегии, как саморасщепление, для дальнейшего повышения средней точности (mAP).

Сильные и слабые стороны

  • ОптимизацияGPU : Архитектура хорошо настроена для стандартных вычислений на GPU , что позволяет часто достигать высоких показателей FPS на картах NVIDIA T4 при использовании TensorRT.
  • Дружественное квантование: Meituan обеспечивает специальную поддержку квантования после обучения (PTQ) и обучения с учетом квантования (QAT), что очень важно для некоторых сценариев промышленного развертывания.
  • Ограниченная универсальность: Хотя YOLOv6 отлично справляется с обнаружением, ему не хватает широкой, встроенной поддержки многозадачности (например, оценки позы или OBB), которая есть в комплексном пакете Ultralytics
  • Сложность: Этапы перепараметризации и специальные конвейеры обучения могут вызвать сложности по сравнению с "plug-and-play" характером моделей Ultralytics .

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

Прямое сравнение производительности

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
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
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7

Анализ

YOLOv5n - чрезвычайно эффективное решение для мобильных приложений, требующее значительно меньшего количества параметров (2,6 М) по сравнению с самым маленьким вариантом YOLOv6 (4,7 М). Хотя YOLOv6.0 достигает более высокого пикового mAP в больших размерах, это происходит за счет увеличения размера модели (FLOPs и Parameters). Для разработчиков, нацеленных на развертывание на CPU (как правило, в робототехнике или мониторинге с низким энергопотреблением), скорость CPU в YOLOv5 явно бенчмаркирована и оптимизирована, в то время как YOLOv6 в значительной степени ориентирован на ускорение GPU .

Методики обучения и опыт

Опыт обучения в двух экосистемах существенно различается. В Ultralytics приоритетом является подход с низким уровнем кода и высокой гибкостью.

Рабочий процесс Ultralytics

YOLOv5 может быть интегрирован непосредственно через PyTorch Hub, что позволяет пользователям загружать и запускать модели с минимальным количеством кода. Сценарий обучения автоматически обрабатывает все, начиная от добавления данных и заканчивая ведением журнала.

import torch

# Load YOLOv5s from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")

# Perform inference
img = "https://ultralytics.com/images/zidane.jpg"
results = model(img)
results.print()

Промышленный рабочий процесс

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

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

Выбор между этими моделями зависит от ваших конкретных ограничений в отношении аппаратного обеспечения, точности и скорости разработки.

  • Ultralytics YOLOv5: Лучший выбор для быстрого создания прототипов, развертывания на границе и поддержки сообщества. Если вам нужно развернуть систему на Raspberry Pi, мобильном телефоне или сервере CPU , легковесность YOLOv5 и поддержка экспорта не имеют себе равных. Он также идеально подходит для исследователей, которым нужна универсальная кодовая база, поддерживающая сегментацию и классификацию наряду с обнаружением.
  • Meituan YOLOv6.0: Лучше всего подходит для стационарных промышленных сред, где доступны высокопроизводительные графические процессоры, а максимизация mAP является единственным приоритетом. Если вы создаете заводскую систему контроля качества, работающую на серверах NVIDIA T4/A10, и у вас есть инженерные ресурсы для точной настройки репараметризованных моделей, YOLOv6 - отличный кандидат.

Заключение

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

Хотя YOLOv6.0 представляет впечатляющие архитектурные инновации для промышленных выводов GPU , ему не хватает обширной экосистемы и многоплатформенной адаптации моделей Ultralytics . Тем, кто стремится к абсолютной производительности и эффективности, мы рекомендуем обратить внимание на Ultralytics YOLO11которая превосходит YOLOv5 и YOLOv6 по точности и скорости, сохраняя при этом удобный API Ultralytics .

Для решения специализированных задач разработчики могут рассмотреть и другие модели из документации Ultralytics , такие как YOLOv8, YOLOv9, YOLOv10или трансформаторный RT-DETR.

Изучите весь потенциал искусственного интеллекта на выставке Ultralytics Models Documentation.


Комментарии