Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Руководства

Что такое EfficientNet? Краткий обзор

Узнай, как EfficientNet использует составное масштабирование, блоки MBConv и механизм squeeze-and-excitation, чтобы сбалансировать точность и эффективность в вариантах от B0 до B7.

Абирами ВинаAbirami Vina7 мин. чтения
Обзор архитектуры EfficientNet

В 2019 году исследователи из Google AI представили EfficientNet — передовую модель компьютерного зрения, предназначенную для распознавания объектов и закономерностей на изображениях. Изначально ее разработали для классификации изображений — отнесения изображения к одной из заранее заданных категорий. Однако сегодня EfficientNet также служит бэкбоном для более сложных задач, таких как обнаружение объектов, сегментация и трансферное обучение.

До появления EfficientNet такие модели машинного обучения и компьютерного зрения пытались повысить точность, добавляя слои или увеличивая их размер. Слои — это этапы нейросетевой модели (разновидности модели глубокого обучения, вдохновленной человеческим мозгом), на которых обрабатываются данные, чтобы модель изучала закономерности и повышала точность.

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

EfficientNet использует другой подход. Глубина (количество слоев), ширина (количество блоков в каждом слое) и разрешение изображения (уровень детализации входных изображений) увеличиваются одновременно и сбалансированно. Этот метод называется составным масштабированием. В результате получается меньшая и более быстрая модель, способная работать лучше старых моделей, таких как ResNet или DenseNet.

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

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

Что такое EfficientNet?#

До появления EfficientNet большинство моделей распознавания изображений повышали точность, изменяя слои или увеличивая размер входного изображения, чтобы улавливать больше деталей. Эти стратегии улучшали результаты, но также делали модели тяжелее и требовательнее к ресурсам. Им требовалось больше памяти и более мощное оборудование.

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

Архитектура EfficientNet обрабатывает изображения последовательно через блоки, каждый из которых состоит из более мелких модулей. Количество модулей в каждом блоке зависит от размера модели.

Основные блоки EfficientNet

Рис. 1. Основные блоки EfficientNet. (Источник)

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

Как работает составное масштабирование#

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

На основе B0 создаются более крупные варианты — от EfficientNet-B1 до EfficientNet-B7. С каждым шагом в сети становится больше слоев и каналов (блоков, используемых для обработки данных), а входные изображения имеют более высокое разрешение. Степень увеличения на каждом шаге задается параметром, называемым коэффициентом составного масштабирования. Он обеспечивает увеличение глубины, ширины и разрешения в фиксированных пропорциях, а не по отдельности.

Составное масштабирование увеличивает ширину, глубину модели и разрешение изображений

Рис. 2. Составное масштабирование увеличивает ширину, глубину модели и разрешение изображений. (Источник)

Архитектура EfficientNet#

Теперь рассмотрим архитектуру EfficientNet.

Она основана на MobileNetV2 — легковесной модели компьютерного зрения, оптимизированной для мобильных и встраиваемых устройств. В основе модели лежит блок Mobile Inverted Bottleneck Convolution (MBConv) — специальный слой, который обрабатывает данные изображений подобно обычной свертке, но требует меньше вычислений. Благодаря этому блоку модель работает быстрее и эффективнее использует память.

Внутри каждого блока MBConv находится модуль сжатия и возбуждения (SE). Этот модуль регулирует силу разных каналов сети: усиливает важные каналы и ослабляет остальные. Благодаря этому сеть сосредотачивается на наиболее важных признаках изображения и игнорирует прочие. В модели EfficientNet также используется функция активации Swish — математическая функция, помогающая сети усваивать закономерности, — которая позволяет лучше распознавать закономерности на изображениях по сравнению с более старыми методами.

Кроме того, в модели используется DropConnect: во время обучения некоторые связи внутри сети случайным образом отключаются. Этот метод стохастической регуляризации (случайный прием, который не дает модели заучивать обучающие данные вместо обобщения) уменьшает переобучение, заставляя сеть формировать более надежные представления признаков (более устойчивые и общие закономерности в данных), которые лучше переносятся на ранее не встречавшиеся данные.

Архитектура EfficientNet-B0

Рис. 3. Архитектура EfficientNet-B0 (Источник)

Краткий обзор вариантов моделей EfficientNet#

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

Модели EfficientNet масштабируются от B0 до B7: B0 — базовая версия, обеспечивающая баланс скорости и точности. В каждой следующей версии увеличиваются глубина, ширина и разрешение изображений, что повышает точность. Однако таким моделям требуется больше вычислительных ресурсов: от B1 и B2 до высокопроизводительных B6 и B7.

Модели EfficientNet-B3 и EfficientNet-B4 обеспечивают баланс при работе с изображениями большего размера, а B5 часто выбирают для сложных наборов данных, требующих высокой точности. Следующая версия, EfficientNetV2, обучается быстрее и эффективнее использует параметры.

Применение EfficientNet#

EfficientNet обеспечивает точные результаты, используя меньше памяти и вычислительных ресурсов, чем многие другие модели. Поэтому она полезна во многих областях — от научных исследований до повседневных продуктов.

Анализ медицинских изображений#

На медицинских изображениях, например КТ-снимках легких, часто видны едва заметные детали, критически важные для постановки точного диагноза. Модели ИИ помогают анализировать такие изображения и выявлять закономерности, которые людям может быть сложно заметить. Один из вариантов EfficientNet для этой задачи — MONAI (Medical Open Network for AI) EfficientNet, специально разработанный для анализа медицинских изображений.

Опираясь на архитектуру EfficientNet, исследователи разработали и Lung-EffNet — модель, классифицирующую КТ-снимки легких для обнаружения опухолей. Она относит снимки к доброкачественным, злокачественным или нормальным и, согласно опубликованным результатам, в экспериментальных условиях достигает точности более 99%.

Классификация опухолей на изображениях с помощью Lung-EffNet

Рис. 4. Классификация опухолей на изображениях с помощью Lung-EffNet. (Источник)

Обнаружение объектов в реальном времени#

Обнаружение объектов — это поиск объектов на изображении и определение их местоположения. Это ключевой компонент систем безопасности, беспилотных автомобилей и дронов.

EfficientNet стала важной моделью в этой области, поскольку предложила очень эффективный способ извлечения признаков из изображений. Ее метод масштабирования глубины, ширины и разрешения показал, как создавать точные модели, которые не слишком велики и не слишком медленны. Поэтому многие системы обнаружения, например EfficientDet, используют EfficientNet в качестве базовой сети.

Более новые модели, например Ultralytics YOLO11, преследуют ту же цель — сочетать скорость и точность. На эту тенденцию к созданию эффективных моделей сильно повлияли идеи таких архитектур, как EfficientNet.

Преимущества и недостатки EfficientNet#

Вот некоторые преимущества использования EfficientNet в проектах компьютерного зрения:

  • Высокая точность при меньшем количестве параметров: EfficientNet может обеспечивать точность на уровне старых моделей, таких как ResNet или DenseNet, или превосходить ее. При этом в ней меньше параметров, поэтому ее быстрее обучать и проще развертывать.
  • Масштабируемое семейство моделей: От B0 до B7 — ты можешь выбрать версию, подходящую твоему оборудованию и требованиям к прецизионности, не меняя базовую сеть.
  • Подходит для трансферного обучения: EfficientNet может обеспечивать надежную производительность модели при трансферном обучении — процессе дообучения предобученной модели для пользовательской задачи. Она может служить бэкбоном для самых разных задач компьютерного зрения и демонстрирует высокие результаты при дообучении. Например, она достигла передовой точности на широко используемом наборе данных для классификации изображений CIFAR-100, используя значительно меньше параметров, чем предыдущие модели.

Несмотря на многочисленные преимущества EfficientNet, следует учитывать и ее ограничения:

  • Требует больше памяти: Для версий EfficientNet-B6 и EfficientNet-B7 требуется много памяти GPU.
  • Масштабирование настроено для ImageNet: Параметры масштабирования разработаны для набора данных ImageNet, поэтому на существенно отличающихся наборах данных производительность может снизиться, если не выполнить дообучение. Особенно это касается небольших наборов данных: архитектуру и масштабирование EfficientNet разрабатывали для крупного и разнообразного набора данных ImageNet, в котором достаточно данных, чтобы оправдать глубину и ширину модели.
  • На некотором оборудовании работает медленнее: В EfficientNet используются слои MBConv, разработанные для эффективной работы на современном оборудовании. На старых GPU или CPU такие слои могут работать медленнее.

Главные выводы#

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

Присоединяйся к нашему сообществу и загляни в наш репозиторий GitHub, чтобы больше узнать об ИИ. Посети страницы наших решений, чтобы узнать о ИИ в здравоохранении и компьютерном зрении в автомобильной отрасли. Ознакомься с нашими вариантами лицензирования и начни создавать решения на основе компьютерного зрения уже сегодня!

Автор

Abirami Vina
Abirami Vina

Создатель контента · Ultralytics

Начав карьеру инженером по компьютерному зрению, Абирами Вина заложила прочную основу в области ИИ для компьютерного зрения и машинного обучения. Она создает контент для Ultralytics и является основательницей и главным автором Scribe of AI, где готовит качественные технические материалы для компаний, работающих в сфере ИИ. Стремясь сделать ИИ понятным и увлекательным, она помогает связать передовые технологии с их практическим применением.

Комментарии

Задай вопрос, поделись результатами или помоги кому-нибудь.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения