"Машинное обучение"

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

NAT может стать следующим большим шагом в глубоком обучении

Топология нейронной сети описывает, как нейроны соединяются в сеть. Эта архитектура легко адаптируется, а новые топологии часто приветствуются как прорыв в исследованиях нейронных сетей. От появления персептрона в 1958 году до нейронной сети с прямой связью, моделей долгосрочной / краткосрочной памяти и - совсем недавно - генеративных состязательных сетей, разработанных Яном Гудфеллоу, инновационные архитектуры представляют собой большие достижения в области машинного обучения.

Но как найти новые эффективные архитектуры для решения конкретных задач? До недавнего времени исключительно благодаря человеческой изобретательности. Это подводит нас к поиску нейронной архитектуры (NAS), алгоритмическому подходу к обнаружению оптимальных сетевых топологий за счет чистой вычислительной мощности. Подход - это, по сути, массивный поиск GridSearch. Протестируйте множество комбинаций гиперпараметров, таких как количество скрытых слоев, количество нейронов в каждом слое, функция активации и т. Д., Чтобы найти наиболее эффективную архитектуру. Если это звучит невероятно ресурсоемко, это так.

NAS можно разбить на три компонента, которые охватывают различные проблемы оптимизации, которые он должен решить.

  1. Пространство поиска: параметры, которые нужно проверить. Как предупреждают Кириакидес и Маргаритис [2], сокращение пространства поиска сбережет ресурсы, но без соответствующих знаний предметной области и интуиции о возможных эффективных архитектурах можно легко упустить оптимальное решение. В самом деле, очень легко внести предвзятость в поиск, только адаптируя уже известные успешные архитектуры. Вы только укрепите то, что мы уже знаем, как работать.
  2. Метод оптимизации: как исследовать пространство поиска. Необходимо сбалансировать ценность дальнейших исследований для достижения глобального оптимума со стоимостью этих исследований. Существует множество методов, которые можно использовать, включая эволюционные алгоритмы (которые снова появятся позже), обучение с подкреплением и байесовскую оптимизацию.
  3. Оценка кандидатов: как выбрать лучшую модель. Это более просто, но, опять же, требует больших вычислительных ресурсов. Этого можно до некоторой степени обойти, используя меньшее количество эпох обучения или разделяя веса между моделями по мере продолжения процесса.

Я рекомендую прочитать больше об эволюционных алгоритмах здесь [3].

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

Передача нейронной архитектуры, новое представление о трансферном обучении

Трансферное обучение традиционно означало использование предварительно обученных нейронных сетей с замороженными весами нейронов для значительного улучшения результатов конкретных моделей. Эти модели, такие как VGG, Inception, Xception и MobileNet, представляют собой сложные глубокие сети, обученные на наборе данных ImageNet, содержащем более 1,2 миллиона изображений. Это позволяет людям использовать мощные модели без необходимости ресурсоемкого обучения.

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

Представляем перенос нейронной архитектуры, новый подход к переносному обучению. Описанный исследователями из Университета штата Мичиган, Чжичао Лу, Гаутамом Срикумаром, Эриком Гудманом, Вольфгангом Банцафом, Кальянмоем Деб и Вишну Нареш Боддети, NAT позволяет создавать индивидуальные архитектуры, оптимизированные для проблемного пространства пользователя. Этот процесс автоматизирует NAS, но позволяет обойти некоторые сложности, которые создает NAS.

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

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

Первоначально этот пост породил метод, использованный для проведения самого многоцелевого поиска. Исследователи использовали эволюционный алгоритм (EA) для поиска оптимальных топологий для подсетей. Советники используют «выживаемость наиболее приспособленных» на протяжении многих поколений для определения оптимальных гиперпараметров.

Общий процесс выглядит следующим образом:

  1. Выберите начальную популяцию из ранее исследованных архитектур
  2. Создавать «потомков» в виде мутаций и кроссоверов «родительских» архитектур.
  3. «Выживание наиболее приспособленных» - оставьте только лучшие архитектуры k для следующего поколения родителей
  4. Повторяйте до тех пор, пока не будут достигнуты желаемые объективные пороговые значения.

Результаты, о которых сообщают исследователи, просто поразительны. При обучении суперсети в ImageNet и оценке подсетей на десяти наборах данных классификации изображений, включая ImageNet, CIFAR-10 и CIFAR-100, модели NAT неизменно превосходили современные модели, включая Inception, ResNet и MobileNet, при этом требуя на порядок меньше FLOP.

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

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

Если NAT или какой-либо из его методов представляют интерес, прочтите [1] для более подробного объяснения! А вот - страница исследователя на GitHub для NAT.

Не стесняйтесь изучать другие мои статьи здесь и связываться со мной в LinkedIn здесь.

Источники

[1] З. Лу, Г. Срикумар, Э. Гудман и др., Neural Architecture Transfer (2020), arXiv: 2005.05859.

[2] Г. Кириакидес и К. Маргаритис, Введение в поиск нейронной архитектуры для сверточных сетей (2020), arXiv: 2005.11074.

[3] А. Слосс и С. Густафсон, Обзор эволюционных алгоритмов 2019 (2019), arXiv: 1906.08870.