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

YOLOX vs. YOLO26: Сравнительный анализ архитектур обнаружения объектов

В быстро развивающейся области обнаружения объектов крайне важно выбрать подходящую модель для вашего конкретного приложения. Это всеобъемлющее руководство сравнивает YOLOX, высокопроизводительный безъякорный детектор от Megvii, и Ultralytics YOLO26, новейшую передовую модель, разработанную для эффективности на периферийных устройствах и сквозного развертывания.

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

Краткое изложение

Обе модели представляют собой значительные вехи в развитии семейства YOLO. YOLOX (2021) сыграл ключевую роль в популяризации безъякорного обнаружения и разделенных голов, сократив разрыв между академическими исследованиями и промышленным применением. Однако YOLO26 (2026) продвигает эти идеи дальше благодаря нативной сквозной архитектуре, которая исключает Non-Maximum Suppression (NMS), достигая более быстрой инференции на CPU и превосходной точности на малых объектах.

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


YOLOX: пионер Anchor-Free

YOLOX перевел серию YOLO на безякорный механизм и интегрировал другие передовые методы обнаружения, такие как разделенная голова и присвоение меток SimOTA.

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

Технические характеристики

  • Авторы: Чжэн Ге, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
  • Организация:Megvii
  • Дата: 18 июля 2021 г.
  • Ссылки:Arxiv, GitHub, Документация

Ключевые архитектурные особенности

  1. Безякорный механизм: В отличие от предшественников, таких как YOLOv4 или YOLOv5, которые использовали предопределенные якорные боксы, YOLOX предсказывает ограничивающие рамки напрямую. Это уменьшает количество параметров проектирования и эвристической настройки, необходимых для различных наборов данных.
  2. Разделенная голова: YOLOX разделяет задачи классификации и локализации на разные «головы». Это разделение разрешает конфликт между уверенностью классификации и точностью регрессии, что приводит к более быстрой сходимости и лучшей производительности.
  3. SimOTA: Упрощенная стратегия оптимального транспортного присвоения, которая динамически назначает положительные образцы истинным значениям, улучшая стабильность обучения и точность.
  4. Множественные позитивы: Чтобы смягчить крайний дисбаланс положительных/отрицательных образцов в безъякорных детекторах, YOLOX назначает центральную область 3x3 как позитивы.

Прежние преимущества

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


Ultralytics YOLO26: Комплексное решение для периферийных устройств

YOLO26 разработан с нуля для обеспечения эффективности, устраняя узкие места в конвейере инференции для достижения максимальной скорости как на CPU, так и на GPU.

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

Технические характеристики

Ключевые архитектурные инновации

  1. Сквозная NMS-Free архитектура: YOLO26 изначально является сквозной. Генерируя предсказания, которые не требуют постобработки Non-Maximum Suppression (NMS), она значительно снижает задержку и сложность при развертывании. Этот прорыв был вдохновлен YOLOv10 и доработан для стабильности в производстве.
  2. Удаление DFL: Модуль Distribution Focal Loss (DFL) был удален для упрощения экспорта модели. Это делает модель более совместимой с периферийными/маломощными устройствами и инструментами для ускорителей, такими как TensorRT и CoreML.
  3. Оптимизатор MuSGD: Новый гибридный оптимизатор, сочетающий SGD и Muon. Вдохновленный обучением LLM (в частности, Kimi K2 от Moonshot AI), этот оптимизатор стабилизирует обучение и ускоряет сходимость для задач компьютерного зрения.
  4. ProgLoss + STAL: Комбинация прогрессивной балансировки потерь (Progressive Loss Balancing) и присвоения меток с учетом малых целей (Small-Target-Aware Label Assignment, STAL) значительно улучшает обнаружение малых объектов, что критически важно для изображений с дронов и датчиков IoT.
  5. Универсальность задач: В отличие от YOLOX, который является преимущественно детектором, YOLO26 из коробки поддерживает задачи сегментации экземпляров, оценки позы, классификации и Oriented Bounding Box (OBB).

Оптимизация для периферийных устройств

YOLO26 обеспечивает до 43% более быструю инференцию на CPU по сравнению с предыдущими поколениями, что делает его превосходным выбором для развертывания на Raspberry Pi, мобильных устройствах и стандартных Intel CPU без выделенных GPU.


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

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

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
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
YOLO26n64040.938.91.72.45.4
YOLO26s64048.687.22.59.520.7
YOLO26m64053.1220.04.720.468.2
YOLO26l64055.0286.26.224.886.4
YOLO26x64057.5525.811.855.7193.9

Анализ:

  • Точность: YOLO26 стабильно превосходит YOLOX во всех масштабах. Например, YOLO26s достигает 48.6% mAP, что значительно выше, чем у YOLOX-s с 40.5%, и конкурирует с гораздо более крупным YOLOX-l (49.7%), при этом используя лишь малую долю вычислительных ресурсов.
  • Скорость: YOLO26 использует свою сквозную архитектуру для достижения чрезвычайно низкой задержки. Скорость TensorRT для YOLO26 часто в 2 раза выше, чем у эквивалентных моделей YOLOX, отчасти благодаря устранению накладных расходов NMS.
  • Эффективность: Соотношение FLOPs к точности значительно превосходит в YOLO26. YOLO26n достигает сопоставимой точности с YOLOX-s (40.9% против 40.5%), но с примерно в 5 раз меньшим количеством FLOPs (5.4B против 26.8B).

Обучение и экосистема

Опыт разработчика является основным отличием между этими двумя фреймворками.

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

Ultralytics уделяет приоритетное внимание оптимизированному пользовательскому опыту. С YOLO26 вы получаете доступ к унифицированному пакету Python, который беспрепятственно обрабатывает проверку данных, обучение и развертывание.

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

Методологии обучения

  • YOLO26: Использует оптимизатор MuSGD для стабильности и применяет автоматическое пакетирование и автоматическое якорение (хотя для безякорных моделей это менее актуально, внутреннее масштабирование все еще применяется). Он также поддерживает аугментации Mosaic и Mixup, оптимизированные для быстрой сходимости.
  • YOLOX: Представил мощный конвейер аугментации, включающий Mosaic и Mixup, что стало ключевым фактором его высокой производительности. Обычно для достижения пиковой точности требуется более длительный график обучения (300 эпох).

Требования к памяти

YOLO26 оптимизирован для эффективного использования памяти. Его упрощенные функции потерь (удаление DFL) и оптимизированная архитектура приводят к снижению использования VRAM во время обучения по сравнению со старыми безякорными архитектурами. Это позволяет использовать большие размеры пакетов на потребительских GPU, ускоряя эксперименты.


Случаи использования и приложения

В чем превосходит YOLO26

  • Граничные вычисления: Благодаря ускорению инференса на CPU до 43% и удалению DFL, YOLO26 является идеальным выбором для Raspberry Pi и мобильных развертываний.
  • Аналитика видео в реальном времени: Конструкция без NMS обеспечивает детерминированную задержку, что критически важно для приложений, связанных с безопасностью, таких как автономное вождение или системы охранной сигнализации.
  • Сложные задачи: Если ваш проект требует сегментации или оценки позы, YOLO26 предоставляет эти возможности в рамках того же фреймворка, тогда как YOLOX в основном является детектором объектов.

Где используется YOLOX

  • Исследовательские эталоны: YOLOX часто используется в качестве сравнительного эталона в научных работах благодаря своей чистой безякорной реализации.
  • Устаревшие системы: Проекты, начатые в 2021-2022 годах, которые сильно кастомизировали кодовую базу YOLOX, могут столкнуться с ресурсоемкой миграцией, хотя прирост производительности YOLO26 обычно оправдывает затраченные усилия.

Пример кода: Начало работы с YOLO26

Миграция на YOLO26 проста. Ниже приведен полный пример того, как загрузить предварительно обученную модель и выполнить инференс.

from ultralytics import YOLO

# Load a pre-trained YOLO26 model (automatically downloads weights)
model = YOLO("yolo26n.pt")

# Run inference on a local image or URL
results = model("https://ultralytics.com/images/bus.jpg")

# Display results
for result in results:
    result.show()  # Show image with bounding boxes

# Export to ONNX for deployment
model.export(format="onnx")

Этот простой фрагмент кода заменяет сотни строк шаблонного кода, часто требуемого старыми исследовательскими репозиториями.

Заключение

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

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

Дополнительная литература

  • Изучите другие модели, такие как YOLO11 и YOLOv8, для сравнения.
  • Узнайте об экспорте моделей для достижения максимальной скорости.
  • Посетите блог Ultralytics для ознакомления с последними руководствами и примерами использования.

Комментарии