Python电力负荷:ARIMA、LSTM神经网络时间序列预测分析

简介: Python电力负荷:ARIMA、LSTM神经网络时间序列预测分析

全文链接: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、数据分析。


相关文章
|
1天前
|
机器学习/深度学习 Python
【Python实战】——神经网络识别手写数字(三)
【Python实战】——神经网络识别手写数字
|
1天前
|
机器学习/深度学习 数据可视化 Python
【Python实战】——神经网络识别手写数字(二)
【Python实战】——神经网络识别手写数字(三)
|
1天前
|
机器学习/深度学习 数据可视化 Python
【Python实战】——神经网络识别手写数字(一)
【Python实战】——神经网络识别手写数字
|
3天前
|
机器学习/深度学习 算法 TensorFlow
Python深度学习基于Tensorflow(6)神经网络基础
Python深度学习基于Tensorflow(6)神经网络基础
16 2
Python深度学习基于Tensorflow(6)神经网络基础
|
6天前
|
机器学习/深度学习 数据可视化 数据挖掘
R语言神经网络模型金融应用预测上证指数时间序列可视化
R语言神经网络模型金融应用预测上证指数时间序列可视化
|
6天前
|
机器学习/深度学习 数据挖掘 计算机视觉
R语言中的神经网络预测时间序列:多层感知器(MLP)和极限学习机(ELM)数据分析报告
R语言中的神经网络预测时间序列:多层感知器(MLP)和极限学习机(ELM)数据分析报告
|
8天前
|
机器学习/深度学习 并行计算 测试技术
BiTCN:基于卷积网络的多元时间序列预测
该文探讨了时间序列预测中模型架构的选择,指出尽管MLP和Transformer模型常见,但CNN在预测领域的应用较少。BiTCN是一种利用两个时间卷积网络来编码历史和未来协变量的模型,提出于《Parameter-efficient deep probabilistic forecasting》(2023年3月)。它包含多个由扩张卷积、GELU激活函数、dropout和全连接层组成的临时块,有效地处理序列数据。实验表明,BiTCN在具有外生特征的预测任务中表现优于N-HiTS和PatchTST。BiTCN的效率和性能展示了CNN在时间序列预测中的潜力。
21 1
|
12天前
|
机器学习/深度学习 自然语言处理 语音技术
【Python 机器学习专栏】Python 深度学习入门:神经网络基础
【4月更文挑战第30天】本文介绍了Python在深度学习中应用于神经网络的基础知识,包括神经网络概念、基本结构、训练过程,以及Python中的深度学习库TensorFlow和PyTorch。通过示例展示了如何使用Python实现神经网络,并提及优化技巧如正则化和Dropout。最后,概述了神经网络在图像识别、语音识别和自然语言处理等领域的应用,并强调掌握这些知识对深度学习的重要性。随着技术进步,神经网络的应用将持续扩展,期待更多创新。
|
12天前
|
机器学习/深度学习 数据可视化 TensorFlow
Python用线性回归和TensorFlow非线性概率神经网络不同激活函数分析可视化
Python用线性回归和TensorFlow非线性概率神经网络不同激活函数分析可视化
|
12天前
|
机器学习/深度学习 PyTorch 算法框架/工具
Python用GAN生成对抗性神经网络判别模型拟合多维数组、分类识别手写数字图像可视化
Python用GAN生成对抗性神经网络判别模型拟合多维数组、分类识别手写数字图像可视化

热门文章

最新文章