YOLOX против YOLOv7: Всестороннее техническое сравнение
Эволюция обнаружения объектов в реальном времени обусловлена непрерывными архитектурными прорывами. Две значительные вехи на этом пути — YOLOX и YOLOv7. Выпущенные с разницей менее года, обе модели представили новые подходы к стандартной парадигме обнаружения объектов, значительно улучшив компромисс между скоростью и точностью.
Эта страница предоставляет углубленный технический анализ YOLOX и YOLOv7, сравнивая их архитектуры, метрики производительности и идеальные сценарии использования, чтобы помочь разработчикам выбрать правильный инструмент для их развертываний в области компьютерного зрения.
YOLOX: Пионерское безякорное обнаружение
Представленный исследователями Megvii в июле 2021 года, YOLOX ознаменовал серьезный сдвиг, отказавшись от традиционных анкерных архитектур. Преодолев разрыв между академическими исследованиями и промышленными приложениями, YOLOX упростил детектирующую голову и улучшил общую производительность.
Основные сведения о модели:
- Авторы: Чжэн Ге, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация:Megvii
- Дата: 2021-07-18
- Научная статья:arXiv:2107.08430
- Исходный код:Megvii YOLOX GitHub
- Документация:YOLOX на ReadTheDocs
Архитектурные инновации
YOLOX представил безанкерный подход, который значительно сократил количество проектных параметров и эвристической настройки, необходимых для пользовательских наборов данных. Он реализовал разделенную головку, разделяющую задачи классификации и регрессии, что улучшило скорость сходимости и точность. Кроме того, YOLOX использовал передовые стратегии аугментации данных, такие как MixUp и Mosaic, для повышения надежности модели.
Преимущество безанкерного подхода
Устранение якорных боксов в YOLOX снижает вычислительные затраты на вычисление Intersection over Union (IoU) между предсказаниями и истинными значениями во время обучения, что приводит к снижению требований к памяти CUDA и ускорению времени обучения.
YOLOv7: Обучаемый Bag-of-Freebies
Выпущенный в июле 2022 года исследователями Института информатики Academia Sinica, Тайвань, YOLOv7 еще больше расширил границы обнаружения объектов в реальном времени. Он представил концепцию «обучаемого набора бесплатных улучшений» (trainable bag-of-freebies), установив новые передовые показатели на наборе данных MS COCO на момент своего выпуска.
Основные сведения о модели:
- Авторы: Чен-Яо Ванг, Алексей Бочковский и Хонг-Юань Марк Ляо
- Организация: Institute of Information Science, Academia Sinica, Taiwan
- Дата: 2022-07-06
- Научная статья:arXiv:2207.02696
- Исходный код:WongKinYiu YOLOv7 GitHub
- Документация:Документация Ultralytics YOLOv7
Архитектурные инновации
Архитектура YOLOv7 построена вокруг сети расширенной эффективной агрегации слоев (E-ELAN), которая позволяет модели непрерывно изучать более разнообразные признаки без ухудшения градиентного пути. Кроме того, YOLOv7 использовала методы репараметризации модели, позволяющие упростить сложные многоветвевые обучающие сети до более быстрых однопутевых сетей во время инференса.
Сравнение производительности
При оценке этих моделей для реальных приложений крайне важно понимать их производительность в различных масштабах. В таблице ниже сравниваются стандартные метрики для различных размеров YOLOX и YOLOv7.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Анализ
- Точность: YOLOv7 обычно достигает более высокого mAP по сравнению с эквивалентными моделями YOLOX. Например, YOLOv7x достигает 53,1 mAP по сравнению с 51,1 у YOLOXx.
- Скорость: Хотя обе модели высоко оптимизированы для выполнения на GPU с использованием TensorRT, архитектура E-ELAN YOLOv7 обеспечивает немного лучшую пропускную способность для высокопроизводительных приложений, хотя YOLOX поддерживает отличную задержку на небольших периферийных устройствах.
- Универсальность: YOLOv7 расширил свой репертуар за пределы ограничивающих рамок, нативно предоставляя веса для сегментации экземпляров и оценки позы, что делает его более универсальным, чем базовый репозиторий YOLOX.
Приложения в реальном мире
Выбор между этими моделями часто сводится к вашей конкретной среде развертывания.
Периферийные вычисления и IoT
Для ограниченных периферийных устройств, таких как Raspberry Pi или старые мобильные процессоры, YOLOX-Nano и YOLOX-Tiny являются весьма привлекательными. Их минимальное количество параметров и безанкерная природа упрощают их развертывание в условиях низкого энергопотребления для таких задач, как базовое отслеживание движения или приложения для умных дверных звонков.
Высококачественная видеоаналитика
Для обработки потоков высокого разрешения при detect промышленных дефектов или плотном мониторинге трафика YOLOv7 превосходит другие решения. Его надежная агрегация признаков позволяет поддерживать высокую точность даже когда объекты частично перекрыты или сильно различаются по масштабу.
Сценарии использования и рекомендации
Выбор между YOLOX и YOLOv7 зависит от конкретных требований вашего проекта, ограничений развертывания и предпочтений экосистемы.
Когда следует выбирать YOLOX
YOLOX является отличным выбором для:
- Исследования безъякорного detect: Академические исследования, использующие чистую, безъякорную архитектуру YOLOX в качестве основы для экспериментов с новыми головами detect или функциями потерь.
- Сверхлегкие граничные устройства: Развертывание на микроконтроллерах или устаревшем мобильном оборудовании, где критически важен чрезвычайно малый объем (0,91 млн параметров) варианта YOLOX-Nano.
- Исследования по назначению меток SimOTA: Исследовательские проекты, изучающие стратегии назначения меток на основе оптимального транспорта и их влияние на сходимость обучения.
Когда выбирать YOLOv7
YOLOv7 рекомендуется для:
- Академическое сравнительное тестирование: Для воспроизведения передовых результатов 2022 года или изучения эффектов E-ELAN и обучаемых методов «набора бесплатных улучшений».
- Исследования репараметризации: Исследование запланированных репараметризованных сверток и стратегий составного масштабирования моделей.
- Существующие пользовательские конвейеры: Проекты с сильно кастомизированными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые не могут быть легко рефакторизированы.
Когда выбирать Ultralytics (YOLO26)
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчиков:
- Развертывание на периферии без NMS: Приложения, требующие стабильного вывода с низкой задержкой без сложности постобработки методом Non-Maximum Suppression.
- Среды только с CPU: Устройства без выделенного ускорения GPU, где до 43% более быстрая инференция YOLO26 на CPU обеспечивает решающее преимущество.
- Обнаружение мелких объектов: Сложные сценарии, такие как аэрофотосъемка с дронов или анализ данных с IoT-датчиков, где ProgLoss и STAL значительно повышают точность на крошечных объектах.
Преимущество Ultralytics
Хотя YOLOX и YOLOv7 являются мощными исследовательскими реализациями, переход от исследовательского репозитория к масштабируемой производственной среде может быть сложным. Именно здесь Платформа Ultralytics проявляет себя наилучшим образом.
Модели Ultralytics предоставляют унифицированный API на python, рассматривая обучение, валидацию и развертывание моделей как упрощенные, стандартизированные задачи. Вы избегаете проблем с управлением сложными сторонними зависимостями или пользовательскими операторами C++, характерными для старых архитектур.
Кроме того, модели Ultralytics YOLO требуют значительно меньше памяти CUDA во время обучения по сравнению с детекторами на основе трансформеров, такими как RT-DETR. Это позволяет специалистам использовать большие размеры пакетов, стабилизируя обучение и ускоряя сходимость на пользовательских наборах данных.
Поддерживаемые интеграции
Ultralytics нативно поддерживает экспорт моделей в стандартные для отрасли форматы, такие как ONNX, OpenVINO и CoreML, с помощью простого булева флага, что значительно упрощает процесс развертывания моделей.
Пример кода: Обучение с Ultralytics
Экосистема Ultralytics позволяет легко загружать, обучать и выполнять инференс с использованием YOLOv7 или более новых архитектур всего несколькими строками кода.
from ultralytics import YOLO
# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")
# Train the model on a custom dataset (e.g., COCO8)
# The API handles data loading, augmentation, and memory management automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
predictions = model("path/to/image.jpg")
predictions[0].show()
Будущее: Ultralytics YOLO26
Хотя YOLOv7 и YOLOX представляют собой важные исторические шаги, передовые технологии быстро развиваются. Выпущенная в январе 2026 года, Ultralytics YOLO26 представляет новаторские парадигмы, превосходящие предыдущие модели.
- Сквозная архитектура без NMS: YOLO26 изначально исключает постобработку Non-Maximum Suppression (NMS). Это значительно сокращает узкие места, связанные с задержкой, и гарантирует детерминированное время выполнения на различных аппаратных конфигурациях.
- До 43% более быстрая инференция на CPU: За счет удаления Distribution Focal Loss (DFL) и оптимизации глубины сети, YOLO26 значительно адаптирован для периферийных устройств, не имеющих выделенного GPU.
- Оптимизатор MuSGD: Вдохновленный передовыми методами обучения LLM, оптимизатор MuSGD (гибрид SGD и Muon) обеспечивает исключительную стабильность обучения и более быструю сходимость.
- Улучшенное обнаружение мелких объектов: Интеграция функций потерь ProgLoss + STAL значительно улучшает распознавание мелких, удаленных объектов, что критически важно для картографирования с помощью дронов и систем видеонаблюдения.
- Встроенная поддержка задач: YOLO26 всесторонне поддерживает ориентированные ограничивающие рамки (obb), сегментацию экземпляров и оценку позы нативно в рамках одного оптимизированного API.
Для любого современного разработчика, начинающего новый проект компьютерного зрения сегодня, оценка Ultralytics YOLO26 на Платформе является рекомендуемым путем для достижения наилучшего баланса скорости, точности и простоты развертывания. Для тех, кто переходит с предыдущих поколений, таких как YOLO11 или YOLOv8, переход требует изменения только строки модели, мгновенно открывая превосходные возможности.