То, что вы описываете, на самом деле является подходом «скользящего временного окна» и отличается от рекуррентных сетей. Вы можете использовать эту технику с любым алгоритмом регрессии. У этого подхода есть огромное ограничение: события на входах могут быть соотнесены только с другими входами / выходами, которые находятся на расстоянии не более t шагов, где t - размер окна.
Например, вы можете думать о марковской цепочке порядка t. RNNs не страдают от этого в теории, однако на практике обучение затруднено.
Лучше всего проиллюстрировать RNN в отличие от сети обратной связи. Рассмотрим (очень) простую сеть с прямой связью где y - выходной сигнал, W - весовая матрица, а x - входной сигнал.y=WxyWx
Теперь мы используем рекуррентную сеть. Теперь у нас есть последовательность входов, поэтому мы будем обозначать входы через для i -го ввода. Соответствующий i-й выход затем вычисляется через y i = W x i + W r y i - 1 .xiyi=Wxi+Wryi−1
Таким образом, у нас есть другая весовая матрица которая линейно включает выходной сигнал на предыдущем шаге в выходной ток.Wr
Это конечно простая архитектура. Наиболее распространенной является архитектура, в которой у вас есть скрытый слой, который периодически связан с самим собой. Пусть обозначает скрытый слой на временном шаге i. Формулы тогда:hi
h i = σ ( W 1 x i + W r h i - 1 ) y i = W 2 h i
h0=0
hi=σ(W1xi+Wrhi−1)
yi=W2hi
Где является подходящей нелинейностью / передаточной функцией, такой как сигмоидальная. W 1 и W 2 являются весами соединения между входным и скрытым и скрытым и выходным слоями. W r представляет рекуррентные веса.σW1W2Wr
Вот схема структуры: