• Принципы работы
  • Плюсы и минусы
  • Где применяются
  • Примеры слоя в keras
  • Какая размерность сигнала на выходе из рекуррентного слоя
  • Как соединять несколько рекуррентных слоёв подряд
  • Как соединить рекуррентные слои с одномерной свёрткой и полносвязными слоями

Рекуррентные нейронные сети (РНС, англ. Recurrent neural network; RNN) — вид нейронных сетей, где связи между элементами образуют направленную последовательность. Благодаря этому появляется возможность обрабатывать серии событий во времени или последовательные пространственные цепочки. В отличие от многослойных перцептронов, рекуррентные сети могут использовать свою внутреннюю память для обработки последовательностей произвольной длины. Поэтому сети RNN применимы в таких задачах, где нечто целостное разбито на части, например: распознавание рукописного текста или распознавание речи. Было предложено много различных архитектурных решений для рекуррентных сетей от простых до сложных. В последнее время наибольшее распространение получили сеть с долговременной и кратковременной памятью (LSTM) и управляемый рекуррентный блок (GRU).

 

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

Изменение размерностей

model = Sequential()
model.add(Embedding( 200, 10, input_length= 1000))  1000 x 10
model.add(LSTM( 64, return_sequences= True))           1000 x 64
model.add(LSTM( 64, return_sequences= False))           64
model.add(Dropout( 0.5))                                                 64
model.add(BatchNormalization())                                    64
model.add(Dense( 100, activation= “relu”))                     100
model.add(Dropout( 0.5))                                                 100
model.add(Dense( 6, activation= ‘softmax’ ))                   6

 

SimpleRNN
• Самый простой вариант рекуррентной сети
• Обучается быстро
• Низкие возможности обучения
GRU
• Средняя сложность
• Средняя скорость обучения
• Средние возможности обучения
LSTM
• Самая высокая сложность
• Дольше всего обучается
• Большие возможности обучения

Добавить комментарий