使用多个序列训练LSTM

时间:2019-07-10 04:15:31

标签: python keras lstm

我有一个序列数据集,看起来像下面的示例。它们具有可变的长度,但列数相同。我对使用功能a(t+1)来预测b(t), c(t), d(t), e(t) ...感兴趣

t  a(t)   b(t)   c(t)  d(t)  e(t)  ...
1  290.0  653.1  1.0   -0.2  -0.2  ...
2  289.9  653.2  1.0   -0.2  -0.2  ... 
3  289.9  653.2  1.0   -0.2  -0.2  ...
4  289.8  653.2  0.9   -0.2  -0.3  ...
5  289.8  653.3  0.9   -0.2  -0.3  ...
6  289.8  653.3  0.9   -0.2  -0.3  ...
...

按照教程found here,我使用下面的代码为监督学习准备了一个序列,并拟合了一个简单的LSTM模型。其中train_X包含时间(b,c,d,e,...)的每个功能t,而train_ya(t+1)

如何在多个序列上训练模型?最终,我的目标是:给定(b,c,d,e,...)处的特征t=0, t=1, t=2, t=k-1,预测下一个a(k+T)时间步长的输出T

model = Sequential()
model.add(LSTM(50, input_shape=(train_X.shape[1], train_X.shape[2])))
model.add(Dense(1))
model.compile(loss='mae', optimizer='adam')
model.fit(train_X, train_y, epochs=1000, batch_size=1, validation_data=(test_X, test_y), verbose=1, shuffle=False)

0 个答案:

没有答案