Если вам нужна только модель LSTM, которая принимает входные данные формы (nb_seq, 1, 1000)
(с nb_seq, равным вашему числу последовательностей, 10 в вашем случае) и выводит ту же форму, вот базовая модель c, которую вы можете adapt:
input_x = Input(shape=(1, 1000))
x = LSTM(64, return_sequences=True)(input_x)
x = LSTM(64, return_sequences=True)(x)
x = Dense(1000)(x)
Model(inputs=input_x, outputs=x)
Слой LSTM с return_sequence = True вернет тензор формы (nb_seq, 1, 64) (при 64 числах нейронов в вашем слое LSTM), поэтому для найти исходную форму, которую вы можете либо пропустить через этот тензор через плотный слой, который придаст вам форму (nb_seq, 1, 1000), либо вы можете напрямую иметь 1000 нейронов на последнем слое LSTM (я не рекомендую, потому что он сгенерирует много параметров).
Вы можете изменить это, когда вы будете sh.
РЕДАКТИРОВАТЬ после точности
Поскольку keras LSTM принимает только 3D-ввод, вы можете обмануть его, передав Распределение по времени сглаживает слой в начале, как это:
input_x = Input(shape=(10, 1, 1000))
x = TimeDistributed(Flatten())(input_x)
x = LSTM(64, return_sequences=True)(x)
x = LSTM(64, return_sequences=True)(x)
x = Dense(1000)(x)
x = Reshape(target_shape=(10, 1, 1000))(x)
Model(inputs=input_x, outputs=x)
Это дает вам такую сводку: