Во-первых, я только начинаю изучать ML, я пытаюсь построить модель на основе LSTM. Все мои входные данные - просто число (int или float), однако я продолжаю сталкиваться с сообщением об ошибке «Все входы в слой должны быть тензорными». Я не совсем знаком со структурой данных о Python. Спасибо за ваше чтение.
Вот мой код:
def lstm (data, window_size):
encoder = Dense([ LSTM( output_dim=window_size-4, input_dim =window_size, activation='tanh' ,name="Dense", return_sequences=True) ])(data)
decoder = Dense([ LSTM( output_dim=window_size, input_dim =window_size-4, activation='tanh', return_sequences=True) ])(encoder)
autoencoder = Sequential()
auto_e = Model(input=encoder, output=decoder)
autoencoder.add(auto_e)
autoencoder.compile(loss='mse', optimizer='sgd')
autoencoder.fit(data,data, nb_epoch=10, batch_size=32)
dense_layer_model = Model(inputs=autoencoder.input,
outputs=autoencoder.get_layer('Dense').output)
dense_output = dense_layer_model.predict(data)
print ("shape=",dense_output.shape)
print (dense_output[0])
return dense_output[0]