Проблема исчезающего градиента

редактировать

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

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

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

Содержание
  • 1 Решения
    • 1.1 Многоуровневая иерархия
      • 1.1.1 Связанный подход
    • 1.2 Долговременная память
    • 1.3 Более быстрое оборудование
    • 1.4 Остаточные сети
    • 1.5 Другие функции активации
    • 1.6 Другое
  • 2 См. Также
  • 3 Ссылки
Решения

Многоуровневая иерархия

Для решения этой проблемы было предложено несколько методов. Один из них - это многоуровневая иерархия сетей Юргена Шмидхубера (1992), предварительно обученная по одному уровню за раз с помощью обучения без учителя, тонко настроенная с помощью обратного распространения ошибки. Здесь каждый уровень изучает сжатое представление наблюдений, которое передается на следующий уровень.

Связанный подход

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

Долговременная краткосрочная память

Другой метод, особенно используемый для рекуррентных нейронных сетей, - это Сеть долговременной кратковременной памяти (LSTM) 1997 г. Авторы Hochreiter и Schmidhuber. В 2009 году глубокие многомерные сети LSTM продемонстрировали мощь глубокого обучения с множеством нелинейных уровней, выиграв три конкурса ICDAR 2009 в связном распознавании рукописного ввода без каких-либо предварительных знаний о трех разных языках.

Более быстрое оборудование

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

Остаточные сети

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

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

Другие функции активации

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

Другое

Бенке полагался только на знак градиента (Rprop ), когда обучал его решать такие задачи, как восстановление изображения и локализация лица.

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

См. Также
Ссылки

Последняя правка сделана 2021-06-18 09:39:23
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте