YOLOv6-3.0 vs 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
- Дата: 13.01.2023
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
Архитектурные инновации
YOLOv6-3.0 использует бэкбон EfficientRep — аппаратно-дружественную архитектуру, разработанную для оптимизации затрат на доступ к памяти на GPU. Для улучшения слияния признаков на разных масштабах модель представляет модуль двунаправленной конкатенации (BiC) в своей шейке. Это позволяет сети более эффективно захватывать сложные пространственные иерархии, чем в предыдущих итерациях.
Кроме того, YOLOv6-3.0 реализует стратегию обучения с помощью якорей (AAT). Этот подход сочетает богатые градиентные сигналы обучения на основе якорей с преимуществами упрощенного развертывания вывода без якорей, помогая модели сходиться более стабильно, не жертвуя скоростью постобработки.
Рекомендации по аппаратному обеспечению
Хотя YOLOv6-3.0 превосходит на серверных GPU (например, NVIDIA T4), ее сильная зависимость от специфической структурной репараметризации иногда может приводить к субоптимальной задержке на строго ограниченных CPU периферийных устройствах по сравнению с новыми архитектурами.
YOLOv7: Пионер «Бесплатных приемов»
Выпущенный исследователями из Academia Sinica, YOLOv7 применил иной подход, сосредоточившись на анализе градиентного пути и оптимизациях во время обучения, которые не увеличивают стоимость инференса — концепция, которую авторы называют «обучаемым набором бесплатных приемов».
- Авторы: Chien-Yao Wang, Alexey Bochkovskiy и Hong-Yuan Mark Liao
- Организация: Институт информационных наук, Academia Sinica, Тайвань
- Дата: 06.07.2022
- 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 является отличным выбором для:
- Промышленное развертывание с учетом аппаратного обеспечения: Сценарии, где аппаратно-ориентированный дизайн модели и эффективная репараметризация обеспечивают оптимизированную производительность на конкретном целевом оборудовании.
- Быстрое одностадийное detect: Приложения, отдающие приоритет чистой скорости инференции на GPU для обработки видео в реальном времени в контролируемых средах.
- Интеграция в экосистему Meituan: Команды, уже работающие в технологическом стеке и инфраструктуре развертывания Meituan.
Когда выбирать YOLOv7
YOLOv7 рекомендуется для:
- Академическое сравнительное тестирование: Для воспроизведения передовых результатов 2022 года или изучения эффектов E-ELAN и обучаемых методов «набора бесплатных улучшений».
- Исследования репараметризации: Исследование запланированных репараметризованных сверток и стратегий составного масштабирования моделей.
- Существующие пользовательские конвейеры: Проекты с сильно кастомизированными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые не могут быть легко рефакторизированы.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Преимущества Ultralytics: Шаг в будущее
Хотя YOLOv6-3.0 и YOLOv7 представляют собой значительные вехи, интеграция разрозненных репозиториев в производственные конвейеры часто создает проблемы при развертывании моделей и настройке гиперпараметров. Экосистема Ultralytics решает эти болевые точки, предлагая оптимизированный, унифицированный интерфейс.
Почему стоит выбрать Ultralytics?
- Простота использования: API Ultralytics Python позволяет разработчикам загружать, обучать и экспортировать модели всего несколькими строками кода. Переключение со старой модели на новейшую архитектуру требует изменения всего одной строки.
- Хорошо поддерживаемая экосистема: Ultralytics предоставляет частые обновления, активную поддержку сообщества и надежную документацию.
- Универсальность: В отличие от более ранних моделей, которые фокусировались в основном на ограничивающих рамках, модели Ultralytics нативно поддерживают многозадачное обучение, включая сегментацию экземпляров, оценку позы и ориентированные ограничивающие рамки (OBB).
- Требования к памяти: Модели Ultralytics YOLO поддерживают более низкое потребление памяти во время обучения по сравнению с архитектурами на основе трансформеров, такими как RT-DETR, что позволяет исследователям эффективно обучать модели на потребительском оборудовании.
Обновление до YOLO26
Для разработчиков, стремящихся к вершине производительности, YOLO26 (выпущенный в январе 2026 года) фундаментально меняет парадигму обнаружения объектов. Он представляет полностью сквозную NMS-Free архитектуру, устраняя сложную логику постобработки и значительно сокращая вариативность задержки на периферийных устройствах.
Ключевые нововведения в YOLO26 включают:
- Оптимизатор MuSGD: Сложный гибрид SGD и Muon, который обеспечивает невероятно стабильную динамику обучения и более быструю сходимость.
- Удаление DFL: Исключение Distribution Focal Loss упрощает совместимость экспорта YOLO26 и повышает производительность на маломощных устройствах.
- ProgLoss + STAL: Передовые функции потерь, которые обеспечивают заметные улучшения в распознавании мелких объектов.
- Непревзойденная скорость: Достигает до 43% более быстрого инференса на CPU по сравнению с предыдущими поколениями, что делает его идеальным для встраиваемых систем, таких как Raspberry Pi или развертываний Apple CoreML.
Среди других высокопроизводительных моделей в экосистеме — YOLO11 и YOLOv8, обе из которых предлагают отличный баланс производительности для интеграции с устаревшим оборудованием.
Обеспечьте перспективность вашего конвейера
Создавая свои приложения компьютерного зрения на платформе Ultralytics, вы обеспечиваете немедленный доступ к будущим передовым моделям без переписывания загрузчиков наборов данных или скриптов развертывания.
Пример кода: Оптимизированное обучение
Следующий фрагмент иллюстрирует, как легко можно обучить современную модель 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-free архитектура, продвинутый оптимизатор MuSGD и глубокая интеграция с платформой Ultralytics гарантируют, что разработчики смогут развертывать мощные, масштабируемые решения визуального ИИ быстрее, чем когда-либо прежде.