如何测试神经网络并预测未来24小时的未来热量需求?

时间:2019-02-22 22:04:37

标签: matlab neural-network deep-learning data-analysis forecasting

我在MatLab中使用前馈反向传播ANN。

我需要输入datetime作为输入,并预测未来24小时的未来热量需求。我有3个热电厂的历史数据,每个热电厂的容量都不同。我输入的ANN是历史热负荷,温度和datetime,格式为dd.MM.yyyy hh:mm:ss

我已将datetime分别划分为日,月和小时。我还确定了非工作日,并为工作时间创建了一个二进制输入。

我已使用[0;1]归一化温度以适应x=data-min(data)/(max(data)-min(data)的范围。

我的训练数据集是17x17500矩阵(2016、2017年)和2018年(测试)数据集17x8566

目标数据是该时段的归一化热负荷。

当我将该网络(函数)用于测试数据集时,我得到了不好的结果。但是当我比较预测值和原始值时,结果确实很好。

输入矩阵:

0.0322580645161290  0.0322580645161290 %day
0.0833333333333333  0.0833333333333333 %month
0.0434782608695652  0.0869565217391304 %hour
0.514701910237105   0.515792343235321 % outside temp
0   0 % morning peak
0   0 % non-working day
0   0 % monday
0   0 %tuesday
0   0 %wednesday
0   0 %thursday
0   0 %friday
1   1 %saturday
0   0 %sunday
0   0 %summer
0   0 %winter

我做了一些谷歌搜索,发现如何通过sin / cos变换对小时等循环数据进行编码(因此,循环输入由2个额外的神经元sin和cos值表示)训练集的预测值确实不错,但是如果我应用函数(神经网络)的另一个数据集,这些结果与测试集的实际负载相去甚远...我都在海上。有改善的建议吗?

0 个答案:

没有答案