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

YOLOX в сравнении с EfficientDet: техническое сравнение

Выбор подходящей модели обнаружения объектов — это критически важное решение, которое уравновешивает точность, скорость инференса и вычислительные затраты. На этой странице представлено подробное техническое сравнение YOLOX, высокопроизводительной модели без привязки к якорям от Megvii, и EfficientDet, семейства масштабируемых и эффективных детекторов от Google. Мы углубимся в их архитектурные различия, показатели производительности и идеальные варианты использования, чтобы помочь вам выбрать лучшую модель для вашего проекта компьютерного зрения.

YOLOX: высокопроизводительное обнаружение без привязки к якорям

YOLOX — это модель детекции объектов без привязки к anchor box, разработанная компанией Megvii, которая стремится упростить популярную архитектуру YOLO, обеспечивая при этом современную производительность. Она была представлена для устранения разрыва между академическими исследованиями и промышленными приложениями, предлагая оптимизированную, но мощную конструкцию.

Технические детали:

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

YOLOX представляет несколько значительных модификаций в традиционную структуру YOLO:

  • Anchor-Free Design: Отказ от предопределенных anchor boxes упрощает процесс обучения YOLOX и уменьшает количество гиперпараметров, требующих настройки. Такой подход может привести к лучшей генерализации для объектов разных размеров и соотношений сторон.
  • Decoupled Head (Разделенная голова): В отличие от более ранних моделей YOLO, которые использовали связанную голову для классификации и регрессии, YOLOX использует разделенную голову. Это разделяет задачи классификации и локализации, что, как было показано, решает проблему рассогласования и улучшает как скорость сходимости, так и точность.
  • Продвинутое назначение меток: YOLOX включает SimOTA (Simplified Optimal Transport Assignment), стратегию динамического назначения меток, которая выбирает оптимальные положительные образцы для каждого объекта ground-truth во время обучения. Это более продвинутый подход, чем статические правила назначения.
  • Надежная аугментация: Модель использует надежные методы аугментации данных, такие как MixUp и Mosaic, для повышения своей устойчивости и производительности.

Сильные и слабые стороны

Преимущества:

  • Высокая производительность: YOLOX обеспечивает хороший баланс между скоростью и точностью, что делает его конкурентоспособным с другими современными детекторами своего времени.
  • Простота Anchor-Free (Anchor-Free Simplicity): Дизайн без привязки к якорям снижает сложность модели и инженерные усилия, связанные с конфигурацией якорных прямоугольников.
  • Устоявшаяся модель: Будучи хорошо известной моделью с 2021 года, она имеет значительную поддержку сообщества и примеры развертывания.

Слабые стороны:

  • Скорость инференса: Несмотря на быстродействие, его могут превзойти новые, более оптимизированные архитектуры, такие как Ultralytics YOLOv8 и YOLO11, особенно если учитывать задержку GPU.
  • Универсальность задач: YOLOX в основном разработан для обнаружения объектов. Ему не хватает встроенной поддержки для других задач компьютерного зрения, таких как сегментация экземпляров, оценка позы или классификация, которые являются стандартными в современных фреймворках, таких как Ultralytics.
  • Внешняя экосистема: Она изначально не является частью экосистемы Ultralytics, что может означать, что потребуется больше усилий для обучения, развертывания и интеграции с такими инструментами, как Ultralytics HUB.

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

YOLOX — это отличный выбор для:

  • Обнаружение объектов общего назначения: Приложения, требующие надежный и точный детектор, например, в системах безопасности или розничной аналитике.
  • Базовая модель для исследований: Служит отличной отправной точкой для исследователей, изучающих методы обнаружения без привязки к anchor boxes и передовые методы назначения меток.
  • Промышленная автоматизация: Такие задачи, как контроль качества в производстве, где точность обнаружения является ключевым требованием.

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

EfficientDet: Масштабируемое и эффективное обнаружение объектов

EfficientDet, разработанный командой Google Brain, представляет собой семейство моделей обнаружения объектов, разработанных для исключительной эффективности. Он представляет новую архитектуру и метод составного масштабирования, который позволяет масштабировать его от периферийных устройств с ограниченными ресурсами до крупномасштабных облачных серверов, сохраняя при этом превосходное соотношение точности и эффективности.

Технические детали:

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

Конструкция EfficientDet основана на трех ключевых нововведениях:

  • EfficientNet Backbone: В качестве основы для извлечения признаков используется высокоэффективная сеть EfficientNet. Сама EfficientNet была разработана с использованием поиска нейронной архитектуры для оптимизации точности и FLOPs.
  • BiFPN (Bi-directional Feature Pyramid Network): Для объединения признаков EfficientDet представляет BiFPN, взвешенную двунаправленную сеть пирамиды признаков. В отличие от традиционных FPN, BiFPN обеспечивает более насыщенное объединение многомасштабных признаков с меньшим количеством параметров и вычислений за счет включения обучаемых весов для каждого входного признака.
  • Комплексное масштабирование (Compound Scaling): EfficientDet использует метод комплексного масштабирования, который равномерно масштабирует глубину, ширину и разрешение для backbone, сети признаков и prediction network. Это обеспечивает сбалансированный и оптимальный компромисс между точностью и вычислительными ресурсами во всем семействе моделей (от D0 до D7).

Сильные и слабые стороны

Преимущества:

  • Современная эффективность: Модели EfficientDet очень эффективны с точки зрения параметров и FLOPs, часто достигая более высокой точности, чем другие модели с аналогичным вычислительным бюджетом.
  • Масштабируемость: Семейство моделей предлагает широкий спектр опций (D0-D7), что упрощает выбор модели, соответствующей конкретным аппаратным требованиям и требованиям к производительности.
  • Высокая точность: Более крупные модели EfficientDet достигают очень высоких показателей mAP на стандартных эталонных наборах данных, таких как COCO.

Слабые стороны:

  • Более высокая задержка: Несмотря на низкий показатель FLOPs, EfficientDet может иметь более высокую задержку инференса на GPU по сравнению с такими моделями, как YOLOX или Ultralytics YOLO, которые часто лучше оптимизированы для оборудования параллельной обработки.
  • Сложность обучения: Процесс обучения может быть более ресурсоемким и сложным по сравнению с упрощенным опытом, предлагаемым такими фреймворками, как Ultralytics.
  • Ограниченная универсальность: Как и YOLOX, EfficientDet специализируется на обнаружении объектов и не предлагает унифицированный фреймворк для других задач компьютерного зрения.

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

EfficientDet особенно хорошо подходит для:

  • Edge AI: Меньшие варианты (D0-D2) отлично подходят для развертывания на периферийных устройствах с ограниченными ресурсами, где количество параметров и память имеют решающее значение.
  • Облачные приложения: Более крупные варианты (D5-D7) подходят для облачных приложений, где достижение максимальной точности является приоритетом, а задержка не имеет большого значения.
  • Проекты с ограниченными ресурсами: Любое приложение, где основным ограничением является вычислительный бюджет (FLOPs), а не задержка в реальном времени.

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

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

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

Модель размер
(пиксели)
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
EfficientDet-d0 640 34.6 10.2 3.92 3.9 2.54
EfficientDet-d1 640 40.5 13.5 7.31 6.6 6.1
EfficientDet-d2 640 43.0 17.7 10.92 8.1 11.0
EfficientDet-d3 640 47.5 28.0 19.59 12.0 24.9
EfficientDet-d4 640 49.7 42.8 33.55 20.7 55.2
EfficientDet-d5 640 51.5 72.5 67.86 33.7 130.0
EfficientDet-d6 640 52.6 92.8 89.29 51.9 226.0
EfficientDet-d7 640 53.7 122.0 128.07 51.9 325.0

На основании сравнительных тестов можно отметить несколько ключевых тенденций:

  • Скорость GPU: Модели YOLOX стабильно демонстрируют значительно меньшую задержку (более высокую скорость) на GPU T4 с TensorRT по сравнению с моделями EfficientDet с аналогичным или даже более низким mAP. Например, YOLOX-l достигает тех же 49,7 mAP, что и EfficientDet-d4, но более чем в 3,5 раза быстрее.
  • Эффективность параметров: EfficientDet превосходит другие модели по эффективности параметров и FLOP. EfficientDet-d3 достигает 47,5 mAP, используя всего 12,0 млн параметров, тогда как YOLOX-m требуется 25,3 млн параметров для достижения аналогичного показателя 46,9 mAP. Это делает EfficientDet сильным кандидатом для сред с жесткими ограничениями на размер модели.
  • Компромисс между точностью и скоростью: YOLOX обеспечивает более выгодный компромисс для приложений, требующих инференса в реальном времени на GPU. EfficientDet, хотя и обладает высокой точностью в топовом сегменте (D7), значительно проигрывает в задержке, что делает его более крупные модели менее подходящими для использования в реальном времени.

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

  • Простота использования: Ultralytics предоставляет оптимизированный пользовательский интерфейс с простым Python API, обширной документацией и многочисленными учебными пособиями.
  • Развитая экосистема: Воспользуйтесь преимуществами активной разработки, сильной поддержки сообщества, частых обновлений и интегрированных инструментов, таких как Ultralytics HUB для управления наборами данных и обучения.
  • Баланс производительности: Модели Ultralytics YOLO достигают превосходного компромисса между скоростью и точностью, подходящего для различных реальных сценариев развертывания, от периферийных устройств до облачных серверов.
  • Требования к памяти: Модели Ultralytics YOLO, как правило, эффективно используют память во время обучения и инференса, часто требуя меньше памяти CUDA, чем более сложные архитектуры.
  • Универсальность: Модели Ultralytics поддерживают множество задач, помимо обнаружения, включая сегментацию экземпляров, классификацию изображений, оценку позы и обнаружение ориентированных ограничивающих рамок (OBB) в рамках единой унифицированной структуры.
  • Эффективность обучения: Воспользуйтесь преимуществами эффективных процессов обучения, готовых предварительно обученных весов на различных наборах данных и простой интеграции с инструментами отслеживания экспериментов, такими как ClearML и Weights & Biases.

Для пользователей, которым нужна современная производительность в сочетании с простотой использования и надежной экосистемой, настоятельно рекомендуется изучить модели Ultralytics YOLO.

Заключение: какую модель вам следует выбрать?

Выбор между YOLOX и EfficientDet во многом зависит от конкретных приоритетов вашего проекта.

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

  • EfficientDet выделяется в сценариях, где вычислительные ресурсы, такие как параметры модели и FLOPs, являются основным ограничением. Его масштабируемая архитектура делает его универсальным выбором для проектов, которые необходимо развертывать на различном оборудовании с разными возможностями.

Однако, для большинства современных задач компьютерного зрения модели Ultralytics YOLO, такие как YOLOv8 и YOLO11, представляют собой наиболее выгодный вариант. Они предлагают превосходный баланс скорости и точности, невероятно просты в использовании и поддерживаются всесторонней экосистемой, которая ускоряет разработку от исследований до производства. Их многозадачная универсальность делает их перспективным выбором для широкого спектра решений ИИ.

Сравнения с другими моделями

Если вам интересно сравнить эти модели с другими, ознакомьтесь со следующими страницами:



📅 Создано 1 год назад ✏️ Обновлено 1 месяц назад

Комментарии