Изменения

Перейти к: навигация, поиск

Рекуррентные нейронные сети

32 байта убрано, 19:13, 4 сентября 2022
м
rollbackEdits.php mass rollback
[[File:RNN_BP.jpg|450px|thumb|Рисунок 3. RNN с задержкой на скрытом слое]]
[[File:RNN_BPTT.jpg|450px|thumb|Рисунок 4. Развертка RNN]]
Обучение RNN аналогично обучению обычной нейронной сети. Мы также используем [[:Обратное_распространение_ошибки|алгоритм обратного распространения ошибки (backpropagation)]]<sup>[на 28(англ.01.19 не создан]</sup>Backpropagation), но с небольшим изменением. Поскольку одни и те же параметры используются на всех временных этапах в сети, градиент на каждом выходе зависит не только от расчетов текущего шага, но и от предыдущих временных шагов (рис. 4). Например, чтобы вычислить градиент для четвертого элемента последовательности, нам нужно было бы «распространить ошибку» на 3 шага и суммировать градиенты. Этот алгоритм называется «алгоритмом обратного распространения ошибки сквозь время» (англ. Backpropagation Through Time, BPTT).<ref name=BPTT_1>[http://andrew.gibiansky.com/blog/machine-learning/recurrent-neural-networks/ Backpropagation Through Time]</ref><ref name=BPTT_2>[http://www.wildml.com/2015/10/recurrent-neural-networks-tutorial-part-3-backpropagation-through-time-and-vanishing-gradients/ Backpropagation Through Time]</ref>
Алгоритм обратного распространения ошибки сквозь время:
=== Рекурсивная сеть ===
[[:Рекурсивные нейронные сети|Рекурсивные нейронные сети]]<sup>[на 28(англ.01.19 не создан]</sup> Recurrent neural networks) представляют собой более общий случай рекуррентных сетей, когда сигнал в сети проходит через структуру в виде дерева (обычно бинарные деревья). Те же самые матрицы весов используются рекурсивно по всему графу в соответствии с его топологией.
=== Нейронная сеть Хопфилда ===
=== Сеть Элмана ===
Нейронная сеть Элмана состоит из трёх слоев: <math>x</math>, <math>y</math>, <math>z</math>. Дополнительно к сети добавлен набор «контекстных блоков»: <math>u </math> (рис. 5). Средний (скрытый) слой соединён с контекстными блоками с фиксированным весом, равным единице. С каждым шагом времени на вход поступает информация, которая проходит прямой ход к выходному слою в соответствии с правилами обучения. Фиксированные обратные связи сохраняют предыдущие значения скрытого слоя в контекстных блоках (до того как скрытый слой поменяет значение в процессе обучения). Таким способом сеть сохраняет своё состояние, что может использоваться в предсказании последовательностей, выходя за пределы мощности многослойного перцептрона.
<math>h_t = \sigma_h(W_h x_t + U_h h_{t-1} + b_h)</math>,
*[[:Сверточные_нейронные_сети|Сверточные нейронные сети]]
*[[:Нейронные_сети,_перцептрон|Нейронные сети, перцептрон]]
*[[:Рекурсивные нейронные сети|Рекурсивные нейронные сети]]<sup>[на 28.01.19 не создан]</sup>
==Примечания==
1632
правки

Навигация