Я пытаюсь включить простой автокодер LSTM, упомянутый на сайте keras.io, с вводом последовательности. Выдает ошибку при вводе слоя LSTM.
from keras.layers import Input, LSTM, RepeatVector
from keras.models import Model
import numpy as np
def autoencoder(timesteps,input_dim):
inputs = Input(shape=(timesteps, input_dim))
encoded = LSTM(300)(inputs)
decoded = RepeatVector(timesteps)(encoded)
decoded = LSTM(input_dim, return_sequences=True)(decoded)
encoder = Model(inputs, encoded)
encoder.compile(optimizer='adam',loss='mse')
return encoder
sequence = np.array([522,76,2,35,387,13,121,144,98,33,400]).reshape((1,11,1))
model = autoencoder(11,1)
model.fit(sequence,sequence,epochs=100,batch_size=4,verbose=1)
Ошибка:
ValueError: Ошибка при проверке цели: ожидается, что lstm_29 будет иметь 2
размеры, но получили массив с формой (1, 11, 1)