【发布时间】:2025-11-29 02:25:02
【问题描述】:
我正在尝试解决时间序列问题。该数据集有 n 个系统,我们记录了每个系统大约 t 天发生的故障数。然后我的目标是预测在 t+1 天任何给定系统上可能发生的故障数量。 玩具数据集看起来像这样。其中,每一行表示一个系统连续 11 天的故障数。
x = [[0,1,2,20,24,8,2,2,1,2,1],
[0,100,200,250,300,80,25,20,10,1,1],
[1,25,30,35,10,0,0,1,1,0,1],
[0,10,10,2,24,8,2,2,1,2,1],
[0,4,20,20,24,80,10,20,30,90,150]]
然后我的训练数据不包括每一行的最后一天。
x_train = [[0,1,2,20,24,8,2,2,1,2],
[0,100,200,250,300,80,25,20,10,1],
[1,25,30,35,10,0,0,1,1,0],
[0,10,10,2,24,8,2,2,1,2],
[0,4,20,20,24,80,10,20,30,90]]
我应该如何修改我的数据以使用 LSTM。非常感谢任何示例代码。在我的情况下,所有现有代码都对单个实体进行建模 我有 n 个不同的系统。这是我的简单尝试。请提供反馈是否代表我的要求。我的数据如下所示。
| | t1 | t2 | t3 | |----|----|----|----| | x1 | 1 | 2 | 3 | | x2 | 3 | 4 | 5 | | x3 | 5 | 6 | 7 |x = np.array([[1,2],[3,4],[5,6]])
y = np.array([[2,3],[4,5],[6,7]])
x = np.reshape(x,(3,1,2))
y = np.reshape(y,(3,2))
test_x = np.array([[6,7]])
test_x = np.reshape(test_x,(1,1,2))
model = Sequential()
model.add(LSTM(4,batch_input_shape=(1,1,2), return_sequences=False))
model.add(Dense(2,activation='relu'))
model.compile(loss='mean_absolute_error', optimizer='adam')
model.fit(x, y,nb_epoch= 100, batch_size=1)
model.reset_states()
model.predict(test_x)
谢谢
【问题讨论】:
标签: tensorflow deep-learning keras lstm keras-layer