YOLOv6-3.0 против YOLOv7#
Эволюция компьютерного зрения в реальном времени отмечена стремительным развитием эффективности архитектур и методик обучения. Две заметные модели, оказавшие значительное влияние на эту область, — YOLOv6-3.0 и YOLOv7. Обе платформы внедрили новые методы балансировки скорости инференса и точности детектирования, ориентированные на развертывание — от высокопроизводительных серверных GPU до периферийных устройств.
В этом подробном техническом сравнении рассматриваются их архитектуры, показатели производительности и оптимальные сценарии использования, а также показано, как современная Ultralytics Platform и новейшая модель YOLO26 развивают эти базовые концепции, обеспечивая непревзойденный опыт для разработчиков.
YOLOv6-3.0: оптимизация промышленной производительности#
Разработанная отделом Vision AI компании Meituan, модель YOLOv6-3.0 создавалась специально для промышленных приложений с высокой пропускной способностью. Она ориентирована на максимальное использование аппаратных ускорителей, что делает ее подходящим вариантом для сред, где возможна пакетная обработка на выделенных GPU.
- Авторы: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu и Xiangxiang Chu
- Организация: Meituan
- Дата: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
Архитектурные инновации#
В основе YOLOv6-3.0 лежит EfficientRep — архитектура, оптимизированная для аппаратного обеспечения и предназначенная для снижения затрат на доступ к памяти в GPU. Для улучшения объединения признаков на разных масштабах модель внедряет в neck-модуль двунаправленный модуль конкатенации (BiC). Благодаря этому сеть эффективнее улавливает сложные пространственные иерархии по сравнению с предыдущими версиями.
Кроме того, YOLOv6-3.0 реализует стратегию обучения с поддержкой anchor-блоков (AAT). Этот подход объединяет богатые градиентные сигналы обучения на основе anchor-блоков с преимуществами упрощенного развертывания без anchor-блоков на этапе инференса, помогая модели стабильнее сходиться без снижения скорости постобработки.
Хотя YOLOv6-3.0 отлично показывает себя на серверных GPU (например, NVIDIA T4), сильная зависимость от специфической структурной репараметризации иногда может приводить к неоптимальной задержке на периферийных устройствах, работающих исключительно на CPU, по сравнению с более новыми архитектурами.
YOLOv7: пионер «бесплатных улучшений»#
Выпущенная исследователями из Academia Sinica, модель YOLOv7 пошла по другому пути, сосредоточившись на анализе градиентных путей и оптимизациях во время обучения, которые не увеличивают стоимость инференса, — концепции, которую авторы называют «обучаемым набором бесплатных улучшений».
- Авторы: Chien-Yao Wang, Alexey Bochkovskiy и Hong-Yuan Mark Liao
- Организация: Институт информационных наук Academia Sinica, Тайвань
- Дата: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
Архитектурные инновации#
В основе YOLOv7 лежит расширенная сеть агрегации эффективных слоев (E-ELAN). E-ELAN оптимизирует градиентный путь, позволяя разным слоям изучать более разнообразные признаки без изменения исходной топологии сети. В результате получается высоковыразительная модель, способная достигать передовых показателей средней точности (mAP).
YOLOv7 также активно использует репараметризацию модели, объединяя сверточные слои со слоями пакетной нормализации во время инференса. Это уменьшает количество параметров и ускоряет прямой проход при развертывании с использованием таких фреймворков, как NVIDIA TensorRT или ONNX.
Сравнение производительности#
При оценке этих моделей на датасете MS COCO мы наблюдаем явный компромисс между сверхлегкими вариантами YOLOv6 и архитектурами YOLOv7 с большим количеством параметров, ориентированными на точность.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Данные показывают, что YOLOv6-3.0n обеспечивает исключительно высокую скорость инференса, что делает его подходящим для видеоаналитики с высокой частотой обработки. Напротив, YOLOv7x достигает наивысшего показателя mAP, превосходя другие модели в задачах, где точность детектирования важнее абсолютной частоты кадров.
Варианты применения и рекомендации#
Выбор между YOLOv6 и YOLOv7 зависит от конкретных требований твоего проекта, ограничений развертывания и предпочтений в отношении экосистемы.
Когда стоит выбрать YOLOv6#
YOLOv6 — хороший выбор для:
- Развертывание с учетом промышленного оборудования: сценарии, в которых аппаратно-ориентированный дизайн модели и эффективная репараметризация обеспечивают оптимальную производительность на конкретном целевом оборудовании.
- Быстрое одностадийное обнаружение: приложения, в которых приоритетом является максимальная скорость инференса на GPU для обработки видео в реальном времени в контролируемых средах.
- Интеграция с экосистемой Meituan: команды, уже работающие в технологическом стеке и инфраструктуре развертывания Meituan.
Когда выбирать YOLOv7#
YOLOv7 рекомендуется для:
- Академического тестирования: воспроизведения передовых результатов 2022 года или изучения влияния E-ELAN и методов обучаемого набора бесплатных улучшений.
- Исследований перепараметризации: изучения запланированных перепараметризованных свёрток и стратегий составного масштабирования моделей.
- Существующих пользовательских конвейеров: проектов со значительно изменёнными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые сложно переработать.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает лучшее сочетание производительности и удобства для разработчиков:
- Развертывания на периферийных устройствах без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложной постобработки с подавлением немаксимумов.
- Сред без GPU: устройств без выделенного ускорения GPU, где до 43% более быстрый вывод YOLO26 на CPU дает решающее преимущество.
- Обнаружения мелких объектов: сложных сценариев, таких как аэрофотосъемка с дронов или анализ данных IoT-сенсоров, где ProgLoss и STAL значительно повышают точность обнаружения крошечных объектов.
Преимущество Ultralytics: шаг в будущее#
Хотя YOLOv6-3.0 и YOLOv7 стали важными этапами развития, интеграция разрозненных репозиториев в рабочие процессы продакшена часто создает сложности при развертывании моделей и настройке гиперпараметров. Экосистема Ultralytics устраняет эти проблемы, предлагая упрощенный унифицированный интерфейс.
Почему стоит выбрать Ultralytics?#
- Простота использования: API Ultralytics на Python позволяет разработчикам загружать, обучать и экспортировать модели всего несколькими строками кода. Для перехода от старой модели к новейшей архитектуре достаточно изменить одну строку.
- Экосистема с активной поддержкой: Ultralytics регулярно выпускает обновления, предоставляет поддержку активного сообщества и подробную документацию.
- Универсальность: В отличие от более ранних моделей, ориентированных главным образом на ограничивающие рамки, модели Ultralytics изначально поддерживают многозадачное обучение, включая сегментацию экземпляров, оценку позы и ориентированные ограничивающие рамки (OBB).
- Требования к памяти: Модели Ultralytics YOLO потребляют меньше памяти во время обучения по сравнению с архитектурами на основе Transformer, такими как RT-DETR, позволяя исследователям эффективно обучать их на оборудовании потребительского класса.
Переход на YOLO26#
Для разработчиков, которым нужна максимальная производительность, YOLO26 (выпущенная в январе 2026 года) фундаментально меняет подход к детектированию объектов. Она внедряет полностью сквозную архитектуру без NMS, устраняя сложную логику постобработки и значительно уменьшая разброс задержки на периферийных устройствах.
Ключевые инновации YOLO26 включают:
- Оптимизатор MuSGD: Продвинутый гибрид SGD и Muon, обеспечивающий исключительно стабильную динамику обучения и более быструю сходимость.
- Удаление DFL: Исключение Distribution Focal Loss упрощает совместимость при экспорте и повышает производительность на устройствах с низким энергопотреблением.
- ProgLoss + STAL: Продвинутые функции потерь, заметно улучшающие распознавание небольших объектов.
- Непревзойденная скорость: До 43% более быстрый инференс на CPU по сравнению с предыдущими поколениями, что делает модель идеальной для встраиваемых систем, таких как Raspberry Pi, или развертывания с использованием Apple CoreML.
К другим высокопроизводительным моделям экосистемы относятся YOLO11 и YOLOv8, обе обеспечивают отличный баланс производительности для интеграции с устаревшим оборудованием.
Создавая приложения для компьютерного зрения на базе Ultralytics Platform, ты получаешь немедленный доступ к будущим передовым моделям без переписывания загрузчиков датасетов или скриптов развертывания.
Пример кода: упрощенное обучение#
Следующий фрагмент кода показывает, насколько просто обучить передовую модель YOLO26 с помощью API Ultralytics. Этот рабочий процесс без изменений применим к YOLO11 или YOLOv8, скрывая шаблонный код, который обычно требуется в старых репозиториях.
from ultralytics import YOLO
# Load the cutting-edge YOLO26 nano model for rapid training
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset
# The API handles dataset downloading, augmentation, and hyperparameter configuration
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="cuda:0", # Automatically utilizes PyTorch GPU acceleration
)
# Run an end-to-end, NMS-free inference on a test image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for cross-platform deployment
model.export(format="onnx")Заключение#
YOLOv6-3.0 и YOLOv7 успешно решают разные аспекты задачи детектирования в реальном времени. YOLOv6-3.0 — мощное решение для специализированных промышленных сред с GPU, тогда как YOLOv7 обеспечивает высокую точность благодаря тщательной оптимизации градиентных путей.
Однако для современных приложений, которым нужны непревзойденная универсальность, минимальные сложности при развертывании и передовая производительность, Ultralytics YOLO26 является очевидным выбором. Ее архитектура без NMS, продвинутый оптимизатор MuSGD и глубокая интеграция с Ultralytics Platform позволяют разработчикам быстрее, чем когда-либо, развертывать мощные масштабируемые решения в области компьютерного зрения и AI.