全文链接:http://tecdat.cn/?p=32059
分析师:Eileen
电力系统源源不断向各用户提供持续稳定的电能,本文通过对数据的提取,帮助客户分别对不同客户端日,月,年的用电负荷情况进行分析,并通过模型对单户负荷情况进行预测(点击文末“阅读原文”获取完整数据)。
解决方案
任务/目标
本课题的数据分析对象是电力在2011-2014年的370个客户端的耗电数据,根据预测负荷可以安排发电厂发电机组的启停,降低储备容量的浪费,节约成本。
数据源准备
负荷预测是用历史负荷建立模型来预测未来负荷的方法,因此历史数据收集的数量、质量直接决定了负荷预测的准确性。所以在负荷预测前,需要收集大量的历史负荷数据、天气数据等。这些数据由于一些因素可能会造成数据的缺失,需要利用一些方法去填补缺失值,提高负荷预测的精确度。
本项目采用均值填补法,找到所有有缺失值的列,用各列的均值填充缺失值。
数据分析
通过曲线类图像,以特定时间周期所统计的负荷值为纵坐标来画出负荷/时间的关系曲线,呈现负荷的大小及发展趋势。例如年、月、季、天等指标。
划分训练集和测试集
对样本集拆分成训练集和测试集
values = reframed.values n_train_time = 365*24*3 train = values[:n_train_time, :] test = values[n_train_time:, :]
考虑到最终模型会预测将来的某时间段的销量,为了更真实的测试模型效果,以时间来切分训练集和测试集。具体做法如下:假设我们有2011-2014的客户端耗电数据。以2011 ~ 2013的数据作为训练,以2013 ~ 2014的数据作为测试。
建模
LSTM 模型, 时间序列预测分析就是利用过去一段时间内某事件时间的特征来预测未来一段时间内该事件的特征,将问题转化为监督学习问题。将特征进行规范化、归一化,进而搭建网络模型、训练网络。
ARIMA , 一般应用在股票和电商销量领域
该模型用于使用观察值和滞后观察值的移动平均模型残差间的依赖关系,采用了拟合ARIMA(5,1,0)模型,将自回归的滞后值设为5,使用1的差分阶数使时间序列平稳,使用0的移动平均模型。
在此案例中,运用2种方法预测电力负荷,其可视化图形如下:
ARIMA模型
点击标题查阅往期内容
Python中利用长短期记忆模型LSTM进行时间序列预测分析 - 预测电力负荷数据
01
02
03
04
LSTM模型
可以看出,预测值的趋势已经基本与真实趋势保持一致,但是在预测期较长的区间段,其预测值之间的差别较大。
关于分析师
在此对Eileen对本文所作的贡献表示诚挚感谢,她专注数据处理、数据分析、数据预测领域。擅长Python、数据分析。