我对深度学习和它的时间序列预测方法很熟悉。最近,我发现了一篇关于基于递归神经网络的Tensorflow时间序列预测的文章。
在本文中,测试集是最后的20个值,模型也对数据集的最后20个值进行y_pred
预测,然后计算y_test
和y_pred
的最小均方误差。我的问题是:如何扩展模型,以接收未来的预测(实际预测)?
提前感谢!
发布于 2018-01-16 07:30:18
在第一步中,您应该使用实值。然后根据需要使用预测值替换最后一个值。希望下面的代码能对您有所帮助。
with tf.Session() as sess:
saver.restore(sess, './model_saved')
preds = []
X_batch = last_n_steps_value
X_batch = X_batch.reshape(-1, n_steps, 1)
for i in range(number_you_want_to_predict):
pred = sess.run(outputs, feed_dict={X: X_batch})
preds.append(pred.reshape(7)[-1])
X_batch = X_batch[:, 1:]
# Using predict value to replace real value
X_batch = np.append(X_batch, pred[:, -1])
X_batch = X_batch.reshape(-1, n_steps, 1)
https://stackoverflow.com/questions/46810120
复制