EfficientDet против YOLOv7#
Выбор наиболее эффективной архитектуры нейронной сети имеет критическое значение для успеха любой инициативы в области computer vision. По мере роста спроса на высокопроизводительные ИИ-решения сравнение проверенных моделей, таких как EfficientDet и YOLOv7, становится необходимым для разработчиков, стремящихся оптимизировать как точность, так и вычислительную эффективность.
Этот всесторонний технический анализ исследует архитектурные нюансы, performance metrics и идеальные сценарии развертывания для обеих моделей. Кроме того, мы покажем, почему интегрированная экосистема от Ultralytics, завершением которой является передовая Ultralytics YOLO26, предлагает превосходную альтернативу для современных задач компьютерного зрения.
Понимание EfficientDet#
EfficientDet была разработана для максимизации точности при систематическом управлении вычислительными затратами в различных ресурсных ограничениях. Она достигла этого благодаря новому подходу к масштабированию и объединению признаков.
Детали EfficientDet:
Авторы: Mingxing Tan, Ruoming Pang и Quoc V. Le
Организация: Google
Дата: 2019-11-20
Arxiv: EfficientDet: Scalable and Efficient Object Detection
GitHub: Репозиторий Google AutoML
Архитектура и инновации#
По своей сути EfficientDet использует двунаправленную пирамидальную сеть признаков (BiFPN). В отличие от традиционных FPN, BiFPN позволяет легко и быстро объединять многомасштабные признаки за счет введения обучаемых весов для определения важности различных входных признаков. Это сочетается с методом составного масштабирования, который равномерно масштабирует разрешение, глубину и ширину бэкбона, сети признаков и сетей предсказания рамок/классов одновременно.
Сильные и слабые стороны#
EfficientDet обладает высокой масштабируемостью. Его меньшие варианты (d0-d2) чрезвычайно эффективны с точки зрения параметров, что делает их подходящими для сред с жесткими ограничениями по памяти. Более крупные варианты (например, d7) раздвигают границы mean Average Precision (mAP) для высококлассной офлайн-обработки.
Тем не менее, EfficientDet сильно зависит от устаревших реализаций TensorFlow и сложных пайплайнов AutoML. Эта унаследованная инфраструктура делает его интеграцию в современные рабочие процессы на базе PyTorch заведомо сложной. Кроме того, он страдает от значительной задержки инференса на периферийных устройствах при масштабировании до вариантов с более высокой точностью.
Понимание YOLOv7#
YOLOv7, представленная в 2022 году, совершила огромный скачок в скорости и точности для приложений реального времени, установив новую базовую линию для широко популярного семейства YOLO на тот момент.
Детали YOLOv7:
Авторы: Chien-Yao Wang, Alexey Bochkovskiy и Hong-Yuan Mark Liao
Организация: Institute of Information Science, Academia Sinica, Taiwan
Дата: 2022-07-06
Arxiv: YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors
GitHub: Официальный репозиторий YOLOv7
Архитектура и инновации#
YOLOv7 представила расширенную сеть агрегации эффективных слоев (E-ELAN). Это архитектурное улучшение повышает обучающую способность сети, не разрушая исходный градиентный путь, что позволяет модели эффективно изучать более разнообразные признаки. Кроме того, она реализует «обучаемый набор бесплатных методов» (trainable bag-of-freebies), используя такие техники, как плановая репараметризация и динамическое назначение меток для повышения точности без увеличения стоимости вывода.
Сильные и слабые стороны#
YOLOv7 превосходно справляется с задачами в реальном времени, такими как video analytics и высокоскоростная робототехническая навигация. Она отлично масштабируется на GPU серверного класса и предлагает нативную реализацию PyTorch, что делает ее доступной для академических исследователей.
Несмотря на впечатляющую скорость, YOLOv7 по-прежнему полагается на немаксимальное подавление (NMS) для постобработки, что может вызывать переменные задержки в переполненных сценах. Кроме того, потребление памяти во время обучения заметно больше, чем у новых поколений, что требует более мощного оборудования для обработки больших размеров пакетов (batch sizes).
Сравнение производительности и метрик#
При сравнении этих моделей важно изучить компромиссы между точностью, скоростью вывода и размером параметров. Ниже представлена подробная оценка различных конфигураций EfficientDet и YOLOv7.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (М) | FLOPs (Б) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
В то время как EfficientDet-d7 достигает наивысшего mAP, она требует почти 128 мс на GPU T4. В резком контрасте, YOLOv7x достигает сопоставимых 53.1 mAP при невероятно быстрых 11.57 мс, демонстрируя огромный поколенческий скачок в вычислительной эффективности для развертываний в реальном времени.
Сценарии использования и рекомендации#
Выбор между EfficientDet и YOLOv7 зависит от конкретных требований твоего проекта, ограничений развертывания и предпочтений в экосистеме.
Когда стоит выбрать EfficientDet#
EfficientDet — отличный выбор, если:
- Конвейеры Google Cloud и TPU: Системы с глубокой интеграцией в Google Cloud Vision API или инфраструктуру TPU, где EfficientDet имеет встроенную оптимизацию.
- Исследования составного масштабирования: Академическое тестирование, сфокусированное на изучении эффектов сбалансированного масштабирования глубины, ширины и разрешения сети.
- Мобильное развертывание через TFLite: Проекты, которым специально требуется экспорт TensorFlow Lite для Android или встраиваемых устройств Linux.
Когда выбирать YOLOv7#
YOLOv7 рекомендуется для:
- Академического бенчмаркинга: воспроизведение результатов уровня state-of-the-art 2022 года или изучение эффектов E-ELAN и методов trainable bag-of-freebies.
- Исследований репараметризации: изучение плановых репараметризованных сверток и стратегий составного масштабирования моделей.
- Существующих кастомных конвейеров: проектов с сильно модифицированными конвейерами, построенными вокруг специфической архитектуры YOLOv7, которые нельзя легко переработать.
Когда выбирать Ultralytics (YOLO26)#
Для большинства новых проектов Ultralytics YOLO26 предлагает наилучшее сочетание производительности и удобства для разработчика:
- Развертывания на периферии без NMS: приложений, требующих стабильного вывода с низкой задержкой без сложности постобработки подавления немаксимумов.
- Среды только с CPU: устройств без выделенного GPU-ускорения, где до 43% более быстрый вывод на CPU у YOLO26 дает решающее преимущество.
- Обнаружение малых объектов: Сложные сценарии, такие как aerial drone imagery или анализ с помощью IoT-сенсоров, где ProgLoss и STAL значительно повышают точность для крошечных объектов.
Преимущество Ultralytics#
Выбор правильной архитектуры выходит за рамки простых метрик; он включает оценку всего жизненного цикла машинного обучения. Экосистема Ultralytics обеспечивает непревзойденный пользовательский опыт для разработчиков, значительно снижая порог входа для надежного развертывания ИИ.
- Простота использования: Ultralytics предоставляет высокоунифицированный Python API. Ты можешь обучать, проверять и экспортировать модели всего в несколько строк кода, избавляясь от необходимости управлять сложными, фрагментированными кодовыми базами, типичными для EfficientDet.
- Надежно поддерживаемая экосистема: Благодаря быстрым обновлениям, обширной документации и активному сообществу Ultralytics гарантирует совместимость с новейшими фреймворками развертывания, такими как TensorRT и OpenVINO.
- Требования к памяти: используя высокооптимизированные загрузчики данных PyTorch и упрощенные структуры сетей, модели Ultralytics YOLO требуют значительно меньше памяти CUDA во время обучения по сравнению с многоветвевыми сетями и моделями, перегруженными трансформерами.
- Универсальность: В отличие от старых архитектур, строго привязанных к обнаружению ограничивающих прямоугольников, модели Ultralytics представляют собой многозадачные системы, поддерживающие Instance Segmentation, Pose Estimation и Oriented Bounding Boxes (OBB).
Эффективность обучения с Ultralytics#
Следующий код демонстрирует простоту обучения современной модели с использованием пакета Ultralytics Python, что резко контрастирует с настройкой устаревших конвейеров TensorFlow.
from ultralytics import YOLO
# Load the highly recommended YOLO26 model
model = YOLO("yolo26s.pt")
# Train the model automatically handling hyperparameter tuning and augmentations
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the model to TensorRT for deployment
model.export(format="engine")Новый стандарт: YOLO26#
Хотя YOLOv7 и EfficientDet заложили основу для современного компьютерного зрения, ландшафт резко изменился с появлением Ultralytics YOLO26 в январе 2026 года. Спроектированная как для экстремальной точности, так и для непревзойденной производительности на периферийных устройствах, YOLO26 является главной рекомендацией для всех новых проектов в области компьютерного зрения.
Ключевые инновации YOLO26#
- Сквозной дизайн без NMS: Опираясь на фундамент, заложенный YOLOv10, модель YOLO26 является нативно сквозной. Полностью устраняя постпроцессинг Non-Maximum Suppression (NMS), она обеспечивает более низкую и стабильную задержку, что крайне важно для критически важных систем, таких как автономное вождение.
- До 43% быстрее при выводе на CPU: благодаря удалению Distribution Focal Loss (DFL), YOLO26 отличается кардинально упрощенным процессом экспорта и беспрецедентной скоростью на периферийных устройствах, таких как Raspberry Pi, что делает ее безоговорочным лидером периферийных вычислений.
- Оптимизатор MuSGD: YOLO26 включает революционный оптимизатор MuSGD — гибрид SGD и Muon, вдохновленный инновациями в обучении LLM от Moonshot AI. Это приводит к удивительно стабильной динамике обучения и гораздо более высокой скорости сходимости.
- ProgLoss + STAL: Интеграция прогрессивного лосса и выравнивания с учетом масштаба (Scale-Targeted Alignment Loss) существенно улучшает способность модели обнаруживать мелкие объекты, решая серьезную проблему для снимков с дронов и систем охранной сигнализации.
- Улучшения для конкретных задач: YOLO26 — это не просто детектор. Она включает функцию потерь семантической сегментации и многомасштабные прототипы для безупречной сегментации, оценку остаточного логарифма правдоподобия (RLE) для сверхточного трекинга поз, а также специализированный угол потерь для разрешения неопределенностей границ OBB.
Изучение альтернативных моделей#
Хотя YOLO26 представляет собой вершину современных технологий, экосистема Ultralytics поддерживает множество моделей, адаптированных для различных вариантов использования.
Для разработчиков, управляющих устаревшими системами, которым по-прежнему требуется традиционное безьякорное масштабирование, YOLO11 остается надежным и поддерживаемым вариантом в рамках платформы Ultralytics. Кроме того, для сценариев, явно требующих архитектур на основе трансформеров, RT-DETR предлагает обнаружение в реальном времени с использованием визуальных трансформеров, объединяя механизмы внимания высокого уровня и скорость выполнения в реальном времени.
В заключение отметим, что если EfficientDet дает академическое понимание составного масштабирования, а YOLOv7 предлагает надежную базовую производительность в реальном времени, то современным предприятиям лучше всего использовать платформу Ultralytics. Используя YOLO26, команды могут обеспечить максимальную производительность, минимальные трудозатраты на обучение и защитить свои ИИ-решения от устаревания в будущем.