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

Абирами Вина

6 минут чтения

29 августа 2025 г.

Узнайте об архитектуре EfficientNet и ее магии масштабирования! Изучите EfficientNet B0-B7 для классификации и сегментации изображений высочайшего уровня.

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

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

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

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

Сегодня более новые модели компьютерного зрения, такие как Ultralytics YOLO11, обеспечивают большую точность, скорость и эффективность. Тем не менее, 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 также используется функция активации Свиша (математическая функция, помогающая сети изучать паттерны), которая помогает ей обнаруживать паттерны на изображениях лучше, чем старые методы. 

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

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

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

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

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

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

Области применения 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, о которых следует помнить:

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

Основные выводы

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

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

Давайте вместе построим будущее
искусственного интеллекта!

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

Начните бесплатно
Ссылка копируется в буфер обмена