Keras LSTM:对图层进行建模

时间:2017-11-16 14:09:12

标签: neural-network keras lstm keras-layer tensor

我是Keras LSTM的新手,我根据时间序列构建了一个预测脚本。

我在下面的数据集中描述了用户一年的耗电量

User    mai/13  jun/13  jul/13  ago/13  set/13  out/13  nov/13  dez/13  jan/14  fev/14  mar/14  abr/14
x1  88  99  108 90  86  79  83  75  80  69  75  61
x2  0   143 163 127 174 199 177 140 100 100 130 119
x3  51  50  41  42  51  48  58  53  53  37  47  41
x4  181 211 166 105 128 123 125 98  114 58  4   0
x5  173 187 180 195 211 212 231 188 193 168 166 0
x6  343 321 293 272 400 397 467 392 409 306 408 353
x7  215 150 161 148 153 130 165 166 198 166 150 148
x8  100 140 132 119 121 125 148 135 144 123 124 16
x9  197 193 181 161 201 161 227 154 176 148 171 172
x10 356 371 347 347 363 377 423 373 395 338 337 302

对于每个用户,我的脚本在大小为n的窗口中拆分数据,即如果n = 6,则用户x1将具有以下数据集

88  99  108 90  86  79
99  108 90  86  79  83
108 90  86  79  83  75
90  86  79  83  75  80
86  79  83  75  80  69
79  83  75  80  69  75
83  75  80  69  75  61

我希望我的网络能够从每个窗口的模式中学习,所以当我要测试它时,基于一个新窗口,它会根据之前的值预测一个值。

考虑这些变量:

dataset_length => number of months
dataset_dim => number of users
sequence_length => window size

我正在考虑的网络是:

1st layer: LSTM with sequence_length units, input_shape(None, 1) and return_sequences set true
2nd layer: LSTM with sequence_length*2 units and return_sequences set false
3rd layer: Dense with 1 unit

我的网络布局有什么问题吗?我正在用更多的数据测试网络而没有获得非常好的结果(高损失)。为了更好的预测,我可以改变什么?我需要更多图层吗?

如果您需要一些代码或测试结果,请告诉我。

0 个答案:

没有答案