У меня проблемы с пониманием поведения тензора в слоях LSTM в кератах.
Я предварительно обработал числовые данные, которые выглядят как [образцы, временные шаги, особенности]. Итак, 10 000 выборок, 24 временных шага и 10 предикторов.
Я хочу составить остаточные соединения, но я не уверен, что все делаю правильно:
x <- layer_input(shape = c(24,10))
x <- layer_lstm(x,units=32,activation="tanh",return_sequences=T)
Теперь форма х, которая является тензорной, равна [?,?, 32]. Я ожидал [?, 32,10]. Должен ли я изменить форму данных, чтобы они были [образцы, особенности, временные шаги]? Затем я формирую Res:
y <- layer_lstm(x,units=32,activation="tanh",return_sequences=T)
res <- layer_add(c(x, y))
Теперь я не уверен, что это правильно, или, может быть, я должен пойти с этим вместо
x <- layer_input(shape = c(24,10))
y <- layer_lstm(x,units=24,activation="tanh",return_sequences=T) # same as time_steps
res <- layer_add(c(x,y)) ## perhaps here data reshaping is neccesary?
Любое понимание высоко ценится.
JJ