Первые аргументы в нормальном Dense
слое также являются units
и являются количеством нейронов/узлов в этом слое. Однако стандартный модуль LSTM выглядит следующим образом:
(Это переработанная версия " Понимание сетей LSTM ")
В Keras, когда я создаю объект LSTM, подобный этому LSTM(units=N,...)
, я фактически создаю N
из этих единиц LSTM? Или это размер слоев "нейронной сети" внутри блока LSTM, т.е. W
в формулах? Или что-то еще?
Для контекста я работаю на основе этого примера кода.
Вот документация: https://keras.io/layers/recurrent/
Это говорит:
единицы: положительное целое число, размерность выходного пространства.
Это заставляет меня думать, что это число выходов объекта Keras LSTM "layer". Это означает, что следующий слой будет иметь N
входов. Означает ли это, что на самом деле существует N
из этих модулей LSTM на уровне LSTM, или, может быть, этот ровно один модуль LSTM выполняется для N
итераций, выводящих N
из этих значений h[t]
, скажем, от h[tN]
до h[t]
?
Если он определяет только количество выходов, означает ли это, что вход по-прежнему может быть, скажем, только один, или мы должны вручную создать запаздывающие входные переменные от x[tN]
до x[t]
, по одной для каждой единицы LSTM, определенной как units=N
аргумент?
Когда я пишу это, мне приходит в голову, что делает аргумент return_sequences
. Если установлено значение " True
все N
выходов передаются на следующий уровень, а если значение " False
то только последний вывод h[t]
передается на следующий уровень. Я прав?