【发布时间】:2018-07-10 15:08:23
【问题描述】:
我有一个大小为 (1152,151) 的(非文本)数据集。我希望将其分成 8 批,每批包含 144 个样本,用于在 Keras 中训练 LSTM 网络。我将发送到 LSTM 的数据重新整形为 (8,144,151)。这是正确的输入形状吗?因为当我将其作为输入发送并且该层和下一个 LSTM 层的 return_sequences=False 时,我收到了一个错误:
预期 n_dim=3,得到 n_dim=2。
X_train = X_train.reshape((8,144,151))
def deepmodel():
model = Sequential()
model.add(LSTM(8,input_shape=(144,151),return_sequences=False))
model.add(LSTM(8,return_sequences=False))
model.add(Dense(8))
model.add(Activation('softmax'))
adam=Adam()
model.compile(loss = 'categorical_crossentropy', optimizer = adam)
return model
【问题讨论】:
-
这是什么数据?如果它是一个相关的样本,那么分批拆分是没有意义的。你从哪一层得到错误?是第一个 LSTM 层还是其他层?
-
哪一行给出了错误?
标签: python-3.x tensorflow keras deep-learning lstm