一种基于LSTM与多模型集成的负荷预测方法及装置与流程
未命名
10-18
阅读:145
评论:0
一种基于lstm与多模型集成的负荷预测方法及装置
技术领域
1.本发明属于电力负荷预测技术领域,具体涉及一种基于lstm与多模型集成的负荷预测方法及装置。
背景技术:
2.电力负荷预测是电力系统规划、用电、调度等方面的重要基础工作,准确、合理的负荷预测能够为电力系统的优化调度、安全运行与合理定价等决策提供关键的数据支撑,有效地提高经济效益,促进电能消纳。
3.目前,电力负荷预测方法已经有了较为成熟的研究。主流的预测方法如统计方法,原理简单,容易实现,但是当样本数据较为复杂时,预测效果一般;另一类方法人工智能算法,对时间序列的处理效果较差,在对较长时间序列进行预测时效果差强人意。目前,常用的电力系统负荷预测深度学习算法普遍存在忽略标签之间的内在联系、忽视数据时序相关性、泛化性较差等问题,导致模型预测效果较差。
技术实现要素:
4.为解决现有技术中的不足,本发明提供一种基于lstm与多模型集成的负荷预测方法及装置,本发明具备高效处理离散数据、考虑数据时序相关性、模型泛化性优越等优点。
5.为达到上述目的,本发明所采用的技术方案是:
6.第一方面,提供一种负荷预测方法,包括:采集电力系统历史运行数据;将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。
7.进一步地,所述基于lstm与多模型集成的负荷预测模型,包括:数据预处理模块,用于对电力系统历史运行数据进行预处理,获得预处理数据;负荷预测模块,用于将预处理数据输入训练好的stacking预测模型,获得预测结果。
8.进一步地,对电力系统历史运行数据进行预处理,包括:使用均值编码的方式对电力系统历史运行数据中的离散数据进行处理,并将经过均值编码处理后的离散数据与电力系统历史运行数据中的序列数据进行整合,再对整合后的序列数据采用以下公式进行z-score标准化,得到第一特征数据:
[0009][0010]
其中,xi为原始样本数据,zi为标准化后的样本数据,μ为所有样本数据的均值,σ为所有样本数据的标准差;将电力系统历史运行数据中的负荷数据输入到多层lstm神经网络中进行特征提取,得到第二特征数据;将第一特征数据、第二特征数据及电力系统历史运行数据中的其他连续数据整合在一起,得到预处理数据。
[0011]
进一步地,所述多层lstm神经网络的计算公式如下:
[0012]it
=f(x
twxi
+h
t-1whi
+bi)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0013]ft
=f(x
twxf
+h
t-1whf
+bf)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0014]ot
=f(x
twxo
+h
t-1who
+bo)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0015]mt
=tanh(x
twxm
+h
t-1whm
+bm)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0016]ct
=f
t
⊙ct-1
+i
t
⊙mt
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0017]ht
=o
t
⊙
tanh(c
t
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0018]
其中,i
t
,f
t
,o
t
和m
t
对应输入门、遗忘门、输出门和候选记忆单元;c
t
与h
t
分别为t时刻的记忆元输出与隐状态;公式中的w
xi
,w
hi
,w
xf
,w
hf
,w
xo
,w
ho
,w
xm
,w
hm
分别为公式(2)-(5)中与x
t
和h
t-1
相乘的权重矩阵;bi,bf,bo,bm为公式(2)-(5)中的权重偏置;f表示sigmoid函数,表示哈达玛积,即两个同阶矩阵对应矩阵元素相乘。
[0019]
进一步地,所述stacking预测模型的训练方法,包括:stacking预测模型第一层的训练步骤如下:选择n种训练算法,将含有时序性特征的预处理数据输入到stacking第一层预测模型中;选择训练算法a1通过交叉验证的方式对基学习器进行训练,获得d1,d2,...,dn共计n组对验证集的预测值,记为t1,t2,...,tn,以及n组对测试集的预测值;将n组对验证集的预测值进行组合,即t1=[t1,t2,...,tn],同时将n组测试集的预测值取平均得到一组预测值b1;同理,对训练算法a2~an重复上述步骤,最终得到基学习器的预测值[t1,t2,...,tn]和测试集的预测值[b1,b2,...,bn];stacking预测模型第二层的训练步骤如下:将第一层基学习器的预测值[t1,t2,...,tn]和第一层得到的测试集的预测值[b1,b2,...,bn]分别作为第二层训练集和测试集,使用算法a’来训练元学习器,得到最终的预测结果。
[0020]
进一步地,使用rf,gbdt,xgboost三种算法来训练基学习器,选择lightgbm训练元学习器。
[0021]
第二方面,提供一种负荷预测装置,包括:数据采集模块,用于采集电力系统历史运行数据;负荷预测模块,用于将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。
[0022]
第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如第一方面所述的负荷预测方法。
[0023]
第四方面,提供一种计算机设备,包括:存储器,用于存储指令;处理器,用于执行所述指令,使得所述设备执行实现如第一方面所述的负荷预测方法的操作。
[0024]
与现有技术相比,本发明所达到的有益效果:本发明通过将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果,有效提高了负荷预测的准确度;通过均值编码方法解决了对离散数据处理不佳的问题,通过lstm网络解决了对数据的时序相关性考虑不足的问题,通过stacking模型解决了模型泛化性不佳的问题;因此,本发明具备高效处理离散数据、考虑数据时序相关性、模型泛化性优越的优点。
附图说明
[0025]
图1是本发明实施例中构建的基于lstm与多模型集成的负荷预测模型的模型结构示意图。
具体实施方式
[0026]
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
[0027]
实施例一:
[0028]
一种基于lstm与多模型集成的负荷预测方法,包括:采集电力系统历史运行数据;将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。
[0029]
如图1所示,本发明中构建的基于lstm与多模型集成的负荷预测模型,包括:数据预处理模块,用于对电力系统历史运行数据进行预处理,获得预处理数据;负荷预测模块,用于将预处理数据输入训练好的stacking预测模型,获得预测结果。
[0030]
对电力系统历史运行数据进行预处理,获得预处理数据的具体过程如下。
[0031]
步骤1:原始数据处理,包括数据编码和数据标准化。
[0032]
本发明使用均值编码的方式处理数据集中的离散数据,即将数据集中的每个离散特征都用该类别的平均目标值代替。接着,将经过均值编码处理后的离散数据与原始数据集中的序列数据进行整合,再对整合后的序列数据采用以下公式进行z-score标准化,得到第一特征数据:
[0033][0034]
其中,xi为原始样本数据,zi为标准化后的样本数据,μ为所有样本数据的均值,σ为所有样本数据的标准差。
[0035]
步骤2:基于lstm模型进行特征提取。
[0036]
将电力系统历史运行数据中的负荷数据输入到多层lstm神经网络中进行特征提取,得到第二特征数据;本发明的特征提取层包括三层lstm网络层,每层的神经元个数分别为30、100、100。在lstm模型的训练过程中采用dropout法来防止过拟合、采用adam算法对模型参数进行优化、并采用均方误差mse作为损失函数。
[0037]
lstm的各部分计算公式如下:
[0038]it
=f(x
twxi
+h
t-1whi
+bi)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0039]ft
=f(x
twxf
+h
t-1whf
+bf)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0040]ot
=f(x
twxo
+h
t-1who
+bo)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0041]mt
=tanh(x
twxm
+h
t-1whm
+bm)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0042]ct
=f
t
⊙ct-1
+i
t
⊙mt
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0043]ht
=o
t
⊙
tanh(c
t
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0044]
其中,i
t
,f
t
,o
t
和m
t
对应输入门、遗忘门、输出门和候选记忆单元;c
t
与h
t
分别为t时刻的记忆元输出与隐状态;公式中的w
xi
,w
hi
,w
xf
,w
hf
,w
xo
,w
ho
,w
xm
,w
hm
分别为公式(2)-(5)中与x
t
和h
t-1
相乘的权重矩阵;bi,bf,bo,bm为公式(2)-(5)中的权重偏置;f表示sigmoid函数,表示哈达玛积,即两个同阶矩阵对应矩阵元素相乘。
[0045]
将第一特征数据、第二特征数据及电力系统历史运行数据中的其他连续数据整合在一起,得到预处理数据。
[0046]
将预处理数据输入训练好的stacking预测模型,获得预测结果的具体过程如下。
[0047]
步骤3:通过stacking模型进行预测。
[0048]
将通过lstm神经网络提取过特征的负荷数据,其他的连续数据以及经过均值编码处理过的离散数据整合到一起,并将其划分为n个大小相同的子数据集与一个测试集,一同作为stacking预测模型的输入数据。
[0049]
stacking预测模型第一层的训练步骤如下:选择n种训练算法,将整合后的数据输入到stacking第一层预测模型中。选择训练算法a1通过交叉验证的方式对基学习器进行训练,获得d1,d2,...,dn共计n组对验证集的预测值,记为t1,t2,...,tn,以及n组对测试集的预测值;将n组对验证集的预测值进行组合,即t1=[t1,t2,...,tn],同时将n组测试集的预测值取平均得到一组预测值b1。同理,对训练算法a2~an重复上述步骤,最终得到基学习器的预测值[t1,t2,...,tn]和测试集的预测值[b1,b2,...,bn];
[0050]
stacking预测模型第二层的训练步骤如下:将第一层基学习器的预测值[t1,t2,...,tn]和第一层得到的测试集的预测值[b1,b2,...,bn]分别作为第二层训练集和测试集,使用算法a’来训练元学习器,得到最终的预测结果。
[0051]
对于stacking框架下的两层训练算法的选择,本发明使用rf,gbdt,xgboost三种算法来训练基学习器,选择lightgbm训练元学习器,构成基于stacking的预测模型。
[0052]
步骤4:对预测结果进行评估。
[0053]
先将预测结果进行反归一化,再对预测结果进行评估。本发明采取三个评估指标来评估模型预测的性能,分别为相对均方误差(root mean square error,rmse),平均绝对百分比误差(mean absolute percentage error,mape)与预测精度来评估预测效果,分别记为y
rmse
,y
mape
和y
score
,计算公式如下:
[0054][0055][0056][0057]
其中,n为预测数据的个数;yi为负荷实际值,为负荷预测值,y
imax
为所有负荷实际值中的最大值,y
imin
为所有负荷实际值中的最小值。
[0058]
为验证本发明的性能,使用2014年全球能源预测竞赛中的数据集进行仿真验证。该数据集包括某地从2006年到2014年之间的负荷数据与温度数据,采样间隔为1h,选用负荷、温度、时刻、星期与节假日作为输入数据。使用rf,gbdt,xgboost三种算法训练基学习器,lightgbm训练元学习器,构成基于stacking的预测模型。选择2006年第四季度的数据进行对比实验,按照4:1的比例划分训练集与测试集,使用滑动时间窗口,选取所有种类的输入数据在预测点前的50个数据作为输入特征,对预测点后的24个负荷数据进行预测,以此来进行连续的日前预测。为了保证实验结果的准确性,每次实验均进行5次,最后取预测精度排在中位数的预测结果进行后续的分析与对比,预测结果指标汇总到表1中。
[0059]
表1各项预测指标汇总
[0060][0061]
从表1可以看出,本发明提出的模型在给定数据集下的预测精度达到了98%以上,有着较好的预测效果,并且各项评估指标相较于其他的对比模型均有所改善。其中,rmse的值为48.37mw,相较于其他三种模型分别减少了23.43mw,19.59mw,59.6mw;mape的值为1.03%,相较于其他三种模型分别减少了0.48%,0.46%,1.6%;预测精度的值为98.44%,相较于其他三种模型分别提高了0.66%,0.63%,2.24%。综上所述,本发明的lstm-stacking模型相较于其他模型,在预测精度方面有着明显的上升,预测误差方面,rmse与mape有着明显的下降,说明本发明提出的负荷预测模型相较于其他对比的预测模型在性能方面有着较大的提升。
[0062]
本发明针对常用的电力系统负荷预测深度学习算法普遍缺陷,提出了一种基于lstm与多模型集成的负荷预测方法。通过均值编码方法解决了对离散数据处理不佳的问题,通过lstm网络解决了对数据的时序相关性考虑不足的问题,通过stacking模型解决了模型泛化性不佳的问题。因此,本发明具备高效处理离散数据、考虑数据时序相关性、模型泛化性优越的优点。
[0063]
实施例二:
[0064]
基于实施例一所述的一种基于lstm与多模型集成的负荷预测方法,本实施例提供一种基于lstm与多模型集成的负荷预测装置,包括:数据采集模块,用于采集电力系统历史运行数据;负荷预测模块,用于将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。
[0065]
实施例三:
[0066]
基于实施例一所述的一种基于lstm与多模型集成的负荷预测方法,本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如实施例一所述的负荷预测方法。
[0067]
实施例四:
[0068]
基于实施例一所述的一种基于lstm与多模型集成的负荷预测方法,本实施例提供一种计算机设备,包括:存储器,用于存储指令;处理器,用于执行所述指令,使得所述设备执行实现如实施例一所述的负荷预测方法的操作。
[0069]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
技术特征:
1.一种负荷预测方法,其特征在于,包括:采集电力系统历史运行数据;将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。2.根据权利要求1所述的负荷预测方法,其特征在于,所述基于lstm与多模型集成的负荷预测模型,包括:数据预处理模块,用于对电力系统历史运行数据进行预处理,获得预处理数据;负荷预测模块,用于将预处理数据输入训练好的stacking预测模型,获得预测结果。3.根据权利要求2所述的负荷预测方法,其特征在于,对电力系统历史运行数据进行预处理,包括:使用均值编码的方式对电力系统历史运行数据中的离散数据进行处理,并将经过均值编码处理后的离散数据与电力系统历史运行数据中的序列数据进行整合,再对整合后的序列数据采用以下公式进行z-score标准化,得到第一特征数据:其中,x
i
为原始样本数据,z
i
为标准化后的样本数据,μ为所有样本数据的均值,σ为所有样本数据的标准差;将电力系统历史运行数据中的负荷数据输入到多层lstm神经网络中进行特征提取,得到第二特征数据;将第一特征数据、第二特征数据及电力系统历史运行数据中的其他连续数据整合在一起,得到预处理数据。4.根据权利要求3所述的负荷预测方法,其特征在于,所述多层lstm神经网络的计算公式如下:i
t
=f(x
t
w
xi
+h
t-1
w
hi
+b
i
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)f
t
=f(x
t
w
xf
+h
t-1
w
hf
+b
f
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)o
t
=f(x
t
w
xo
+h
t-1
w
ho
+b
o
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)m
t
=tanh(x
t
w
xm
+h
t-1
w
hm
+b
m
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)c
t
=f
t
⊙
c
t-1
+i
t
⊙
m
t
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)h
t
=o
t
⊙
tanh(c
t
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)其中,i
t
,f
t
,o
t
和m
t
对应输入门、遗忘门、输出门和候选记忆单元;c
t
与h
t
分别为t时刻的记忆元输出与隐状态;公式中的w
xi
,w
hi
,w
xf
,w
hf
,w
xo
,w
ho
,w
xm
,w
hm
分别为公式(2)-(5)中与x
t
和h
t-1
相乘的权重矩阵;b
i
,b
f
,b
o
,b
m
为公式(2)-(5)中的权重偏置;f表示sigmoid函数,表示哈达玛积,即两个同阶矩阵对应矩阵元素相乘。5.根据权利要求3所述的负荷预测方法,其特征在于,所述stacking预测模型的训练方法,包括:stacking预测模型第一层的训练步骤如下:选择n种训练算法,将含有时序性特征的预处理数据输入到stacking第一层预测模型中;选择训练算法a1通过交叉验证的方式对基学习器进行训练,获得d1,d2,...,d
n
共计n组对验证集的预测值,记为t1,t2,...,t
n
,以及n组对测试集的预测值;将n组对验证集的预测值进行组合,即t1=[t1,t2,...,t
n
],同时将n组测
试集的预测值取平均得到一组预测值b1;同理,对训练算法a2~a
n
重复上述步骤,最终得到基学习器的预测值[t1,t2,...,t
n
]和测试集的预测值[b1,b2,...,b
n
];stacking预测模型第二层的训练步骤如下:将第一层基学习器的预测值[t1,t2,...,t
n
]和第一层得到的测试集的预测值[b1,b2,...,b
n
]分别作为第二层训练集和测试集,使用算法a’来训练元学习器,得到最终的预测结果。6.根据权利要求5所述的负荷预测方法,其特征在于,使用rf,gbdt,xgboost三种算法来训练基学习器,选择lightgbm训练元学习器。7.一种负荷预测装置,其特征在于,包括:数据采集模块,用于采集电力系统历史运行数据;负荷预测模块,用于将采集的电力系统历史运行数据,输入构建的基于lstm与多模型集成的负荷预测模型,输出负荷预测结果。8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现如权利要求1~6中任一项所述的负荷预测方法。9.一种计算机设备,其特征在于,包括:存储器,用于存储指令;处理器,用于执行所述指令,使得所述设备执行实现如权利要求1~6中任一项所述的负荷预测方法的操作。
技术总结
本发明公开了一种基于LSTM与多模型集成的负荷预测方法及装置,所述方法包括:采集电力系统历史运行数据;将采集的电力系统历史运行数据,输入构建的基于LSTM与多模型集成的负荷预测模型,输出负荷预测结果。本发明所述基于LSTM与多模型集成的负荷预测模型通过均值编码方法解决了对离散数据处理不佳的问题,通过LSTM网络解决了对数据的时序相关性考虑不足的问题,通过Stacking模型解决了模型泛化性不佳的问题。因此,本发明具备高效处理离散数据、考虑数据时序相关性、模型泛化性优越等优点。点。点。
技术研发人员:庄舒仪 王明深 杨毅 韩俊 朱剑 杨波 宋亮亮 陈实 庞福滨 郑明忠
受保护的技术使用者:国网江苏省电力有限公司 江苏省电力试验研究院有限公司
技术研发日:2023.05.16
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
