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

YOLOv7 и YOLOX: Технический анализ детекторов реального времени

Эволюция компьютерного зрения ознаменована быстрыми достижениями в области обнаружения объектов в реальном времени. Двумя ключевыми вехами на этом пути являются YOLOv7 и YOLOX. Хотя обе модели расширили границы скорости и точности, они использовали разные архитектурные подходы для достижения своих результатов. Это руководство представляет собой всестороннее техническое сравнение этих двух мощных моделей, помогая вам выбрать правильную архитектуру для ваших проектов компьютерного зрения.

Введение в модели

Понимание истоков и основных проектных решений этих моделей имеет решающее значение для их эффективного развертывания в современных операциях машинного обучения.

Подробности о YOLOv7

Разработанный исследователями, поддерживавшими архитектуры CSPNet и Scaled-YOLOv4, YOLOv7 представил подход "обучаемого набора бесплатных приёмов" (trainable bag-of-freebies) для максимизации точности без увеличения затрат на инференс.

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

Подробности о YOLOX

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

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

Архитектурные различия и инновации

Ключевые различия между YOLOv7 и YOLOX заключаются в их подходе к извлечению признаков, предсказанию ограничивающих рамок и присвоению меток.

YOLOX: пионер Anchor-Free

YOLOX революционизировал семейство YOLO, перейдя на безакорную архитектуру. Традиционные детекторы на основе якорей требуют сложной эвристической настройки для кластеризации якорных боксов, что может сильно зависеть от набора данных. Устранив якорные боксы, YOLOX значительно сократил количество проектных параметров. Кроме того, YOLOX использует разделенную голову, разделяющую задачи classify и локализации на отдельные ветви сети. Это разрешает внутренний конфликт между classify объекта и регрессией его пространственных координат. YOLOX также интегрирует передовые стратегии присвоения меток, такие как SimOTA, которые динамически распределяют положительные образцы во время обучения.

YOLOv7: Расширенная эффективная агрегация слоев

YOLOv7 вернулся к методологиям на основе якорей, но представил расширенную эффективную сеть агрегации слоев (E-ELAN). E-ELAN оптимизирует длину пути градиента, обеспечивая эффективное обучение сети на различных глубинах. Архитектура сильно зависит от методов репараметризации, объединяя сверточные слои во время инференса для увеличения скорости без ущерба для точности. Стратегия "bag-of-freebies" YOLOv7 включает такие инновации, как плановые репараметризованные свертки и назначение меток с грубым к тонкому направлением, которые выводят среднюю точность (mAP) модели на выдающийся уровень.

На основе якорей и без якорей

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

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

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Как видно выше, YOLOv7x достигает наивысшего mAP, что делает его исключительно точным для сложных наборов данных. Напротив, YOLOX-Nano высоко оптимизирован для экстремальных ограничений ресурсов. Однако обе модели демонстрируют относительно высокое использование памяти во время обучения по сравнению с современными архитектурами.

Методологии обучения и экосистема

Ключевым фактором для исследователей и разработчиков является простота реализации. Исторически, старые версии YOLO требовали сильно кастомизированных C++ скриптов или сложного управления зависимостями.

Преимущество экосистемы Ultralytics

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

  • Простота использования: Всего несколькими строками кода вы можете запустить цикл обучения, что значительно снижает крутую кривую обучения, связанную с чистыми реализациями PyTorch.
  • Эффективность обучения: Модели Ultralytics YOLO изначально используют меньше памяти во время обучения по сравнению с тяжелыми моделями-трансформерами, такими как RT-DETR. Это позволяет разработчикам максимально увеличивать размеры пакетов на потребительском оборудовании.
  • Универсальность: Помимо простых ограничивающих рамок, экосистема легко расширяется до таких задач, как сегментация экземпляров и оценка позы.

Вот полностью рабочий пример, демонстрирующий, как обучить модель с использованием API Ultralytics:

from ultralytics import YOLO

# Load a pre-trained model
model = YOLO("yolov8n.pt")  # Readily available weights for rapid transfer learning

# Train the model efficiently on your custom data
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device="0",  # Utilizes optimal CUDA memory management
)

# Export seamlessly to ONNX or TensorRT
model.export(format="onnx")

Стандартизируя конвейер экспорта, разработчики могут без труда переводить свои веса в форматы, такие как TensorRT или ONNX, обеспечивая высокоскоростной инференс на целевом оборудовании.

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

Выбор между YOLOX и YOLOv7 во многом зависит от целей развертывания:

  • YOLOX для периферийного ИИ: Варианты YOLOX-Nano и YOLOX-Tiny очень хорошо подходят для развертывания на маломощных устройствах. Если вы создаете умную камеру видеонаблюдения на Raspberry Pi, простые безъякорные свертки YOLOX легко переносятся на периферийные ускорители.
  • YOLOv7 для высокоточной аналитики: Если вы обрабатываете спутниковые снимки высокого разрешения или выполняете сложный контроль качества производства, высокий показатель mAP YOLOv7x, обеспечиваемый высокопроизводительными GPU NVIDIA, гарантирует обнаружение даже мельчайших аномалий.

Будущее: Обновление до Ultralytics YOLO26

Хотя YOLOv7 и YOLOX были новаторскими на момент своего создания, ландшафт компьютерного зрения значительно продвинулся. Для новых развертываний разработчикам следует обратить внимание на Ultralytics YOLO26, выпущенную в январе 2026 года. Эта передовая модель объединяет лучшие архитектурные теории в совершенную систему, готовую к производству.

Вот почему настоятельно рекомендуется обновление:

  • Сквозная архитектура без NMS: YOLO26 изначально исключает Non-Maximum Suppression (NMS) во время постобработки. Впервые реализованная в YOLOv10, эта концепция обеспечивает стабильно низкую задержку, упрощая развертывание на устройствах без аппаратной поддержки NMS.
  • Удаление DFL: Удаление Distribution Focal Loss в YOLO26 значительно улучшает совместимость с маломощными периферийными устройствами и упрощает экспорт в ONNX.
  • Оптимизатор MuSGD: Вдохновленный инновациями в обучении LLM, YOLO26 использует гибридный оптимизатор MuSGD, обеспечивая более быструю сходимость и невероятно стабильную динамику обучения.
  • До 43% более быстрый инференс на CPU: Значительно оптимизированный для реального оборудования, YOLO26 отлично работает на стандартных CPU, не требуя дорогостоящей инфраструктуры GPU.
  • ProgLoss + STAL: Эти усовершенствованные функции потерь значительно улучшают распознавание мелких объектов, что является критически важной особенностью для инспекций с помощью аэрофотосъемки дронами и сложных сетей IoT.

Для разработчиков, ищущих лучший баланс производительности в обнаружении объектов, segmentation и других областях, развертывание моделей через Ultralytics Platform обеспечивает беспрецедентный опыт без каких-либо затруднений.

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

Заключение

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


Комментарии