Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас

Что такое 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. Compound scaling увеличивает ширину, глубину и разрешение изображения модели. (Источник)

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

Далее давайте рассмотрим архитектуру EfficientNet. 

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

Внутри каждого блока MBConv находится модуль squeeze-and-excitation (SE). Этот модуль регулирует силу различных каналов в сети. Он усиливает силу основных каналов и уменьшает силу других. Модуль помогает сети сосредоточиться на наиболее важных особенностях изображения, игнорируя остальные. Модель EfficientNet также использует функцию активации Swish (математическую функцию, которая помогает сети изучать закономерности), которая помогает ей обнаруживать закономерности в изображениях лучше, чем старые методы. 

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

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

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

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

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

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

Применение EfficientNet

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

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

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

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

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

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

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

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

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

Плюсы и минусы EfficientNet

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

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

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

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

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

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

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

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

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

Начать бесплатно