训练好LSTM模型(单变量)后,现在需要进行数据预测。请教下该怎么做?
早期的LSTM模型训练时,数据是每隔4小时为一个数据,time-step设置为7.
现在要预测未来7天的数据。有点不清楚具体该如何处理了。。求指点。。
个人想法:按照理论做法,需要事先反向提取最后7个数据,以预测第一个新值。然后利用第一个新值,并结合前面6个的数据,预测第二个新值,依次循环下去,直到第7天。。
但是LSTM模型训练时,对数据的处理很麻烦,要归一化处理,还要切分X和Y(原来是单变量,需要按照time_step切分出新的X和Y,且是一一对应的)。问题在于:
1. 我如果要进行预测的话,不需要再去切分X和Y吧,直接视为X就是了吧?
2. 如何利用预测出来的第1个数值,结合之前的6个值,来预测第2个数值呢?
创建一个预测数组,每预测一个Y就往数组里放一个,同时更新你用来预测的自变量X数组,剔除最早的X,把预测值加入到X里,依次往后预测
训练的时候才有X Y,X是输入的样本,Y是结果(标记值)。根据你的输入,正向传播得到Y',也就是模型预测的Y,和实际的Y比较,再反向传播,修正权重。
你预测的时候,只有X,Y是你算出来的,并且也没有什么可以参照了(除非你等4小时以后再看实际和预测的是否一样)