MnasNet: классический облегченный метод поиска нейронной сети | CVPR 2019

глубокое обучение

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

Источник: [Примечания по разработке алгоритмов Сяофэя] Публичная учетная запись.

Диссертация: MnasNet: поиск нейронной архитектуры с учетом платформы для мобильных устройств

Introduction


При проектировании мобильной сверточной сети часто приходится идти на компромисс между скоростью и точностью. Чтобы разработать лучшую мобильную сверточная сеть, в документе предлагается метод поиска архитектуры нейронной сети для мобильных сетей. Приблизительные шаги показаны на рисунке 1. . . . По сравнению с предыдущим методом основной вклад этого метода имеет 3 пункта:

  • Превратите задачу проектирования в задачу многокритериальной оптимизации, принимая во внимание как точность, так и фактическое время вывода. Поскольку количество вычисляемых FLOPS не всегда соответствует фактическому времени вывода (MobileNet, 575M, 113 мс против NASNet, 564M, 183 мс), в документе измеряется время вывода при работе на реальном мобильном устройстве.
  • Большинство предыдущих методов поиска сначала ищут оптимальную единицу, а затем объединяют ее в сеть.Хотя это может оптимизировать пространство поиска, это подавляет разнообразие слоев. Чтобы решить эту проблему, в документе предлагается факторизованное иерархическое пространство поиска, которое позволяет слоям иметь структурные различия, сохраняя при этом хороший баланс между гибкостью и размером пространства поиска.

  • При условии использования мобильных терминалов он может достичь SOTA ImageNet и COCO, скорость выше, а модель легче. Как показано на рисунке 2, при более высокой точности MansNet работает в 1,8 и 2,3 раза быстрее, чем MobieNet и NASNet-A соответственно.

Problem Formulation


  Для моделейm,ACC(m)точность модели,LAT(m)Вывод для целевой мобильной платформы требует много времени,Tэто цель, требующая много времени, формула 1 заключается в том, чтобы максимизировать точность при условии соблюдения трудоемких

  Однако уравнение 1 имеет только оптимальную точность и не выполняет несколько оптимальных по Парето, поэтому в статье используется метод взвешенного произведения уравнения 2 для аппроксимации многокритериальной оптимизации.

wвесовой коэффициент,\alphaи\betaДля констант, специфичных для приложения (константы, специфичные для приложения), настройки этих двух значений используются для обеспечения того, чтобы те, которые соответствуют компромиссам между точностью и задержкой, имели аналогичные вознаграждения, то есть высокую точность и немного больше времени. и немного меньшая точность имеют ту же награду. Например, эмпирически считается, что удвоение затрат времени обычно приводит к повышению точности на 5%.l,Точностьa), Модель M2 (трудоемкая2l,Точностьa(1+5\%)), они должны иметь одинаковую награду:Reward(M2)=a\cdot (1+5\%)\cdot (2l/T)^\beta\approx Reward(M1)=a\cdot (l/T)^\beta,получить\beta=-0.07. Более поздние эксперименты не объяснили использование\alpha=\beta=-0.07

  На рис. 3 показана кривая целевой функции при различных константах, приведенный выше рисунок(\alpha=0,\beta=-1)Это означает, что точность прямого вывода соответствует затратам времени, и если она превышает затраты времени, она будет строго наказана.(\alpha=\beta=-0.07)Это использование трудоемкости в качестве мягкого ограничения для плавной настройки целевой функции.

Mobile Neural Architecture Search


Factorized Hierarchical Search Space

  В работе предлагаются отдельные иерархические пространства поиска.Общая структура показана на рисунке 4. Модель сверточной нейронной сети разбивается на независимые блоки, при этом вход блока постепенно уменьшается, а количество ядер свертки в блоке увеличивается. Каждый блок выполняет независимый поиск блока, и каждый блок содержит несколько идентичных слоев, определяемых поиском блока. Цель поиска — выбрать наиболее подходящий оператор и параметры (размер ядра, размер фильтра) на основе размера ввода и вывода для достижения лучшего компромисса между точностью и задержкой.

  Подпоиск каждого блока включает в себя 6 вышеперечисленных шагов, таких как блок 4 на рисунке 4, каждый слой представляет собой инвертированное узкое место свертки 5x5 и остаточный путь пропуска, всегоN_4Этаж

  При выборе пространства поиска в качестве эталона используется MobileNetV2.Количество блоков на рисунке 4 соответствует MobileNetV2, а структура MobileNetV2 такая же, как указано выше. На основе MobileNetV2 количество слоев в каждом блоке составляет\{0,+1,-1\}Выполняются сложение и вычитание, и выбирается количество ядер свертки\{0.75,1.0,1.25\}
  Разложенное иерархическое пространство поиска, предложенное в этой статье, имеет особые преимущества для балансировки разнообразия слоев и размера пространства поиска.BБлоки, пространство подпоиска каждого БлокаSВ среднем каждый блок имеетNслоев, общее пространство поиска составляетS^B, сравнить пространство, искомое по слоюS^{B*N}значительно меньше

Search Algorithm

  В работе используется метод обучения с подкреплением NAS для оптимизации ожидания вознаграждения по формуле 2. В каждом раунде контроллер в соответствии с текущими параметрами\thetaпартия моделей, каждая модельmПолучить точность после тренировкиACC(m)И фактическое время рассужденийLAT(m), получить вознаграждение по формуле 2, а затем использовать Proximal Policy Optimization для обновления параметров контроллера\thetaМаксимизируйте формулу 5

Experimental Setup


В статье сначала пытались выполнить архитектурный поиск на CIFAR-10, а затем мигрировали на большие наборы данных, но обнаружили, что это не работает, поскольку учитывались фактические затраты времени, а применительно к большим наборам данных сети обычно требуется быть увеличен, и времени не точно. Поэтому статья ищет прямо в ImageNet, но обучает каждую модель только 5 эпох для ускорения. Контроллер RNN согласуется с NASNet.На поиск 4,5 дня уходит 64 TPUv2.Каждая модель использует мобильный телефон Pixel 1 для трудоемкого тестирования.В итоге тестируется около 8K моделей,и топ 15 и топ 1 модели выбраны для полного обучения ImageNet и миграции COCO, разрешения входных изображений224\times 224и320\times 320

Results


ImageNet Classification Performance

T=75ms,\alpha=\beta=-0.07, результаты показаны в таблице 1, MnasNet в 1,8 раза быстрее, чем MobileNetV2 (1,4), квази-0,5%, в 2,3 раза быстрее, чем NASNet-A, квази-1,2%, а немного более крупная модель MnasNet-A3 точнее, чем ResNet- 50, но меньше Используются 4,8-кратные параметры и 10-кратные вычисления

  Поскольку в предыдущем методе не использовался модуль SE, в документе было добавлено сравнительное обучение, и эффект MnasNet все же лучше, чем в предыдущем методе.

Model Scaling Performance

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

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

COCO Object Detection Performance

  В документе сравнивается производительность MnasNet на COCO. Видно, что MnasNet имеет более высокий уровень точности, использует в 7,4 раза меньше параметров и в 42 раза меньше вычислений.

Ablation Study and Discussion


Soft vs. Hard Latency Constraint

  Метод многоцелевого поиска позволяет\alphaи\betaВыполните жесткие и мягкие временные ограничения, как показано на рисунке 6.(\alpha=0,\beta=-1)и(\alpha=\beta=-0.07), целевое время составляет 75 мс, вы можете увидеть мягкий поиск в более широкой области, построить множество моделей, которые занимают около 75 мс, а также построить больше моделей менее 40 мс и более 110 мс.

Disentangling Search Space and Reward

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

MnasNet Architecture and Layer Diversity

  На рисунке 7(a) показана структура MnasNet-A1, которая содержит различные структуры слоев.Видно, что сеть использует свертки как 5x5, так и 3x3, а предыдущие методы используют только свертки 3x3.

  В таблице 6 показана модель MansNet и ее варианты. Вариант использует только определенный слой для построения сети. Можно видеть, что MnasNet имеет лучший компромисс с точки зрения точности и времени.

CONCLUSION


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



Если эта статья была вам полезна, ставьте лайк или смотрите~ Для получения дополнительной информации, пожалуйста, обратите внимание на общедоступную учетную запись WeChat [Примечания по разработке алгоритмов Xiaofei].

work-life balance.