Вступление

Архитектуры глубокого обучения, такие как рекуррентные нейронные сети и сверточные нейронные сети, претерпели множество значительных улучшений и были применены в областях компьютерного зрения, распознавания речи, обработки естественного языка, распознавания звука и т. Д. Наиболее часто используемый метод оптимизации для обучения очень сложных и невыпуклых DNN - это стохастический градиентный спуск (SGD) или его разновидности. Однако DNN обычно имеют некоторые невыпуклые целевые функции, которые немного сложно оптимизировать с помощью SGD. Таким образом, SGD в лучшем случае находит локальный минимум этой целевой функции. Хотя решения DNN являются локальным минимумом, они дали отличные конечные результаты. В статье 2015 г. Поверхности потерь в многослойных сетях Чороманска и др. показали, что с увеличением числа измерений разница между локальными минимумами значительно уменьшается, и, следовательно, существование плохих локальных минимумов уменьшается по экспоненте.

В статье Израильского технологического института 2018 года мы в первую очередь рассмотрим в этой статье: Тренируйтесь дольше, обобщайте лучше: устранение пробелов в обобщении в крупномасштабном пакетном обучении нейронных сетей, Хоффер и др. обратиться к хорошо известному явлению, касающемуся больших размеров пакетов во время обучения и пробела обобщения. То есть, когда при обучении DNN используется большой пакет, обученные модели, по-видимому, хуже обобщаются. Это наблюдение остается верным даже тогда, когда модели обучаются без какого-либо бюджета или ограничений, пока функция потерь не перестанет улучшаться (Keskar et al., 2017).

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

Hoffer et al. исследовать вышеупомянутый феномен в своей статье. Они исследуют начальную фазу обучения с высокой скоростью обучения и предлагают, чтобы эту фазу можно было описать с помощью многомерного процесса «случайного блуждания по случайному потенциалу» с «сверхмедленным» логарифмическим увеличением расстояния между весами от их инициализации. . Авторы отметили следующее:

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

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

Мы рассмотрим эти результаты более подробно в оставшейся части этой статьи.

Обучение с большой партией, предыстория

Настройка метода обучения
Обычно при обучении DNN скорость обучения и момент импульса изменяются с течением времени, обычно с экспоненциальным уменьшением каждые несколько эпох данных обучения. Другой распространенный подход - использование метода адаптивных параметров «режима». Это делается путем определения режимов, в которых находится процесс оптимизации. Эти режимы определяют интервалы, для которых скорость обучения постоянна в течение всего режима.

Hoffer et al. изучите фиксированную скорость обучения (в пределах определенного режима), которая экспоненциально уменьшается каждые несколько эпох. Здесь количество эпох связано с режимом, в котором находится процесс обучения. В качестве примечания, сходимость SGD, как известно, зависит от размера пакета (Li et al., 2014), но авторы здесь сосредотачиваются только на обобщение. Эксперименты проводились с использованием топологии Resnet44, предложенной He et al. (2016).

Эмпирические наблюдения из предыдущей работы
Предыдущая работа Keskar et al. (2017) изучали производительность и свойства моделей, обученных с относительно большими партиями, и сообщили о следующих наблюдениях:

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

Теоретический анализ

Обозначение
В этой статье исследуются DNN, обученные с помощью SGD. Пусть N обозначает количество выборок, на которых обучается DNN, w вектор параметров нейронной сети и L_n (w) функция потерь в выборке n. Значение w определяется минимизацией функции потерь L (w), как определено в уравнении (1).

SGD вычислит отрицательный градиент функции потерь L (w) и будет использовать его в качестве направления спуска. Градиент показан в уравнении (2).

где g - истинный градиент, а g_n - градиент на выборку. Во время обучения мы увеличиваем вектор параметров w, используя только средний градиент gˆ, вычисленный для некоторого мини-пакета B, то есть набора из M случайно выбранных индексов выборки, как определено в уравнении (3).

Авторы исследуют простейшую форму обучения SGD, в которой веса на шаге обновления t увеличиваются в соответствии с градиентом мини-пакета ∆w_t = η gˆ_t. Кроме того, приращения между разными мини-партиями не коррелируют. Здесь в игру вступает идея случайного блуждания. Мы можем думать о векторе весов w_t как о частице, совершающей случайное блуждание по поверхности потерь L (w_t). Более того, добавление импульса можно рассматривать как придающее частице инерцию.

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

Кроме того, «случайное блуждание по случайному потенциалу (убытку)» - это область, которая широко изучалась. Бушо и Жорж в 1990 году показали, что асимптотическое поведение автоковариантности случайного потенциала

в определенном диапазоне определяет асимптотическое поведение случайного блуждающего в этом диапазоне:

Это называется «сверхмедленной диффузией», при которой обычно || w_t - w_0 || ~ журнал (t) ^ (2 / α). Другими словами, среднеквадратичное смещение логарифмически растет со временем. С точки зрения обучения такое поведение говорит нам, что расстояние веса от точки инициализации увеличивается логарифмически с количеством итераций обучения (обновления веса).

Авторы эмпирически обнаружили, что значение α = 2. Более того, авторы обнаружили, что для всех размеров партии наблюдается очень похожий логарифмический график. Однако разные графики для разных размеров партий имеют несколько разные наклоны. Это указывает на несколько разную скорость диффузии для разных размеров партии. Другое наблюдение заключалось в том, что меньшие размеры пакетов влекут за собой больше итераций обучения в целом. Таким образом, существует значительная разница в количестве итераций и соответствующем весовом расстоянии, достигнутом в конце начальной фазы обучения.

Это приводит к следующему неформальному аргументу (который предполагает, что плоские минимумы действительно важны для обобщения). Во время начальной фазы обучения, чтобы достичь минимума «ширины» d, весовой вектор w_t должен пройти, по крайней мере, расстояние d, а это занимает много времени, которое составляет около итераций exp (d). Таким образом, для достижения широких / плоских минимумов нам необходимо иметь максимально возможные скорости диффузии (которые не приводят к численной нестабильности) и большое количество обучающих итераций.

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

Соответствие статистики приращения веса для различных размеров мини-партий

Во-первых, чтобы скорректировать различные скорости диффузии, наблюдаемые для разных размеров партий, бумага сопоставляет статистику приращения веса со статистикой небольшого размера партии. Это достигается за счет увеличения скорости обучения на квадратный корень из размера мини-пакета. Причина этого решения состоит в том, чтобы обновления весов в SGD были пропорциональны расчетному градиенту, то есть ∆w ∝ ηg ^, где η - скорость обучения. Кроме того, ковариационная матрица шага обновления параметра ∆w определяется в уравнении (4).

Таким образом, мы можем видеть, что для того, чтобы сделать коэффициент η² / M = 1, чтобы ковариационная матрица шага обновления веса оставалась постоянной для всех размеров мини-партии, необходимо выбрать η как квадратный корень из мини-партии. размер M. При реализации этой адаптивной схемы скорости обучения результаты || w_t - w_0 || между партиями разных размеров на начальном этапе обучения показывают одинаковые наклоны. Это показано на рисунке 1.

Здесь следует отметить несколько моментов: при увеличении скорости обучения средние шаги E [∆w] также увеличиваются. Однако авторы обнаружили, что этим эффектом можно пренебречь, поскольку E [∆w] обычно на несколько порядков ниже стандартного отклонения. Это в некоторой степени интуитивно понятно, поскольку этапы обновления в методах спуска обычно представляют собой очень небольшие возмущения, а не большие изменения, то есть на каждом этапе обновления алгоритм немного подстраивает веса и оценивает новое значение функции потерь.

Hoffer et al. также учитывать влияние пакетной нормализации. Поскольку каждый градиент g_n для каждого образца (уравнение (3)) зависит от выбранной мини-партии. Кроме того, при работе с пакетным градиентным спуском обновления в конце эпохи обучения требуют дополнительной сложности накопления ошибок прогнозирования во всех примерах обучения. Hoffer et al. принимает это во внимание и предлагает метод под названием Ghost Batch Normalization для решения этой проблемы.

Нормализация фантомного пакета
Подходы общей пакетной нормализации (BN) в нейронных сетях осуществляют нормализацию входных данных и имеют усредненное значение и стандартное отклонение. В работе Ioffe & Szegedy над BN в 2015 году среднее значение и дисперсия должны быть рассчитаны для каждого канала или карты функций отдельно по мини-пакету данных. Например, в сверточном слое среднее значение и дисперсия вычисляются по всем пространственным местоположениям и обучающим примерам в мини-пакете. Естественно, BN использует статистику партии, которая зависит от выбранного размера партии.

Hoffer et al. предложить метод Ghost Batch Normalization (GBN), который собирает статистику по маленьким виртуальным («призрачным») пакетам вместо реального большого пакета. Было замечено, что это уменьшает ошибку обобщения. Кроме того, авторы отмечают, что для фазы вывода важно использовать полную статистику партии, как было предложено Иоффе и Сегеди в 2015 году. Это похоже на обычный метод BN, где во время вывода статистика каждого мини-пакета заменяется экспоненциальным скользящим средним среднего значения и дисперсии. Это сделано для того, чтобы поведение вывода не зависело от статистики пакета вывода.

Алгоритм GBN представлен в алгоритме 1 ниже.

Видно, что алгоритм состоит из вычисления статистики нормализации для непересекающихся подмножеств каждого обучающего пакета. В частности, при общем размере пакета B_L и «призрачном» размере пакета B_S, так что B_S равномерно делит B_L, статистика нормализации рассчитывается как

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

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

Адаптация количества обновлений веса устраняет пробелы в обобщении

Hoffer et al. заявил, что начальная фаза обучения с высокой скоростью обучения позволяет модели достичь более отдаленных местоположений в пространстве параметров, что может быть необходимо для поиска более широких локальных минимумов и лучшего обобщения. Как показано на рисунке 1 (справа), авторы приступили к сопоставлению графиков для разных размеров пакетов, увеличив количество итераций обучения в начальном режиме с высокой скоростью обучения. Они заметили, что расстояние между текущим весом и точкой инициализации может быть хорошей мерой, чтобы определить, когда следует уменьшить скорость обучения.

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

Исходя из этих наблюдений, Hoffer et al. пришел к выводу, что феномен «пробела в обобщении» проистекает из относительно небольшого количества обновлений, а не из-за размера пакета. Таким образом, авторы адаптировали режим обучения, чтобы лучше соответствовать использованию больших мини-пакетов, изменив количество эпох в соответствии с размером используемого мини-пакета. Эта модификация гарантирует, что количество предпринятых шагов оптимизации идентично тем, которые выполняются в режиме малых партий, и, в свою очередь, устраняет пробел в обобщении.

Результаты экспериментов

Чтобы подтвердить свои выводы, авторы экспериментировали с набором задач классификации изображений, перечисленных ниже.

  • MNIST (LeCun et al., 1998b) - состоит из обучающего набора размером 60К и тестового набора из 10К 28 × 28 полутоновых изображений, представляющих цифры от 0 до 9.
  • CIFAR-10 и CIFAR-100 (Крижевский, 2009) - каждый состоит из обучающего набора размером 50К и тестового набора размером 10К. Экземпляры представляют собой цветные изображения 32 × 32, представляющие 10 или 100 классов.
  • Задача классификации ImageNet Deng et al. (2009 г.) - Состоит из обучающего набора размером 1,2 млн. Выборок и тестового набора размером 50К. Каждому экземпляру присвоена одна из 1000 категорий.

В каждом из экспериментов авторы использовали режим обучения, предложенный в оригинальной работе, вместе с оптимизатором SGD импульса. Они определили партию из 4096 образцов как большую партию (LB), а малую партию (SB) определили как 128 или 256 образцов. Затем авторы сравнили исходный базовый план обучения для малых и больших партий, а также методы, предложенные в этой статье.

  • Настройка скорости обучения (LB + LR): использование большого пакета с одновременной адаптацией скорости обучения к большей (чем у небольшого пакета)
  • Норма фантомного пакета (LB + LR + GBN): дополнительно используется метод «нормализации фантомного пакета» в процедуре обучения. Используемый «размер фантомного пакета» - 128.
  • Адаптация режима: использование настроенной скорости обучения, а также призрачной пакетной нормы, но с адаптированным режимом обучения. Режим обучения изменен, чтобы иметь одинаковое количество итераций для каждого используемого размера пакета, эффективно умножая количество эпох на относительный размер большого пакета.

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

Мы можем видеть, что существует видимый пробел в обобщении между использованием небольшой партии (SB) и большой партии (LB). Однако методы, предлагаемые в этой статье, могут значительно повысить точность валидации до такой степени, что пробел в обобщении полностью исчезнет. Более того, в некоторых случаях точность окончательной проверки оказывается даже лучше, чем точность, полученная при использовании небольшой партии.

Заключение

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

В работе смоделировано «движение» на поверхности потерь как случайное блуждание и изучена взаимосвязь скорости его распространения с размером партии. Эта модель предоставила эмпирические наблюдения, которые позволили Hoffer et al. предложить схему адаптивной скорости обучения, которая зависит от размера пакета (скорость обучения выбирается как квадратный корень из размера мини-пакета). Кроме того, авторы предложили новую схему нормализации фантомного пакета, которая вычисляет статистику пакета-нормы по нескольким разделам («призрачная пакетная норма»). Нормализация фантомных пакетов полезна для большинства размеров пакетов (больше, чем размер «небольшой партии»), не требует вычислительных затрат, проста в настройке и потенциально может быть использована в сочетании с взвешиванием примера вывода с большим эффектом. Наконец, авторы предложили использовать достаточное количество итераций обучения с высокой скоростью обучения.

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

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

Аналитик: Джошуа Чоу | Редактор: H4O; Майкл Саразен

Синхронизированный отчет | Обзор решений искусственного интеллекта в Китае в ответ на пандемию COVID-19 - 87 тематических исследований от 700+ поставщиков ИИ

В этом отчете предлагается взглянуть на то, как Китай использовал технологии искусственного интеллекта в борьбе с COVID-19. Он также доступен на Amazon Kindle. Наряду с этим отчетом мы также представили базу данных, охватывающую 1428 дополнительных решений искусственного интеллекта из 12 сценариев пандемии.

Нажмите здесь, чтобы найти больше отчетов от нас.

Мы знаем, что вы не хотите пропустить последние новости или открытия. Подпишитесь на нашу популярную рассылку Synced Global AI Weekly, чтобы получать еженедельные обновления AI.