Что такое EfficientNet? Краткий обзор
Узнай, как EfficientNet использует составное масштабирование, блоки MBConv и механизм squeeze-and-excitation, чтобы сбалансировать точность и эффективность в вариантах от B0 до B7.
Abirami Vina7 мин. чтения
В 2019 году исследователи из Google AI представили EfficientNet — передовую модель компьютерного зрения, предназначенную для распознавания объектов и закономерностей на изображениях. Изначально ее разработали для классификации изображений — отнесения изображения к одной из заранее заданных категорий. Однако сегодня EfficientNet также служит бэкбоном для более сложных задач, таких как обнаружение объектов, сегментация и трансферное обучение.
До появления EfficientNet такие модели машинного обучения и компьютерного зрения пытались повысить точность, добавляя слои или увеличивая их размер. Слои — это этапы нейросетевой модели (разновидности модели глубокого обучения, вдохновленной человеческим мозгом), на которых обрабатываются данные, чтобы модель изучала закономерности и повышала точность.
Эти изменения приводили к компромиссу: традиционные модели ИИ становились больше и медленнее, а прирост точности часто был незначительным по сравнению со значительным увеличением требуемых вычислительных ресурсов.
EfficientNet использует другой подход. Глубина (количество слоев), ширина (количество блоков в каждом слое) и разрешение изображения (уровень детализации входных изображений) увеличиваются одновременно и сбалансированно. Этот метод называется составным масштабированием. В результате получается меньшая и более быстрая модель, способная работать лучше старых моделей, таких как ResNet или DenseNet.
Сегодня более новые модели компьютерного зрения, такие как Ultralytics YOLO11 и ее преемница Ultralytics YOLO26, обеспечивают более высокую точность, скорость и эффективность. Тем не менее 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: во время обучения некоторые связи внутри сети случайным образом отключаются. Этот метод стохастической регуляризации (случайный прием, который не дает модели заучивать обучающие данные вместо обобщения) уменьшает переобучение, заставляя сеть формировать более надежные представления признаков (более устойчивые и общие закономерности в данных), которые лучше переносятся на ранее не встречавшиеся данные.

Рис. 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%.

Рис. 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, чтобы больше узнать об ИИ. Посети страницы наших решений, чтобы узнать о ИИ в здравоохранении и компьютерном зрении в автомобильной отрасли. Ознакомься с нашими вариантами лицензирования и начни создавать решения на основе компьютерного зрения уже сегодня!
Автор
Комментарии
Задай вопрос, поделись результатами или помоги кому-нибудь.










