В этой статье предлагается метод поиска архитектуры нейронной сети на мобильном терминале.Этот метод в основном имеет две идеи.Во-первых, метод многокритериальной оптимизации используется для интеграции времени, требующего модели на реальном устройстве, в поиск, а затем для поддержания сети используется декомпозированное иерархическое пространство поиска.Хотя слои разнообразны, пространство поиска по-прежнему очень простое, что может сделать искомую модель лучшим компромиссом между точностью и трудоемкостью
Источник: [Примечания по разработке алгоритмов Сяофэя] Публичная учетная запись.
Диссертация: MnasNet: поиск нейронной архитектуры с учетом платформы для мобильных устройств
- Адрес бумаги:АР Вест V.org/ABS/1807.11…
- Кодовый адрес:GitHub.com/tensorflow/…
Introduction
При проектировании мобильной сверточной сети часто приходится идти на компромисс между скоростью и точностью. Чтобы разработать лучшую мобильную сверточная сеть, в документе предлагается метод поиска архитектуры нейронной сети для мобильных сетей. Приблизительные шаги показаны на рисунке 1. . . . По сравнению с предыдущим методом основной вклад этого метода имеет 3 пункта:
- Превратите задачу проектирования в задачу многокритериальной оптимизации, принимая во внимание как точность, так и фактическое время вывода. Поскольку количество вычисляемых FLOPS не всегда соответствует фактическому времени вывода (MobileNet, 575M, 113 мс против NASNet, 564M, 183 мс), в документе измеряется время вывода при работе на реальном мобильном устройстве.
- Большинство предыдущих методов поиска сначала ищут оптимальную единицу, а затем объединяют ее в сеть.Хотя это может оптимизировать пространство поиска, это подавляет разнообразие слоев. Чтобы решить эту проблему, в документе предлагается факторизованное иерархическое пространство поиска, которое позволяет слоям иметь структурные различия, сохраняя при этом хороший баланс между гибкостью и размером пространства поиска.
- При условии использования мобильных терминалов он может достичь SOTA ImageNet и COCO, скорость выше, а модель легче. Как показано на рисунке 2, при более высокой точности MansNet работает в 1,8 и 2,3 раза быстрее, чем MobieNet и NASNet-A соответственно.
Problem Formulation
Для моделей,
точность модели,
Вывод для целевой мобильной платформы требует много времени,
это цель, требующая много времени, формула 1 заключается в том, чтобы максимизировать точность при условии соблюдения трудоемких
Однако уравнение 1 имеет только оптимальную точность и не выполняет несколько оптимальных по Парето, поэтому в статье используется метод взвешенного произведения уравнения 2 для аппроксимации многокритериальной оптимизации.
весовой коэффициент,
и
Для констант, специфичных для приложения (константы, специфичные для приложения), настройки этих двух значений используются для обеспечения того, чтобы те, которые соответствуют компромиссам между точностью и задержкой, имели аналогичные вознаграждения, то есть высокую точность и немного больше времени. и немного меньшая точность имеют ту же награду. Например, эмпирически считается, что удвоение затрат времени обычно приводит к повышению точности на 5%.
,Точность
), Модель M2 (трудоемкая
,Точность
), они должны иметь одинаковую награду:
,получить
. Более поздние эксперименты не объяснили использование
На рис. 3 показана кривая целевой функции при различных константах, приведенный выше рисунокЭто означает, что точность прямого вывода соответствует затратам времени, и если она превышает затраты времени, она будет строго наказана.
Это использование трудоемкости в качестве мягкого ограничения для плавной настройки целевой функции.
Mobile Neural Architecture Search
Factorized Hierarchical Search Space
В работе предлагаются отдельные иерархические пространства поиска.Общая структура показана на рисунке 4. Модель сверточной нейронной сети разбивается на независимые блоки, при этом вход блока постепенно уменьшается, а количество ядер свертки в блоке увеличивается. Каждый блок выполняет независимый поиск блока, и каждый блок содержит несколько идентичных слоев, определяемых поиском блока. Цель поиска — выбрать наиболее подходящий оператор и параметры (размер ядра, размер фильтра) на основе размера ввода и вывода для достижения лучшего компромисса между точностью и задержкой.
Подпоиск каждого блока включает в себя 6 вышеперечисленных шагов, таких как блок 4 на рисунке 4, каждый слой представляет собой инвертированное узкое место свертки 5x5 и остаточный путь пропуска, всегоЭтаж
При выборе пространства поиска в качестве эталона используется MobileNetV2.Количество блоков на рисунке 4 соответствует MobileNetV2, а структура MobileNetV2 такая же, как указано выше. На основе MobileNetV2 количество слоев в каждом блоке составляетВыполняются сложение и вычитание, и выбирается количество ядер свертки
Разложенное иерархическое пространство поиска, предложенное в этой статье, имеет особые преимущества для балансировки разнообразия слоев и размера пространства поиска.Блоки, пространство подпоиска каждого Блока
В среднем каждый блок имеет
слоев, общее пространство поиска составляет
, сравнить пространство, искомое по слою
значительно меньше
Search Algorithm
В работе используется метод обучения с подкреплением NAS для оптимизации ожидания вознаграждения по формуле 2. В каждом раунде контроллер в соответствии с текущими параметрамипартия моделей, каждая модель
Получить точность после тренировки
И фактическое время рассуждений
, получить вознаграждение по формуле 2, а затем использовать Proximal Policy Optimization для обновления параметров контроллера
Максимизируйте формулу 5
Experimental Setup
В статье сначала пытались выполнить архитектурный поиск на CIFAR-10, а затем мигрировали на большие наборы данных, но обнаружили, что это не работает, поскольку учитывались фактические затраты времени, а применительно к большим наборам данных сети обычно требуется быть увеличен, и времени не точно. Поэтому статья ищет прямо в ImageNet, но обучает каждую модель только 5 эпох для ускорения. Контроллер RNN согласуется с NASNet.На поиск 4,5 дня уходит 64 TPUv2.Каждая модель использует мобильный телефон Pixel 1 для трудоемкого тестирования.В итоге тестируется около 8K моделей,и топ 15 и топ 1 модели выбраны для полного обучения ImageNet и миграции COCO, разрешения входных изображенийи
Results
ImageNet Classification Performance
,
, результаты показаны в таблице 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
Метод многоцелевого поиска позволяети
Выполните жесткие и мягкие временные ограничения, как показано на рисунке 6.
и
, целевое время составляет 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].