【发布时间】:2017-10-18 20:39:17
【问题描述】:
我有两个时间序列 A 和 B:
A: 1,2,3,1,2,3,3,3,1,2,3,3,3
B: 0,0,1,0,0,1,1,1,0,0,1,1,1
这个简单的训练集说信号 B 与 A 相关。实际上每次 A 等于 3,在同一时间戳,在 B 中,值是 1。
我介绍上面的例子只是为了解释我的问题。当我使用带有 Keras 的 LSTM 预测数据时,我希望模型能够从系列中理解这种依赖关系。
现在我使用这个配置:
model.add(keras.layers.LSTM(hidden_nodes, activation='sigmoid', input_dim=num_features, input_length=window, consume_less="mem"))
model.add(keras.layers.Dense(num_features, activation='sigmoid'))
optimizer = keras.optimizers.SGD(lr=learning_rate, decay=1e-6, momentum=0.9, nesterov=True)
但我看到 LSTM 预测值没有明显使用时间序列之间的依赖关系。如果我以 5 的窗口进行预测,以预测下一个点:
A: [1,2,3,1,2]
B: [0,0,1,0,0]
我希望 LSTM 给我 A 的值 3 和 B 的值 1,因为下面的训练集说明了这一点。
问题是我的网络似乎在使用信号时没有对信号依赖性给予适当的重视。
【问题讨论】:
标签: python time-series keras lstm