我有一系列数字,我想预测下一个数字。我在喀拉拉邦使用了这个神经网络。
numbers = [1,2,3,4,5,6,7,8,9,10,11]
i = Input(shape=(10,1))
x = LSTM(32,return_sequences=True)(i)
x = TimeDistributed(Dense(1))(x)
model = Model(inputs=i,outputs=x)
inputs = numbers[:-1]
outputs = numbers[1:]
model.fit(inputs,outputs)
这有效,并且它试图预测序列中的下一个数字。现在,我想运行神经网络通过多步预测(即12,13,14,15,16
)来提前预测5个数字。目前我正在这样做
for _ in range(5):
numbers = numbers[1:]
last_number = model.predict(numbers)[-1]
numbers.append(last_number)
但是,问题在于,每个步骤都会评估整个神经网络,并且还会预测所有先前的数字。它总共执行了50次预测,而不是5次。如何在不重新计算所有先前预测的情况下,一次使用keras高效地预先预测5个步骤?