Всестороннее сравнение: YOLOv7 против EfficientDet для обнаружения объектов
Выбор оптимальной архитектуры нейронной сети является основой любого успешного проекта компьютерного зрения. Это руководство содержит подробное техническое сравнение двух ключевых моделей в истории архитектур обнаружения объектов: YOLOv7 и EfficientDet. Изучая их архитектурные инновации, методологии обучения и идеальные сценарии развертывания, разработчики могут принимать обоснованные решения. Мы также рассмотрим, как современные достижения, в частности новаторская Ultralytics YOLO26, переопределили текущее состояние дел.
Происхождение модели и технические подробности
Обе модели были разработаны выдающимися исследовательскими командами и внесли значительные достижения в область машинного обучения.
YOLOv7
Авторы: Чэнь-Яо Ван, Алексей Бочковский и Хун-Юань Марк Ляо
Организация: Институт информатики, Academia Sinica, Тайвань
Дата: 2022-07-06
Arxiv: YOLOv7: Обучаемый набор «бесплатных» методов устанавливает новый уровень качества для детекторов объектов реального времени
GitHub: WongKinYiu/yolov7
Документация: Документация Ultralytics YOLOv7
EfficientDet
Авторы: Mingxing Tan, Ruoming Pang, and Quoc V. Le
Организация: Google Research
Дата: 2019-11-20
Arxiv: EfficientDet: масштабируемое и эффективное обнаружение объектов
GitHub: Google AutoML EfficientDet
Узнайте больше об EfficientDet
Архитектурные различия и сбалансированный анализ
Понимание фундаментальных структурных различий между этими сетями имеет решающее значение для эффективного развертывания моделей.
EfficientDet: Комбинированное масштабирование и BiFPN
Разработанный в экосистеме TensorFlow, EfficientDet представил принципиальный подход к масштабированию моделей. Вместо произвольного расширения или углубления сети, исследователи Google использовали метод составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину.
Кроме того, EfficientDet представил двунаправленную пирамидальную сеть признаков (BiFPN). Этот архитектурный компонент обеспечивает легкое и быстрое слияние признаков на нескольких масштабах.
Сильные стороны: Высокая эффективность по параметрам, достижение высокой средней точности (mAP) с меньшим количеством FLOPs, чем у многих современных аналогов. Слабые стороны: Сильно полагается на устаревшие стратегии поиска AutoML. Интеграция в современные, динамичные рабочие процессы PyTorch может быть громоздкой, а задержка на периферийных устройствах часто выше ожидаемой, несмотря на низкое количество FLOPs.
YOLOv7: Обучаемый Bag-of-Freebies
YOLOv7 приоритезировал инференс в реальном времени и оптимизацию обучения. Он ввел концепцию расширенной эффективной сети агрегации слоев (E-ELAN), которая позволяет модели непрерывно изучать более разнообразные признаки без разрушения исходного пути градиента. YOLOv7 также использовал технику, называемую "обучаемый набор бесплатных приёмов", которая значительно улучшает точность detect без увеличения затрат на инференс.
Сильные стороны: Исключительная скорость обработки и низкая задержка инференса, что делает его идеальным для видеопотоков с высокой частотой кадров. Слабые стороны: Хотя он очень эффективен, он по-прежнему полагается на якорные боксы и требует подавления немаксимумов (NMS) во время постобработки, что может создавать узкое место в задержке в сильно перегруженных сценах.
Преимущество экосистемы Ultralytics
При оценке моделей окружающая экосистема так же важна, как и архитектура. Интегрированная платформа Ultralytics предоставляет унифицированный API, обширную документацию и активную поддержку сообщества. Эта унифицированная среда гарантирует меньшее потребление памяти во время обучения по сравнению с тяжелыми трансформерными моделями, обеспечивая быстрое прототипирование и бесшовное отслеживание экспериментов.
Метрики производительности и тесты
В таблице ниже сопоставляются ключевые метрики производительности, позволяющие разработчикам оценить компромиссы между скоростью, количеством параметров и точностью.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.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 |
Как показано, хотя EfficientDet-d7 достигает высокого mAP, его скорость на TensorRT значительно отстаёт от вариантов YOLOv7, подчёркивая доминирование последних в ускоренном GPU обнаружении объектов в реальном времени.
Эволюция обнаружения объектов: YOLO26
Хотя YOLOv7 и EfficientDet заложили жизненно важную основу, ландшафт визуального ИИ быстро развивается. Для современных приложений, требующих абсолютного пика эффективности и точности, мы настоятельно рекомендуем обновиться до YOLO26, выпущенной в январе 2026 года.
YOLO26 устраняет присущие ограничения предыдущих поколений, предлагая беспрецедентную универсальность в обнаружении объектов, сегментации экземпляров, классификации изображений и оценке позы.
Ключевые инновации YOLO26
- Сквозная архитектура без NMS: YOLO26 изначально исключает постобработку Non-Maximum Suppression (NMS). Впервые реализованная в YOLOv10, эта концепция упрощает логику развертывания и гарантирует стабильное выполнение с низкой задержкой независимо от плотности объектов.
- Удаление DFL: Благодаря удалению Distribution Focal Loss (DFL) архитектура модели значительно упрощается, повышая совместимость с сильно ограниченными средами граничных вычислений.
- До 43% более быстрый инференс на CPU: Значительно оптимизирован для сред, не имеющих выделенных GPU, что делает его экспоненциально быстрее, чем EfficientDet, на легком оборудовании.
- Оптимизатор MuSGD: Вдохновленный методами больших языковых моделей (такими как Kimi K2 от Moonshot AI), этот гибрид SGD и Muon обеспечивает стабильность уровня LLM и быструю сходимость для обучения в компьютерном зрении.
- ProgLoss + STAL: Эти усовершенствованные функции потерь обеспечивают значительные улучшения в распознавании мелких объектов, что является критически важной особенностью для аэрофотосъемки и применений дронов.
- Специализированные улучшения: Включает функцию потерь семантической сегментации и многомасштабный прототип для задач сегментации, оценку остаточного логарифмического правдоподобия (RLE) для сложной оценки позы и специализированную угловую функцию потерь, разработанную для устранения проблем с границами ориентированных ограничивающих рамок (OBB).
Для команд, использующих устаревшие системы, переход на платформу Ultralytics открывает оптимизированный рабочий процесс, где эти передовые модели могут быть легко обучены и развернуты. Разработчики также могут изучить предыдущие надежные итерации, такие как YOLO11 и YOLOv8, в зависимости от конкретных требований обратной совместимости.
Оптимизированное обучение и простота использования
Одной из определяющих характеристик моделей Ultralytics является исключительная простота использования. В отличие от сложной настройки с множеством зависимостей, необходимой для сред AutoML TensorFlow EfficientDet, Ultralytics предоставляет простой, «питоноподобный» API.
Эта среда минимизирует использование памяти CUDA во время обучения, гарантируя, что даже большие наборы данных могут быть эффективно обработаны без ошибок нехватки памяти (OOM), часто встречающихся в громоздких архитектурах на основе трансформеров.
Пример кода: Начало работы с Ultralytics
Следующий фрагмент демонстрирует, как разработчики могут использовать пакет Ultralytics для бесшовного обучения современной модели YOLO26 "из коробки".
from ultralytics import YOLO
# Initialize the state-of-the-art YOLO26 model for object detection
model = YOLO("yolo26n.pt")
# Train the model effortlessly using the integrated Ultralytics ecosystem
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device=0, # Auto-selects optimal device
batch=16,
)
# Validate the model's performance
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")
# Export the model for edge deployment (e.g., OpenVINO for CPU optimization)
model.export(format="openvino")
Экспорт для продакшена
Модели, обученные с помощью API Ultralytics, могут быть мгновенно экспортированы в различные производственные форматы, такие как OpenVINO или ONNX, обеспечивая высокую пропускную способность независимо от целевого оборудования.
Идеальные варианты использования и практические применения
При проектировании решения крайне важно соотнести сильные стороны модели с конкретным вариантом использования.
Когда применять EfficientDet
EfficientDet остается кандидатом для устаревших академических исследований или сред, строго привязанных к экосистеме Google Cloud, где основным направлением являются эксперименты с составным масштабированием. Его меньшие варианты (d0-d2) полезны, когда абсолютный размер диска сильно ограничен.
Когда применять YOLOv7
YOLOv7 отлично проявляет себя в высокопроизводительных устаревших системах, особенно там, где интеграция PyTorch предпочтительнее TensorFlow. Она остаётся широко используемой в:
- Видеоаналитика: Обработка высокочастотных потоков видеонаблюдения при наличии достаточного количества GPU-ускорения.
- Промышленная инспекция: Выявление дефектов на быстродвижущихся производственных сборочных линиях.
Когда выбирать YOLO26
Для всех новых развертываний YOLO26 является бесспорной рекомендацией. Его беспрецедентный баланс производительности и надежная хорошо поддерживаемая экосистема делают его оптимальным выбором для:
- Умные города и управление дорожным движением: Его дизайн без NMS обеспечивает стабильную задержку инференса, что крайне важно для координации дорожного движения в реальном времени.
- Робототехника и автономные системы: Впечатляющий прирост скорости инференса на CPU на 43% обеспечивает высокочувствительные алгоритмы навигации для встраиваемых устройств.
- Сельскохозяйственный и аэромониторинг: Использование ProgLoss и STAL для точного выявления мелких объектов, таких как конкретные культуры или дикие животные, на изображениях, полученных с большой высоты.
Подводя итог, хотя EfficientDet и YOLOv7 предлагают ценный исторический контекст и специфическую нишевую полезность, современному инженеру компьютерного зрения лучше всего подходит архитектура Ultralytics YOLO26, которая элегантно устраняет предыдущие узкие места, расширяя границы возможного в области искусственного интеллекта.