【发布时间】:2017-08-24 03:09:01
【问题描述】:
我花了几个月的时间阅读无数的帖子,但我仍然像最初一样感到困惑。希望有人可以提供帮助。
问题:我想使用时间序列来预测特定位置的天气数据。
设置:
X1 和 X2 都是包含 10 年的每日指数值的向量(每个向量中的总值 3650)。
Y 是纽瓦克机场 (T) 的温度时间序列,持续 10 年(3650 天)。
有充分的理由证明X1 和X2 可以用作Y 的预测变量。因此,我将所有内容分解为 100 天的窗口并创建以下内容:
X1 = (3650,100,1)
X2 = (3650,100,1)
这样窗口 1 包含从 t=0 到 t=99 的值,窗口 2 包含从 t=1 到 t=100 的值等。(假设我最后有足够的额外数据,我们仍然有 3650窗户)。
我从其他教程中学到的是,要进入 Keras,我会这样做:
X = (3650,100,2) = (#_of_windows,window_length,#_of_predictors) 我通过合并 X1 和 X2 得到。
然后我有这个代码:
model = Sequential()
model.add(LSTM(1,return_sequences=True,input_shape=(100,2)))
model.add(LSTM(4))
model.add(Dropout(0.2))
model.compile(loss='mean_square_error',optimizer='rmsprop',shuffle=True)
model.fit(X,Y,batch_size=128,epochs=2) # Y is shape (3650,)
predictions = model.predict(?????????????)
所以我的问题是,如何设置 model.predict 区域以获取 N 未来天数的预测?有时我可能需要 2 天,有时我可能需要 2 周。我只需要取回N 值(形状:[N,]),我不需要取回窗口或类似的东西。
非常感谢!
【问题讨论】:
-
所以你的 Y 值是
t=100第一个输入...
标签: python machine-learning neural-network deep-learning keras