基于LSTM、BP神经网络实现电力系统负荷预测(Python代码实现)
👨🎓个人主页:研学社的博客
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
前馈神经网络的输出只依赖当前输入,但是在文本、视频、语音等时序数据中,时序数据长度并不固定,前馈神经网络的输入输出维数不能任意更改,因此难以适应这类型时序数据的处理。短期电力负荷预测的输入与输出均为时间序列,其本质仍是基于先前元素的序列预测问题,为此需要采用与前馈神经网络不同的方法,进行短期电力负荷预测。
循环神经网络具有记忆功能,可提升网络性能。与前馈神经网络相比,循环神经网络具备可同时接受自身信息与其他神经元信息的神经元,更贴合生物神经网络结构,在文本等序列数据分析中有广泛应用。循环神经网络的参数学习随时间反向传播,错误信息前传递学习,建立长时间间隔的状态间依赖,支持序列数据的分析处理。但随着网络层数增多与时间加长,循环神经网络容易因梯度消失或爆炸问题,导致只能学习短距离依赖,无法解决长距离依赖问题。为了解决循环神经网络的长程依赖问题,在循环神经网络上添加门控机制,实现调度信息积累速度控制,这类方法被称之为基于门控的循环神经网络,例如LSTM长短期记忆网络。LSTM是一种基于RNN的改进模型,通过引入门和单元的概念,解决长距离依赖问题,具有比RNN更强的适应性。LSTM网络的单结构如图1所示。每个神经单元内部结构如图2所示。
每个LSTM神经单元都包含遗忘门、输入门和输出门三个门控结构,以控制数据有信息的换地。其中,遗忘门负责丢弃和保留上一个时刻的有效信息在C{C内,输入门将当前时刻有效信息存放在Ct内,输出门决定神经单元输出中C·的信息。
📚2 运行结果
2.1 LSTM
2.2 BP
部分代码:
draw.iloc[:,0].plot(figsize=(12,6)) draw.iloc[:,1].plot(figsize=(12,6)) plt.legend(('real', 'predict'),loc='upper right',fontsize='15') plt.title("Test Data",fontsize='30') #添加标题 #展示在测试集上的表现
draw=pd.concat([pd.DataFrame(y_test),pd.DataFrame(y_test_predict)],axis=1); draw.iloc[200:300,0].plot(figsize=(12,6)) draw.iloc[200:300,1].plot(figsize=(12,6)) plt.legend(('real', 'predict'),loc='upper right',fontsize='15') plt.title("Test Data",fontsize='30') #添加标题 #展示在测试集上的表现
draw=pd.concat([pd.DataFrame(y_train),pd.DataFrame(y_train_predict)],axis=1) draw.iloc[100:400,0].plot(figsize=(12,6)) draw.iloc[100:400,1].plot(figsize=(12,6)) plt.legend(('real', 'predict'),loc='upper right',fontsize='15') plt.title("Train Data",fontsize='30') #添加标题 #展示在训练集上的表现
🌈3 Python代码及数据
🎉4 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]刘海峰,王艳如.基于LSTM的短期电力负荷预测算法研究[J].现代信息科技,2021,5(23):40-42+47.DOI:10.19850/j.cnki.2096-4706.2021.23.011.
[2]陈振宇,杨斌,阮文俊,沈杰,吴丽莉.基于LSTM神经网络的短期电能负荷预测[J].电力大数据,2021,24(04):8-15.DOI:10.19317/j.cnki.1008-083x.2021.04.002.
[3]胡永迅,姜媛媛,夏玲.基于GA-BP的输电线路负荷预测研究[J].邵阳学院学报(自然科学版),2021,18(03):44-51.
相关文章
- python一维数组转置_python矩阵转置[通俗易懂]
- python人工智能学习笔记_[Python] 人工智能与自然语言处理学习笔记(1)[通俗易懂]
- Python sorted 函数
- PYTHON 全栈工程师「建议收藏」
- python chmod_使Python脚本可执行chmod755?
- python常见运维脚本_Python运维常用脚本[通俗易懂]
- Python: “股票数据定向爬虫”实例
- python生成器详解_Python 生成器
- 【说站】python中isprintable判断字符的使用
- Python的正则表达式_python正则表达式例子
- h5 Python_python做h5网站
- python分段线性插值_Python实现分段线性插值
- 1行Python代码,把PPT转成图片,python-office功能更新~
- 【视频】Python用LSTM长短期记忆神经网络对不稳定降雨量时间序列进行预测分析|数据分享|附代码数据
- Python中TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化|附代码数据
- Python之configparser模块详解和使用
- Centos下升级Python及Mongodb驱动安装问题
- Python操作Redis实现数据持久化(python操作redis)
- Linux下运行Python脚本的步骤简介(linux如何运行python脚本)
- python逐行读取文件内容的三种方法