Как много вы знаете о методах поиска нейронной архитектуры?

машинное обучение глубокое обучение

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

из arXiv,Авторы: Мартин Вистуба и др., составлено Heart of Machines, участие: Ли Шимэн, Чжан Цянь.

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

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

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

введение

Последние два года область машинного обучения работает над автоматизацией процесса поиска. Работа Zoph and Le (2017), так сказать, положила начало этим исследовательским усилиям, продемонстрировав, что алгоритмы обучения с подкреплением могут обнаруживать хорошие архитектуры. Вскоре после этого Real и др. (2017) заявили, что нейроэволюционный подход, изученный до сих пор (Floreano et al., 2008), также может дать аналогичные результаты.

Но два метода поиска должны использовать графический процессор для запуска тысяч часов. Следовательно, последующая работа, которая пытается уменьшить вычислительное бремя. По пути, многие успешные алгоритмы используют принципы хороших параметров модели обучения, были повторно использованы, наиболее заметной является CAI et al. (2018A) и Pham et al. (2018) работают. CAI et al. (2018A) предложили начать поиск из простой архитектуры, зарезервированной для функции, управляемой, постепенно увеличивая ширину и глубину поиска.

В настоящее время более популярный и быстрый метод поиска предложен Фамом и др. (2018), которые создают чрезмерно параметризованные архитектуры, включающие все архитектуры в пространстве поиска. На каждом временном шаге алгоритма отбирается и обучается небольшое подмножество этой большой архитектуры. После обучения выбранные архитектуры могут совместно использовать обучающие веса, что снижает усилия по поиску до уровня, сравнимого с обучением одной архитектуры.

Дизайн пространства поиска представляет собой еще один важный компонент поиска нейронной архитектуры. Помимо ускорения процесса поиска, это также влияет на продолжительность поиска и качество выдаваемых им решений. В ранних работах по поиску нейронной архитектуры пространство проектирования предназначалось в основном для поиска последовательных архитектур. Но поскольку созданные вручную разветвленные архитектуры превзошли традиционные сети, вскоре после публикации были предложены подходящие пространства для поиска, и эти пространства стали нормой в этой области (Zoph et al., 2018).

Пока эти работы продолжаются, исследователи расширили горизонты поиска нейронной архитектуры, надеясь, что поиск нейронной архитектуры может сократить время поиска и ошибку обобщения при обнаружении архитектур. Методы, которые могут обрабатывать несколько целевых функций одновременно, начинают проникать в поле зрения людей. Заметная работа в этой области включает в себя попытку ограничить количество параметров модели (Tan et al., 2018; Kim et al., 2017) или других, чтобы развернуть модель на мобильных устройствах. Кроме того, разработанные методы поиска архитектуры также были расширены для расширенной автоматизации других связанных компонентов глубокого обучения. Например, поиск функций активации (Ramachandran et al., 2018) и подходящее дополнение данных (Cubuk et al., 2018a).

В настоящее время автоматизация глубокого обучения в виде поиска нейронной архитектуры является одним из самых быстрорастущих направлений в области машинного обучения. Интересные работы появляются каждую неделю на arXiv.org (http://arxiv.org/) и в основных публикациях конференций, поэтому легко заблудиться.

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

Пространство поиска нейронной архитектуры

Пространство поиска нейронной архитектуры — это подпространство, обычно определяемое для нейронных архитектур. Его вычислительное пространство ограничено, и на архитектуру могут быть наложены определенные ограничения. Затем в этой статье пространство поиска используется для обозначения набора возможных решений для методов поиска нейронной архитектуры.

глобальное пространство поиска

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

На рис. 1 показан пример архитектуры пространства поиска, ограниченного шаблоном.


Рисунок 1: Глобальное пространство поиска: (а) пространство последовательного поиска; (б) то же, что и пропуски; (в) архитектурный шаблон, только связи между синими операциями не восстанавливаются.

Еще одна работа Тана и др. (2018) заключается в поиске мобильных устройств, которые можно развернуть на мобильных устройствах.Нейронные сетиМодель, которая работает эффективно с точки зрения точности, времени вывода и количества параметров. Для этой цели они разработали подходящее пространство поиска, состоящее из архитектур с иерархическими представлениями.


Рисунок 2: Тан и др. (2018) предлагают разбить архитектуру на разные части. Каждая часть i имеет свой шаблон (синяя операция), эта часть повторяется n_i раз и имеет f_i фильтров.

пространство поиска на основе ячеек

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

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

Рис. 3. Структура экземпляра пространства поиска NASNet. n нормальных клеток, за которыми следует редукционная клетка. Такая последовательность повторяется несколько раз, и блок редукции также может повторяться.

На рис. 4 показан пример визуализации клеточной структуры.

Рисунок 4: В качестве примера взята уменьшенная ячейка архитектуры NASNet-A (Zoph et al., 2018), показывающая, как выглядит ячейка в пространстве поиска NASNet. Блоки можно использовать в качестве входных данных для других блоков (таких как блок 1 и блок 3), а неиспользуемые блоки объединяются вместе, чтобы стать выходными данными ячеек.

Уже возможно определить пространство поиска, подходящего для мобильных устройств, используя парадигму дизайна на основе ячейки. Dong et al. (2018) предложил поисковое пространство, которое конкретно удовлетворяет такие потребности (например, целей с меньшим количеством параметров и меньшего количества вывода).

Рисунок 7: Мобильное поисковое пространство, используемое Донгом и др. (2018 г.). Вся сеть, включая ячейки, плотно связана.

Глобальное пространство поиска по сравнению с пространством поиска на основе ячеек

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

Несмотря на это, пространство поиска на основе ячеек можно легко переносить между наборами данных благодаря обнаруженным архитектурам. Более того, меняя количество фильтров и ячеек, сложность архитектуры можно менять почти произвольно.

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

Оптимизация

Оптимизация функции отклика f представляет собой глобальную задачу оптимизации черного ящика. Далее будут обсуждаться несколько стратегий оптимизации, основанных на обучении с подкреплением, эволюционных алгоритмах и т. д.

обучение с подкреплением

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


Рисунок 9: Общая структура алгоритмов обучения с подкреплением.

Обучение временной разнице: такие методы, как SARSA, TD-λ и Q-обучение, пытаются найти эту политику неявно, аппроксимируя функцию оптимального значения. Тогда оптимальная политика определяется как жадная политика в соответствии с функцией оптимального значения. Функции оптимального значения v∗(s) и q∗(a,s) удовлетворяют критерию оптимальности Беллмана.

Методы градиента политики: другие альтернативные методы в RL (вместе называемые методами градиента политики) не применяют функцию значения, а напрямую изучают политику, определяемую набором параметров πθ(a|s). Эти методы выбирают действия без явной ссылки на функцию значения.

Оптимизация на основе Q-обучения: Бейкер и др. (2017) были одними из первых, кто предложил алгоритмы на основе RL для поиска нейронной архитектуры. Они объединили Q-обучение, ε-жадность и воспроизведение опыта при разработке своих алгоритмов. Действия в их подходе — это выбор различных слоев для добавления в архитектуру, а также операции, завершающие построение архитектуры и считающие ее завершенной.

Оптимизация, основанная на методах градиента политики: альтернативы методам, основанным на градиенте политики, также использовались в поиске нейронной архитектуры. Зоф и Ле (2017) первыми изучили этот подход к моделированию. Они моделируют непосредственно на контроллере, прогнозируемые значения которого можно рассматривать как действия, формирующие нейронную архитектуру.

Рис. 10. Зоф и Ле (2017) используют контроллер для прогнозирования структуры слоя (прогнозы для пропущенных соединений не показаны).

Эволюционные алгоритмы

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

Рисунок 11: Общая структура эволюционных алгоритмов.

В контексте этой работы в этой статье обсуждаются шесть важных работ по поиску нейронной архитектуры на основе EA. Краткий обзор этих методов приведен в таблице 1.

Таблица 1: Подробная информация о различных эволюционных алгоритмах поиска нейронной архитектуры.

Оптимизация на основе прокси

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

Луо и др. (2018) использовали интересный подход. Вместе они изучили автоэнкодер для представления архитектуры и суррогатную модель, которая принимала в качестве входных данных непрерывное кодирование, предоставляемое автоэнкодером, код архитектуры (рис. 15).

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

Рисунок 15: Луо и др. (2018) предлагают комбинированную модель автокодировщика и суррогатной модели. Эта модель достигает α≈α ̂ и f(α)≈f ̂(α) путем совместного обучения

однократный поиск архитектуры

Метод поиска архитектуры, который обучает только одну нейронную сеть в процессе поиска, определяется как одноразовый. Затем нейронная сеть выводит архитектуру во всем пространстве поиска в качестве решения проблемы оптимизации. Большинство архитектур, рассматриваемых с однократным подходом, основаны на сверхпараметризованных сетях.

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

Разделение веса: Фам и др. (2018) выполняют поиск в подпространстве пространства поиска NASNet (см. 2.2) и работают в сети с избыточными параметрами, которая охватывает все пространство поиска.

Рисунок 17: Слева: часть сверточной нейронной архитектуры на определенной глубине. На рисунке показаны операции для разных размеров, таких как 4 и 8. Глубина сверточных нейронных структур произвольна. Справа: пример распределения веса только с двумя операциями в последовательном пространстве поиска.

Поиск дифференцируемой архитектуры: Лю и др. (2018c) предлагают альтернативный метод оптимизации, который использует оптимизацию на основе градиента для минимизации потерь обучающего набора, изучения параметров модели θ, в свою очередь, минимизации потерь проверочного набора, структурного параметра β изучается.

Гиперсети: Брок и др. (2018) предлагают использовать динамические гиперсети (Ха и др., 2017), которые представляют собой нейронную сеть, генерирующую веса для другой нейронной сети. Обученная гиперсеть может генерировать веса сети для различных архитектур. Он может упорядочивать различные архитектуры с помощью суперсети и получать окончательную архитектуру, которую затем можно обучить с нуля. Этот подход также может совместно использовать веса, но большинство весов распределяются по всей гиперсети.

Суммировать

В таблице 2 представлены результаты, полученные с помощью различных алгоритмов на эталонном наборе данных CIFAR-10 для задач классификации.

Таблица 2: Результаты CIFAR-10 и необходимое время поиска для различных алгоритмов поиска, обсуждаемых в этой статье. Кроме того, в приведенной выше таблице перечислены результаты, полученные с помощью различных случайных поисков и созданных вручную архитектур.

Ссылка на статью: https://arxiv.org/abs/1905.01392