Примечания на стороне - Лукас Галке
В этом выпуске мы представляем вам статью, написанную членом команды MTank, в которой исследуются методы снижения затрат на обучение нейронной сети. Определив силу обучения подсетей на ранних этапах обучения, т. Е. выбрав выигрышную подсеть, мы потенциально можем снизить затраты на вычисления для современных исследователей и практиков глубокого обучения.
В дополнение к нашим сериализованным блогам, 'AI Distillery и Cups to Consciousness, мы время от времени будем публиковать части и материалы как отдельные или краткосрочная серия. Говоря о не по теме и несколько двусмысленном характере этих материалов по сравнению с другими нашими публикациями, мы решили назвать это Примечания на стороне.
"Боковые примечания" будут именно этим. Вспомогательные материалы, связанные с MTank и AI, которые, как мы думаем, могут понравиться нашим читателям. Форматы будут разными, но, вероятно, будут включать все. Думайте об этом как о сборнике дополнительных проектов, переговоров и идей.
Вступление
Нейронные сети становятся все больше и больше и используют до миллиардов параметров. Исследователи начали количественно оценивать усилия по обучению этих крупномасштабных моделей в размере $ $ $ на платформах облачных вычислений и даже в тоннах выбросов углерода. Раньше считалось, что чрезмерно параметризованные сети имеют большую пропускную способность, но также более склонны к избыточному соответствию обучающих данных. Недавние исследования показали, что чрезмерная параметризация, по сути, действует как регуляризатор и приводит к повышению эффективности обобщения [Arora et al. 2018].
Однако после обучения большие части таких крупномасштабных моделей могут быть удалены без ущерба для точности модели. Техники обрезки, касающиеся оптимального повреждения мозга, восходят к [LeCun 1990]. Мотивация для сокращения состоит в том, чтобы уменьшить размер модели и, следовательно, уменьшить требования к памяти, время вывода и потребление энергии. Одним из методов отсечения является отсечение по величине, при котором удаляются те веса, которые имеют наименьшую величину и, следовательно, наименьшее влияние на выходной сигнал сети [Han et al. 2015].
До появления гипотезы лотерейных билетов (LTH) [Frankle & Carbin, 2019] распространенным опытом было то, что сокращенные архитектуры было труднее обучать с нуля. Теперь LTH заявляет, что определенные подсети можно обучить, чтобы они соответствовали или даже превосходили точность исходной, не обрезанной сети. Ключевая идея - итеративно обучать сеть и сокращать ее параметры до тех пор, пока не останется лишь небольшая часть параметров. На каждой итерации оставшиеся веса сбрасываются до их инициализации. Результирующая подсеть затем может быть обучена за сопоставимое время, чтобы соответствовать точности, которую могла бы достичь исходная сеть. Эти подсети называются выигрышными билетами.
Гипотеза лотерейного билета. Случайно инициализированная плотная нейронная сеть содержит подсеть, которая инициализируется таким образом, что - при изолированном обучении - она может соответствовать тестовой точности исходной сети после обучения для самое большее одинаковое количество итераций. [Франкл и Карбин, 2019 г.]
В статье LTH авторы нашли выигрышные билеты, размер которых составляет всего 10–20% от размера их плотных собратьев. При большем количестве оставшихся параметров выигрышные билеты могут даже достичь более высокой точности тестирования, чем исходные сети.
Почему это важно? LTH предполагает, что нет необходимости обучать полную модель, если бы мы могли идентифицировать выигрышные билеты только на ранних этапах процесса обучения. Если бы это было возможно, это могло бы сэкономить нам кошельки в долларах США и тонны выбросов углекислого газа.
Далее мы сначала рассмотрим мысленный эксперимент, чтобы получить интуитивное представление о выигрышных билетах. Далее мы расскажем, как идентифицируются выигрышные билеты в документе LTH. Наконец, мы рассмотрим некоторую дополнительную работу по гипотезе лотерейного билета.
Минимальный пример: сумма двух входов
Чтобы получить представление о LTH, давайте рассмотрим простую задачу вычисления суммы двух входов y = x0 + x1. Мы хотим аппроксимировать основную истину «y» с помощью двухслойной линейной нейронной сети со скрытыми модулями «n» и без смещения.
Для человека легко определить выигрышный билет по сумме двух входов. Такой выигрышный билет был бы
для некоторого «i», при этом все остальные веса равны нулю. Это гарантирует, что реальная сумма двух входных данных вычисляется на первом уровне и проходит через второй уровень.
Следовательно, этот выигрышный билет можно было бы даже обобщить за пределами области обучающих данных. Независимо от того, насколько велик мы выбрали размер скрытого слоя «n», наш выигрышный билет будет всегда состоять из трех ненулевых весов. Таким образом, мы можем обрезать все веса, кроме этих трех, без ущерба для точности. Когда мы начинаем обучение с маской, состоящей только из этих трех ненулевых параметров, сеть в конечном итоге узнает правильные веса.
Как определить выигрышные билеты
Чтобы показать, что выигрышные билеты существуют, Франкл и Карбин используют следующую процедуру:
- Инициализировать модель с параметрами θ₀ с маской m, установленной для всех
- Обучите маскированную модель для j итераций
- Удалите наименьшие веса величин и соответственно обновите маску m
- Сбросьте θ [m] до значений в θ₀ , установите все остальные параметры равными нулю.
- Повторите действия, начиная с шага 2, если не выполняется критерий остановки по разреженности или точности проверки (итеративное сокращение)
Результатом является подсеть (заданная маской m) вместе с ее инициализацией, которая может выполнить еще один обучающий проход. В своих экспериментах по классификации изображений авторы сравнивают точность выигрышных билетов со всей моделью и со случайными билетами. Случайные билеты имеют ту же структуру, но повторно инициализируются случайным образом. Главный результат состоит в том, что выигрышные билеты неизменно приводят к более высоким баллам, чем случайные билеты, а также могут соответствовать или даже превосходить полную модель.
Таким образом, случайные билеты имеют ту же структуру, что и выигрышные билеты, но выигрышные билеты приносят более высокие баллы. Это означает, что значения инициализации важны для успеха выигрышных билетов. Когда у нас больше параметров, мы получаем больше роликов для значений инициализации. Мы также получаем больше возможностей объединить подмножество хороших роликов в разреженную подсеть. Авторы предполагают, что оптимизатор затем уделяет особое внимание набору параметров, которые уже получили хорошую инициализацию. Чем больше возможных комбинаций, тем проще оптимизатору найти подмножество хорошо инициализированных параметров.
Итеративное сокращение величины
Авторы статьи LTH итеративно сокращают и переобучают свою модель. Это основано на результатах [Han et al. 2015]. Han et al. сравнили однократную обрезку, обрезку и повторное обучение и итеративную обрезку и повторное обучение с разными условиями регуляризации (см. рисунок 1). Главный результат - итеративная обрезка работает лучше всего. Франкл и Карбин отмечают, что при итеративной обрезке можно определить меньшие выигрышные билеты, чем при однократной обрезке.
Чтобы подтвердить гипотезу лотерейного билета, Франкл и Карбин должны найти подсети, которые соответствуют точности исходных сетей при * обучении изолированно *. Это означает, что они не могут использовать преимущества предыдущих раундов обучения с полной моделью. Поэтому они модифицируют процедуру обучения и обрезки, сбрасывая (не обрезанные) значения веса на их значения при инициализации.
Глобальная или локальная обрезка
Во время обрезки можно либо обрезать до желаемой доли веса на каждом слое, либо поместить веса всех слоев в один пул и обрезать глобально. В документе LTH авторы используют локальное сокращение для LeNet и Conv-2/4/6, в то время как они используют глобальное сокращение для более глубоких моделей: Resnet-18 и VGG. -19. Идея состоит в том, что в более глубоких моделях важнее сохранять веса некоторых слоев [Morcos et al. 2019]. В видении это могут быть первые уровни, которые действуют как детекторы признаков и могут не получать такое же количество отсеченных единиц, как более поздние уровни, которые могут иметь больше избыточных соединений.
Поздний сброс
Повышение успеваемости может помочь найти выигрышные билеты для более глубоких моделей [Frankle & Carbin 2019]. В последующей работе авторы ввели другой метод работы с более глубокими моделями: поздний сброс [Frankle et al. 2019]. При позднем сбросе веса не сбрасываются до значений перед первой итерацией обучения, а до некоторых значений очень рано в процессе обучения (примерно после одной-пяти итераций). Когда используется поздний сброс, больше нет необходимости в повышении скорости обучения.
Выигрышные билеты вне области изображений
Является ли феномен лотерейных билетов артефактом контролируемой классификации изображений с помощью сверточных сетей с прямой связью или же он распространяется на другие области? [Yu et al. 2019] может показать, что выигрышные билеты также существуют в архитектурах обучения с подкреплением и обработки естественного языка. Их эксперименты включают классические задачи управления, игры Atari, LSTM и трансформеры. Они могли найти выигрышные билеты для всех этих архитектур, что говорит о том, что явление LTH не ограничивается контролируемой классификацией изображений, но может быть общей чертой глубоких нейронных сетей.
Выигрышные билеты можно передавать между задачами
Пока что процедура определения выигрышных билетов по-прежнему дорогая, поскольку включает в себя несколько полных тренировочных проходов. Как мы можем получить выгоду от выигрышных билетов? Можем ли мы перенести их на другие задачи так, чтобы для целевой задачи требовалось запомнить лишь небольшую часть весов?
Этот вопрос уже рассматривается в двух статьях: [Mehta 2019] и [Morcos et al. 2019]. Обе работы остаются в области изображений и передают выигрышные билеты между различными задачами распознавания объектов. Поскольку [Mehta 2019] намерен полностью использовать исходную задачу. В этом случае он расширяет возможность позднего сброса до любого места во время обучения исходной задаче.
Его результаты показывают, что выигрышные билеты можно передавать, если хотя бы полностью подключенные уровни настроены. Тонкая настройка окончательных полносвязных слоев является обязательной в сценариях передачи обучения, потому что разные задачи имеют разные классы.
[Morcos et al. 2019] также провели эксперименты по трансферному обучению в области изображений. В исследовании рассматриваются архитектуры VGG19 и ResNet50 на базе CIFAR-10/100, FashionMNIST и MNIST, а также варьируется оптимизатор (SGD и Adam).
Их результаты показывают, что выигрышные билеты не относятся к определенному оптимизатору. Например, выигрышный билет, полученный через обучение SGD, можно использовать для инициализации весов, которые тренирует Адам. Что касается передачи между задачами, авторы сравнили выигрышные билеты из других наборов данных с выигрышными билетами, полученными на том же наборе данных.
Удивительно, но выигрышные билеты из других наборов данных почти так же хороши, как и билеты, полученные из того же набора данных. Их ключевой результат заключается в том, что из более крупных наборов данных получается больше общих выигрышных билетов.
Как выглядят выигрышные билеты?
[Чжоу и др. 2019] внимательно исследовали свойства выигрышных билетов. Они показывают, что важнейшим элементом значений инициализации являются их знаки. Похоже, что фактическая величина значения инициализации менее важна. Это может указывать на то, что оптимизаторам сложно преобразовать отрицательную атрибуцию в положительную и наоборот.
Они также предполагают, что маскирование определенных весов до нуля аналогично выполнению итераций обучения. Информация о том, что определенная функция будет нерелевантной для текущей задачи классификации, так же важна, как и проведение реальных итераций обучения.
Проанализировав различные критерии сокращения и изменения, авторы далее заявляют, что разреженные подсети работают особенно хорошо, когда инициализация близка к их окончательной форме. Основываясь на этой гипотезе, авторы идут еще дальше и развивают понятие супермаск, которые представляют собой простую инициализацию масок и значений, которые вообще не обучаются.
Интересно, что эти супермаски дают гораздо более высокую точность, чем случайность.
Обрезка и отсев
Отсев - это хорошо известный метод регуляризации, который способствует толерантности к разреженности во время обучения, устанавливая случайную долю весов или скрытых единиц равной нулю. В то время как вероятности выпадения рассчитываются равномерно и случайным образом, при сокращении удаляются особо низкие веса. [Gomez et al. 2019] преследуют идею улучшения взаимодействия отсева и обрезки. Идея состоит в том, что отсев можно было бы нацелить на единицы, которые, вероятно, будут сокращены, то есть те, которые имеют низкую величину.
В статье авторы анализируют не только стандартную отсеву единицы веса, но и метод отсадки веса (также известный как DropConnect), что даже ближе к применяемым методам отсечения.
Обрезка на ходу
Святой Грааль выигрышных билетов - идентифицировать их как можно раньше в процессе обучения. [Dettmers & Zettlemoyer 2019] предлагают методику выявления выигрышных билетов без необходимости дорогостоящего переподготовки. Они используют импульс градиентов, чтобы определить, насколько быстро меняются веса во время обучения и насколько последовательно они могут снизить ошибку обучения. Затем они сокращают те веса, которые не могут уменьшить ошибку последовательно после каждой эпохи обучения, и динамически перераспределяют свои значения по оставшимся параметрам.
В их экспериментах их так называемая техника разреженного импульса превосходит все рассматриваемые базовые уровни для разреженного обучения и может конкурировать даже с плотными моделями, и все это в пределах одной итерации обучения.
Ограничения
Некоторые исследования ставят под сомнение гипотезу лотереи: [Gale et al. 2019] провести масштабное сравнение разреженных нейронных сетей на машинном переводе с преобразователями и классификации изображений с помощью ResNet-50. С одной стороны, их результаты подтверждают, что обрезка наивной величины [Han 2015] - лучший метод обрезки среди сравниваемых. С другой стороны, они сообщают, что подход LTH не позволяет найти выигрышные билеты для этих более глубоких архитектур. [Лю и др. 2018] показывают, что при тщательно подобранной скорости обучения случайные билеты могут работать так же хорошо, как и «выигрышные билеты», что ставит под сомнение ценность инициализаций. Обе работы, однако, еще не используют поздний сброс [Frankle et al. 2019], что помогает находить выигрышные билеты, особенно в глубоких архитектурах.
Заключение
Гипотеза лотерейного билета утверждает, что плотные нейронные сети содержат разреженные подсети, которые можно обучать изолированно, чтобы соответствовать производительности плотной сети. Этот феномен предлагает новую интерпретацию чрезмерной параметризации, которая приводит к экспоненциальному увеличению выигрышей в лотерее. Чтобы извлечь выгоду из их существования, нужно найти методы раннего выявления выигрышных билетов и вообще без обучения полной модели. Некоторые подходы уже решают эту проблему, в то время как другие сосредоточены на методах обучения, которые делают нейронные сети более податливыми для последующей обрезки.
Если бы мы могли идентифицировать выигрышные билеты на ранней стадии или передавать их в другие домены, мы бы значительно сэкономили на обучении. Иногда выигрышные билеты даже превосходят исходные сети, что может иметь значение для нашего понимания и проектирования архитектур и схем их инициализации.
Бонусный материал
- Чистая и общая реализация pytorch (итеративного) отсечения величины с нашим мысленным экспериментом, над которым можно повозиться.
использованная литература
- Арора, Санджив, Надав Коэн и Элад Хазан. « Об оптимизации глубоких сетей: неявное ускорение за счет чрезмерной параметризации .» ICML 2018.
- ЛеКун, Янн, Джон С. Денкер и Сара А. Солла. Оптимальное повреждение мозга. В Достижениях в системах обработки нейронной информации, стр. 598–605. 1990 г.
- Хан, Сонг и др. « Изучение весов и связей для эффективной нейронной сети .» NeurIPS 2015.
- Франкл, Джонатан и Майкл Карбин. « Гипотеза лотерейного билета: поиск редких, обучаемых нейронных сетей .» ICLR 2019.
- Моркос, Ари С. и др. Один билет, чтобы выиграть их всех: обобщение инициализации лотерейных билетов для наборов данных и оптимизаторов. »Препринт arXiv arXiv: 1906.02773 (2019).
- Франкл, Джонатан и др. « Гипотеза лотерейного билета в масштабе .» Препринт arXiv arXiv: 1903.01611 (2019).
- Ю, Хаонан и др. « Игра в лотерею с призами и на нескольких языках: лотерейные билеты в РЛ и НЛП .» Препринт arXiv arXiv: 1906.02768 (2019).
- Мехта, Рахул. Редкое трансферное обучение с помощью выигрышных лотерейных билетов. Препринт arXiv arXiv: 1905.07785 (2019).
- Чжоу, Хэтти, Дженис Лан, Розанна Лю и Джейсон Йосински. Разбор лотерейных билетов: нули, знаки и супермаска. Препринт arXiv arXiv: 1905.01067 (2019).
- Гомес, Эйдан Н. и др. Изучение разреженных сетей с использованием целевого отсева. Препринт arXiv arXiv: 1905.13678 (2019).
- Т. Деттмерс, Л. Зеттлемойер. Редкие сети с нуля: более быстрое обучение без потери производительности препринт arXiv arXiv: 1907.04840 (2019).
- Гейл, Тревор, Эрих Элсен и Сара Хукер. « Состояние разреженности в глубоких нейронных сетях .» Препринт arXiv arXiv: 1902.09574 (2019).
- Лю, Чжуан, Минцзе Сунь, Тинхуэй Чжоу, Гао Хуан и Тревор Даррелл. Переосмысление значения сокращения сети. Препринт arXiv arXiv: 1810.05270 (2018).