EfficientDet и YOLO11#
Выбор оптимальной архитектуры нейронной сети — основа любого успешного приложения для компьютерного зрения. В этом подробном руководстве проводится углублённое техническое сравнение EfficientDet от Google и Ultralytics YOLO11: анализируются различия в архитектуре, показатели производительности и оптимальные сценарии развёртывания.
Независимо от того, нужно ли тебе добиться задержки в миллисекунды на устройствах периферийного ИИ или обеспечить масштабируемую точность для инференса в облаке, важно понимать особенности этих моделей.
Профили моделей и технические характеристики#
Понимание происхождения и принципов проектирования каждой архитектуры помогает оценить её производительность в реальных задачах обнаружения объектов.
EfficientDet#
EfficientDet разработали исследователи из Google Brain. Эта модель предложила системный подход к масштабированию сетей для обнаружения объектов и новую сеть BiFPN (двунаправленная сеть пирамиды признаков).
- Авторы: Mingxing Tan, Ruoming Pang и Quoc V. Le
- Организация: Google
- Дата: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
- Документация: https://github.com/google/automl/tree/master/efficientdet#readme
YOLO11#
YOLO11 — значительный шаг вперёд для экосистемы Ultralytics: эта модель расширяет границы производительности в реальном времени, эффективности использования параметров и многозадачного обучения.
- Авторы: Glenn Jocher и Jing Qiu
- Организация: Ultralytics
- Дата: 2024-09-27
- GitHub: https://github.com/ultralytics/ultralytics
- Документация: https://docs.ultralytics.com/models/yolo11
Сравнение архитектур#
Различия в архитектуре этих моделей показывают, как за прошедшие годы разошлись стратегии их проектирования.
EfficientDet использует в качестве базовой сети EfficientNet и предлагает BiFPN, которая объединяет многомасштабные признаки сверху вниз и снизу вверх. В модели применяется метод составного масштабирования, равномерно изменяющий разрешение, глубину и ширину базовой сети, сети признаков и сетей предсказания рамок и классов. Хотя этот подход очень эффективен для максимизации средней точности (mAP), сложная маршрутизация в BiFPN иногда становится узким местом для пропускной способности памяти во время инференса.
YOLO11, напротив, использует оптимизированный модуль C3k2 и усовершенствованную голову обнаружения без якорей. Такой упрощённый подход сокращает накладные расходы при извлечении признаков. Инженеры Ultralytics разработали YOLO11 для максимально эффективного использования GPU, благодаря чему при обучении и инференсе требуется значительно меньше памяти, чем старым архитектурам и крупным моделям на основе трансформеров.
Хотя EfficientDet предназначена исключительно для обнаружения объектов, YOLO11 отличается исключительной универсальностью. Одна архитектура YOLO11 изначально поддерживает сегментацию экземпляров, классификацию изображений, оценку позы и ориентированные ограничивающие рамки (OBB).
Тесты производительности#
В таблице ниже сравнивается производительность обоих семейств моделей разных масштабов на наборе данных COCO.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.6 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.1 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 87.2 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 195.3 |
Сбалансированный анализ: сильные и слабые стороны#
Ускорение на GPU: YOLO11 превосходит конкурентов в средах с GPU. Например, YOLO11m достигает mAP 51.5% за рекордные 4.7 мс на GPU T4 с использованием TensorRT. Чтобы добиться сопоставимой точности, EfficientDet-d5 требуется 67.86 мс — более чем в 14 раз дольше. Это демонстрирует превосходный баланс производительности моделей Ultralytics для приложений реального времени.
Среды с CPU: небольшие варианты EfficientDet (например, d0 и d1) обеспечивают хорошо оптимизированный инференс на CPU с использованием ONNX. Однако при переходе к крупным вариантам, например d7, точность растёт незначительно, тогда как задержка на GPU резко увеличивается.
Методика обучения и экосистема#
Удобство разработки часто не менее важно, чем теоретические возможности модели. Именно здесь проявляют себя преимущества экосистемы Ultralytics.
EfficientDet сильно зависит от устаревшей экосистемы TensorFlow и сложных библиотек AutoML. Настройка собственного конвейера обучения требует длительного освоения, кропотливого управления зависимостями и ручной настройки якорей и функций потерь.
В свою очередь, Ultralytics обеспечивает непревзойдённую простоту использования. Благодаря хорошо поддерживаемой экосистеме PyTorch для обучения модели YOLO достаточно всего нескольких строк кода. Фреймворк автоматически выполняет расширенную аугментацию данных и планирование скорости обучения, а также включает встроенную функцию подбора гиперпараметров.
Пример кода: начало работы с Ultralytics#
Этот надёжный пример кода, готовый к промышленной эксплуатации, показывает, насколько просто выполнять обучение и инференс через Python API.
from ultralytics import YOLO
# Загрузка предварительно обученной облегчённой модели YOLO11
model = YOLO("yolo11s.pt")
# Обучи модель на собственном датасете
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Выполнение быстрого инференса на изображении
results = model.predict("https://ultralytics.com/images/bus.jpg")
results[0].show()Оптимальные сценарии применения#
Когда использовать EfficientDet: EfficientDet остаётся подходящим вариантом для исследовательских сред, в которых активно используются конвейеры TensorFlow, или для сценариев с ограничениями по CPU, где достаточно ранних архитектур, например d0.
Когда использовать YOLO11: YOLO11 — очевидный выбор для современных корпоративных развёртываний. Исключительная скорость делает модель идеальной для автономных транспортных средств, спортивной аналитики в реальном времени и высокопроизводительного обнаружения производственных дефектов. Кроме того, низкое потребление памяти позволяет гибко развёртывать её на оборудовании с ограниченными ресурсами, например на NVIDIA Jetson.
Что дальше: переход на YOLO26#
Несмотря на высокие возможности YOLO11, разработчикам новых проектов стоит оценить и другие архитектуры Ultralytics, например проверенную временем YOLOv8 или недавно выпущенную YOLO26. Выпущенная в начале 2026 года YOLO26 развивает основу YOLO11 и представляет несколько революционных инноваций:
- Сквозная архитектура без NMS: продолжая традицию YOLOv10, YOLO26 может полностью пропускать постобработку с подавлением немаксимумов (NMS) благодаря дополнительной голове один-к-одному (
nms=False), что сокращает задержку и упрощает конвейеры развёртывания. - Оптимизатор MuSGD: гибридный оптимизатор, сочетающий стандартный SGD с Muon (вдохновлённый обучением больших языковых моделей) и значительно повышающий стабильность обучения.
- Инференс на CPU до 43% быстрее: специальные оптимизации делают YOLO26 чрезвычайно эффективной на периферийных устройствах без дискретных GPU.
- ProgLoss + STAL: усовершенствованные функции потерь значительно повышают точность обнаружения небольших объектов, что особенно важно для аэрофотоснимков и робототехники.
Изучи и другие архитектуры компьютерного зрения, включая детекторы на основе трансформеров, например RT-DETR, в нашей полной документации Ultralytics Docs.