数据:2000-2002三年每小时的电力负载
程序以及数据链接(如果受益,请给个关注和star):https://github.com/xzdLYL/electrical_load_prediction
任务目标:以2000,2001年数据训练模型,使之能够在2002年利用一周的电力负荷数据预测下一天的电力负荷(例如:2002年第一周的电力负荷为模型输入,2002年第二周第一天的电力负荷为预测目标)
数据预处理:在数据中加入季节(以0, 0.25, 0.5, 0.75分别代表春夏秋冬)以及周内周末(以0表示周末,以1表示周内)信息。因此,模型输入数据为7*26维(包括7天,每天24小时的电力负荷数据和季节、周内周末信息);模型的输出目标为24维(预测一天内的电力负荷)。
程序环境:
pytorch gpu版本,以及其他matplotlib,numpy等基本库
程序使用方法:
1. 运行bin中的csv_to_numpy.py 将csv文件保存为npy文件,保存位置为data文件夹
2. 运行dataset_construction中的dataset_prepare.py 构建训练,测试数据的输入数据和标签数据,保存位置为data文件夹
以上所用模型为models文件夹中的GRU_model.py
3. 运行bin中的prediction.py 训练模型,训练好的模型参数保存在trained_model_parameter文件夹中, 本次测试数据的预测结果保存在prediction_result文件夹中,模型会输出一段24小时的测试数据预测结果
4. 运行bin中的pic.py可以得到多种曲线,包括模型预测误差,损失曲线下降过程等