假设我有这样的数据:
date pollution dew temp press wnd_dir wnd_spd snow rain
2010-01-02 00:00:00 129.0 -16 -4.0 1020.0 SE 1.79 0 0
2010-01-02 01:00:00 148.0 -15 -4.0 1020.0 SE 2.68 0 0
2010-01-02 02:00:00 159.0 -11 -5.0 1021.0 SE 3.57 0 0
2010-01-02 03:00:00 181.0 -7 -5.0 1022.0 SE 5.36 1 0
2010-01-02 04:00:00 138.0 -7 -5.0 1022.0 SE 6.25 2 0
我想将神经网络应用于pollution
的时间序列预测。
应该注意的是,其他变量:dew, temp, press, wnd_dir, wnd_spd, snow, rain
是pollution
的独立变量。
如果我在here中实现LSTM,LSTM会将所有变量学习为独立的;模型可以预测所有变量。
但没有必要预测所有自变量,唯一的要求是pollution
,一个因变量。
有没有办法实现LSTM或其他更好的架构,通过将其他独立变量视为独立变量来学习和预测因变量,并更好地预测污染?
答案 0 :(得分:1)
似乎该示例仅预测pollution
。如果您看到reframed
:
var1(t-1) var2(t-1) var3(t-1) var4(t-1) var5(t-1) var6(t-1) \
1 0.129779 0.352941 0.245902 0.527273 0.666667 0.002290
2 0.148893 0.367647 0.245902 0.527273 0.666667 0.003811
3 0.159960 0.426471 0.229508 0.545454 0.666667 0.005332
4 0.182093 0.485294 0.229508 0.563637 0.666667 0.008391
5 0.138833 0.485294 0.229508 0.563637 0.666667 0.009912
var7(t-1) var8(t-1) var1(t)
1 0.000000 0.0 0.148893
2 0.000000 0.0 0.159960
3 0.000000 0.0 0.182093
4 0.037037 0.0 0.138833
5 0.074074 0.0 0.109658
var1
似乎是pollution
。如您所见,您拥有所有变量的上一步(t-1)
的值以及t
(pollution
)的当前步骤var1(t)
的值。
这个最后一个变量是示例作为y
提供的内容,如行中所示:
# split into input and outputs
train_X, train_y = train[:, :-1], train[:, -1]
test_X, test_y = test[:, :-1], test[:, -1]
因此,网络应该只在pollution
预测。