Jump to content

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

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

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

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

Прототипические модели

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

Этот раздел основан на статье О сложности обучения рекуррентных нейронных сетей» . Паскану, Миколова и Бенджио « [5]

Рекуррентная сетевая модель

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

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

( дифференциал потерь )

где это скорость обучения.

Проблема исчезновения/взрыва градиента возникает из-за повторяющихся умножений вида

Пример: рекуррентная сеть с сигмовидной активацией.

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

В качестве конкретного примера рассмотрим типичную рекуррентную сеть, определяемую формулой

где параметр сети, это функция активации сигмовидной кишки [примечание 2] , применяемый к каждой векторной координате отдельно, и – вектор смещения.

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

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

Если , приведенный выше анализ не совсем работает. [примечание 3] Для прототипной задачи взрывающегося градиента следующая модель более ясна.

Модель динамических систем

[ редактировать ]
Бифуркационная диаграмма однонейронной рекуррентной сети. Горизонтальная ось — b, вертикальная ось — x. Черная кривая представляет собой совокупность устойчивых и неустойчивых состояний равновесия. Обратите внимание, что система имеет гистерезис и может использоваться как однобитовая память.

Следуя (Дойя, 1993), [6] рассмотрим эту рекуррентную сеть из одного нейрона с активацией сигмовидной кишки: В маленьком предел, динамика сети становится Рассмотрим сначала автономный случай, когда . Набор и варьируются в . Как уменьшается, система имеет 1 устойчивую точку, затем имеет 2 устойчивые точки и 1 неустойчивую точку и, наконец, снова имеет 1 устойчивую точку. Явно устойчивыми точками являются .

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

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

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

Обратите внимание, что в этом случае не распадается до нуля и не стремится к бесконечности. Действительно, это единственный градиент с хорошим поведением, что объясняет, почему ранние исследования были сосредоточены на обучении или разработке систем рекуррентных сетей, которые могли бы выполнять долгосрочные вычисления (например, выводить первый входной сигнал, который он видит в самом конце эпизода), путем формирования его стабильные аттракторы. [7]

В общем случае интуиция остается верной ( [5] рисунки 3, 4 и 5).

Геометрическая модель

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

Продолжайте использовать описанную выше сеть из одного нейрона, исправляя и рассмотрим функцию потерь, определяемую формулой . Это создает довольно патологическую картину потерь: поскольку подход сверху потери приближаются к нулю, но как только кресты , бассейн аттрактора изменяется, и потери подскакивают до 0,50. [примечание 4]

Следовательно, попытка тренировать при градиентном спуске «упрется в стену в ландшафте потерь» и вызовет взрывной градиент. Здесь изображена несколько более сложная ситуация. [5] Цифры 6.

Для решения этой проблемы было предложено несколько методов.

Пакетная нормализация

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

Пакетная нормализация — это стандартный метод решения проблем как взрывающегося, так и исчезающего градиента. [8] [9]

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

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

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

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

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

Длинная кратковременная память

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

Другой метод, особенно используемый для рекуррентных нейронных сетей, — это сеть долгой краткосрочной памяти (LSTM), разработанная в 1997 году Хохрайтером и Шмидхубером . [13] В 2009 году глубокие многомерные сети LSTM продемонстрировали возможности глубокого обучения со многими нелинейными слоями, выиграв три ICDAR конкурса 2009 по связанному распознаванию рукописного ввода без каких-либо предварительных знаний о трех различных языках, которые необходимо изучить. [14] [15]

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

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

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

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

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

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

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

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

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

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

Инициализация веса

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

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

Кумар предположил, что распределение начальных весов должно варьироваться в зависимости от используемой функции активации, и предложил инициализировать веса в сетях с помощью логистической функции активации, используя распределение Гаусса с нулевым средним значением и стандартным отклонением 3.6/sqrt(N), где N количество нейронов в слое. [20]

Недавно Йылмаз и Поли [21] выполнил теоретический анализ того, как на градиенты влияет среднее значение начальных весов в глубоких нейронных сетях с использованием логистической функции активации, и обнаружил, что градиенты не исчезают, если среднее значение начальных весов установлено по формуле: max(−1,-8/N). Эта простая стратегия позволяет очень эффективно и результативно обучать сети с 10 или 15 скрытыми слоями, используя стандартное обратное распространение ошибки .

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

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

См. также

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

Примечания

[ редактировать ]
  1. ^ Более общая функция потерь может зависеть от всей последовательности выходных данных, например для которого проблема та же, только с более сложными обозначениями.
  2. ^ Любая функция активации работает, если она дифференцируема с ограниченной производной.
  3. ^ Рассмотрим и , с и . Затем имеет спектральный радиус , и , который может стремиться к бесконечности или нулю в зависимости от выбора .
  4. ^ Это потому, что в , два стабильных аттрактора , а нестабильный аттрактор .
  1. ^ Перейти обратно: а б с Басоди, Сунита; Цзи, Чунянь; Чжан, Хайпин; Пан, Йи (сентябрь 2020 г.). «Градиентное усиление: эффективный способ обучения глубоких нейронных сетей» . Интеллектуальный анализ и аналитика больших данных . 3 (3): 198. arXiv : 2006.10560 . дои : 10.26599/BDMA.2020.9020004 . ISSN   2096-0654 . S2CID   219792172 .
  2. ^ Хохрейтер, С. (1991). Исследования по динамическим нейронным сетям (PDF) (Дипломная работа). Институт компьютерных наук Технического университета Мюнхен.
  3. ^ Хохрейтер, С.; Бенджио, Ю.; Фраскони, П.; Шмидхубер, Дж. (2001). «Градиентный поток в рекуррентных сетях: сложность изучения долгосрочных зависимостей». В Кремере, Южная Каролина; Колен, Дж. Ф. (ред.). Полевое руководство по динамическим рекуррентным нейронным сетям . IEEE Пресс. ISBN  0-7803-5369-2 .
  4. ^ Го, Гаррет Б.; Ходас, Натан О.; Вишну, Абхинав (15 июня 2017 г.). «Глубокое обучение вычислительной химии». Журнал вычислительной химии . 38 (16): 1291–1307. arXiv : 1701.04503 . Бибкод : 2017arXiv170104503G . дои : 10.1002/jcc.24764 . ПМИД   28272810 . S2CID   6831636 .
  5. ^ Перейти обратно: а б с д Пашкану, Разван; Миколов, Томас; Бенджио, Йошуа (21 ноября 2012 г.). «О сложности обучения рекуррентных нейронных сетей». arXiv : 1211.5063 [ cs.LG ].
  6. ^ Дойя, К. (1992). «Бифуркации в обучении рекуррентных нейронных сетей» . [Труды] Международный симпозиум IEEE по схемам и системам , 1992 г. Том. 6. ИИЭР. стр. 2777–2780. дои : 10.1109/iscas.1992.230622 . ISBN  0-7803-0593-0 . S2CID   15069221 .
  7. ^ Бенджио, Ю.; Симард, П.; Фраскони, П. (март 1994 г.). «Изучать долгосрочные зависимости с помощью градиентного спуска сложно» . Транзакции IEEE в нейронных сетях . 5 (2): 157–166. дои : 10.1109/72.279181 . ISSN   1941-0093 . ПМИД   18267787 . S2CID   206457500 .
  8. ^ Иоффе, Сергей; Сегеди, Кристиан (1 июня 2015 г.). «Пакетная нормализация: ускорение глубокого обучения сети за счет уменьшения внутреннего ковариатного сдвига» . Международная конференция по машинному обучению . ПМЛР: 448–456. arXiv : 1502.03167 .
  9. ^ Сантуркар, Шибани; Ципрас, Димитрис; Ильяс, Андрей; Мадри, Александр (2018). «Как пакетная нормализация помогает оптимизации?» . Достижения в области нейронных систем обработки информации . 31 . Карран Ассошиэйтс, Инк.
  10. ^ Дж. Шмидхубер., «Обучение сложных расширенных последовательностей с использованием принципа сжатия истории», Neural Computation , 4, стр. 234–242, 1992.
  11. ^ Перейти обратно: а б Хинтон, Джорджия ; Осиндеро, С.; Тех, Ю. (2006). «Алгоритм быстрого обучения для сетей глубокого доверия» (PDF) . Нейронные вычисления . 18 (7): 1527–1554. CiteSeerX   10.1.1.76.1541 . дои : 10.1162/neco.2006.18.7.1527 . ПМИД   16764513 . S2CID   2309950 .
  12. ^ Хинтон, Г. (2009). «Сети глубоких убеждений» . Схоларпедия . 4 (5): 5947. Бибкод : 2009SchpJ...4.5947H . doi : 10.4249/scholarpedia.5947 .
  13. ^ Хохрайтер, Зепп ; Шмидхубер, Юрген (1997). «Долгая кратковременная память». Нейронные вычисления . 9 (8): 1735–1780. дои : 10.1162/neco.1997.9.8.1735 . ПМИД   9377276 . S2CID   1915014 .
  14. ^ Грейвс, Алекс; и Шмидхубер, Юрген; Автономное распознавание рукописного ввода с помощью многомерных рекуррентных нейронных сетей , в Бенджио, Йошуа; Шурманс, Дейл; Лафферти, Джон; Уильямс, Крис К.И.; и Кулотта, Арон (ред.), «Достижения в области систем нейронной обработки информации 22» (NIPS'22), 7–10 декабря 2009 г., Ванкувер, Британская Колумбия , Фонд систем нейронной обработки информации (NIPS), 2009 г., стр. 545–552.
  15. ^ Грейвс, А.; Ливицкий, М.; Фернандес, С.; Бертолами, Р.; Бунке, Х.; Шмидхубер, Дж. (2009). «Новая коннекционистская система для улучшения неограниченного распознавания рукописного текста». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 31 (5): 855–868. CiteSeerX   10.1.1.139.4502 . дои : 10.1109/tpami.2008.137 . ПМИД   19299860 . S2CID   14635907 .
  16. ^ Шмидхубер, Юрген (2015). «Глубокое обучение в нейронных сетях: обзор». Нейронные сети . 61 : 85–117. arXiv : 1404.7828 . дои : 10.1016/j.neunet.2014.09.003 . ПМИД   25462637 . S2CID   11715509 .
  17. ^ Перейти обратно: а б Он, Кайминг; Чжан, Сянъюй; Рен, Шаоцин; Сунь, Цзянь (2016). Глубокое остаточное обучение для распознавания изображений . Конференция IEEE 2016 по компьютерному зрению и распознаванию образов (CVPR) . Лас-Вегас, Невада, США: IEEE. стр. 770–778. arXiv : 1512.03385 . дои : 10.1109/CVPR.2016.90 . ISBN  978-1-4673-8851-1 .
  18. ^ Вейт, Андреас; Уилбер, Майкл; Белонги, Серж (20 мая 2016 г.). «Остаточные сети ведут себя как ансамбли относительно неглубоких сетей». arXiv : 1605.06431 [ cs.CV ].
  19. ^ Глорот, Ксавье; Борд, Антуан; Бенджио, Йошуа (14 июня 2011 г.). «Глубокие разреженные нейронные сети выпрямителя» . ПМЛР : 315–323.
  20. ^ Кумар, Сиддхартх Кришна. «Об инициализации веса в глубоких нейронных сетях». Препринт arXiv arXiv:1704.08863 (2017).
  21. ^ Йылмаз, Ахмет; Поли, Риккардо (1 сентября 2022 г.). «Успешное и эффективное обучение глубоких многослойных перцептронов с функцией логистической активации просто требует инициализации весов соответствующим отрицательным средним значением» . Нейронные сети . 153 : 87–103. дои : 10.1016/j.neunet.2022.05.030 . ISSN   0893-6080 . ПМИД   35714424 . S2CID   249487697 .
  22. ^ Свен Бенке (2003). Иерархические нейронные сети для интерпретации изображений (PDF) . Конспекты лекций по информатике. Том. 2766. Спрингер.
  23. ^ «Фундаментальная проблема глубокого обучения Зеппа Хохрейтера (1991)» . люди.idsia.ch . Проверено 7 января 2017 г.

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 7d429cda63e55c5599476ef296a78e13__1715063460
URL1:https://arc.ask3.ru/arc/aa/7d/13/7d429cda63e55c5599476ef296a78e13.html
Заголовок, (Title) документа по адресу, URL1:
Vanishing gradient problem - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)