“ LSTM”对象不可下标

时间:2018-12-15 12:57:02

标签: python machine-learning keras lstm

这是我的模型代码:

peripheralDidUpdateValueForCharacteristic

我收到以下错误:

encoder = Embedding(input_dim=dataset.shape[0],output_dim=300, mask_zero=True, input_length=12,embeddings_initializer='uniform')
encoder = LSTM(epochs, input_shape=(train_X.shape[1], train_X.shape[2]), return_sequences=True, unroll=True)
encoder_last = encoder[:,-1,:]

我应该如何解决?

1 个答案:

答案 0 :(得分:1)

我猜您想在LSTM层的输出应用层,然后获取LSTM的最后一个输出。因此,首先需要调用(即应用)在某些张量(即层的输出)上定义的层,如下所示:

Embedding

通过这种方式,各层相互连接。然后,您需要使用inp = Input(shape=...) encoder = Embedding(...)(inp) # call embedding layer on inputs encoder = LSTM(...)(encoder) # call lstm layer on the output of embedding layer 层来切片LSTM层输出:

Lambda