一种冷热电多元负荷预测方法及系统

文档序号:31470549发布日期:2022-09-09 23:06阅读:115来源:国知局
一种冷热电多元负荷预测方法及系统

1.本发明涉及负荷预测领域,特别是涉及一种冷热电多元负荷预测方法及系统。


背景技术:

2.负荷预测是综合能源系统能量管理和优化调度的基础,其预测精度直接关系到系统的整体运行性能。负荷预测分为中长期预测和短期预测,时间尺度越短,对预测精度的要求越高。短期负荷预测主要用于预报未来几小时、1天至几天的负荷,对于调度安排开停机计划、机组最优组合、经济调度、最优潮流、电力市场交易有着重要的意义。
3.短期负荷预测方法主要有时间序列法、回归分析法等传统数学预测方法和基于神经网络的人工智能预测方法。传统方法依赖于所建立的负荷模型的精确度和可靠性,影响负荷的特征众多,特征之间的耦合模型建立困难,大大局限了短期负荷预测的精度。神经网络属于免模型方法,可以深入学习特征之间、特征与负荷之间的关系,挖掘出数据之间深层次关系,从而拟合特征与特征、特征与负荷之间复杂的非线性关系。
4.大多数多元负荷预测模型都是单任务学习框架。单任务学习用三个独立的神经网络分别预测冷热电负荷,每个网络只有一个优化目标,训练相互独立。这种方式易忽略任务之间的关联、冲突和约束等关系,难以考虑多元负荷之间复杂的耦合,会导致负荷预测整体效果无法更优。
5.而多任务学习可以存在多个学习目标,通过使用共享机制并行训练多个任务,共享表示的目的是为了提高模型泛化能力。采用多任务学习的方法对多元负荷进行预测,能够有效使用存在于数据中的大量共享信息,有助于更好地提取抽象特征,预测效果更佳。
6.现有的多任务学习结构中具体的神经网络主要分为两大类:循环神经网络(rnn)和卷积神经网络(cnn)。rnn在时序预测问题上存在天然优势,其线性序列结构在反向传播路径过长,易导致严重的梯度消失或梯度爆炸问题。
7.长短期记忆网络(lstm)和门循环单元(gru)模型通过增加中间状态信息直接向后传播,缓解了梯度消失问题,获得了很好的效果,逐渐成为rnn的标准模型。cnn的卷积层可以提取特征,从局部信息聚合得到整体信息,对输入进行层次信息提取。卷积核的之间无依赖关系,并行计算能力较强。两类方法都得到了广泛运用。
8.然而,rnn存在特征抽取能力差,序列依赖关系导致了并行计算能力差的问题。cnn单卷积层的滑动窗口值固定且有限,无法捕获远距离特征,缺乏记忆功能,更适用于图像处理等方面。
9.现有多元负荷预测大多采用单任务学习方法,即不同负荷的预测网络独立,训练相互独立,每个网络只有一个优化目标。单任务学习方法已难以满足现阶段及未来多元负荷预测精度的要求,主要表现在:
10.1)多元负荷间存在复杂的耦合关系,大量的共享信息存在于数据中,且这些耦合特点难以由传统特征提取方法得到。
11.2)单任务学习时,梯度的反向传播倾向于陷入局部极小值,易导致负荷预测整体
效果无法更优,模型泛化能力差。
12.目前采用多任务学习方法来克服单任务学习的缺点,所用网络主要是rnn和cnn两类网络,但是rnn和cnn面临如下问题:
13.1)rnn系列的模型当前时刻的计算依赖上一时刻的计算结果,形成了序列依赖关系,导致并行计算能力很差。
14.2)cnn的卷积结构导致其无法捕获远距离特征,缺乏记忆功能。
15.transformer模型采用编码-解码架构,并行计算能力强,自注意力机制能够捕捉到丰富的特征,同时允许长距离的特征直接联系,使模型更容易学习序列的长距离依赖。transformer模型所具有的并行化计算和序列长期依赖性学习的优势兼具了rnn和cnn的优点,为负荷预测带来了新的发展空间。但是,传统transformer模型基于标准自注意力机制,具有计算复杂度较高的问题。当序列长度为n时,标准自注意力机制的计算时间和显存占用量为o(n2)。
16.现有技术中对负荷预测的方法或者系统,是应用上述的模型对负荷进行预测,现有技术存在计算复杂、并且处理速度慢的问题。因此,如何能够简单快速的实现对负荷预测,很有必要。


技术实现要素:

17.本发明的目的是提供一种冷热电多元负荷预测方法及系统,以简单快速实现负荷预测。
18.为实现上述目的,本发明提供了如下方案:
19.一种冷热电多元负荷预测方法,所述预测方法包括:
20.获取电力系统在当前时刻的负荷数据;所述负荷数据包括:冷负荷数据、热负荷数据和电负荷数据;
21.采用随机森林法对所述负荷数据进行特征选择,得到当前时刻的特征集序列;所述特征集序列包括:冷负荷特征集序列、热负荷特征集序列和电负荷特征集序列;
22.将当前时刻的特征集序列输入到负荷预测模型中,输出下一时刻的负荷数据;所述负荷预测模型基于线性自注意力机制建立。
23.可选地,所述负荷预测模型的确定方法为:
24.获取训练集;所述训练集为所述电力系统的历史负荷数据;所述历史负荷数据包括历史时刻的负荷数据;
25.采用随机森林法对所述训练集进行特征选择,得到训练集特征序列;所述训练集特征序列包括历史时刻的特征集序列;
26.构建共享神经网络;所述共享神经网络包括依次连接的编码层和解码层;
27.将所述训练集特征序列输入至所述共享神经网络,以散度损失最小为目标对所述共享神经网络中的参数进行调整,得到训练好的共享神经网络;
28.将所述训练好的共享神经网络确定为所述负荷预测模型。
29.可选地,所述将所述训练集特征序列输入至所述共享神经网络,以散度损失最小为目标对所述共享神经网络中的参数进行调整,得到训练好的共享神经网络,具体包括:
30.将所述训练集特征序列输入至当前迭代次数下的共享神经网络,当前迭代次数下
的共享神经网络采用所述线性自注意力机制,对所述训练集特征序列进行编码和解码处理,得到当前迭代次数下的共享神经网络输出的当前负荷预测数据;
31.根据所述训练集特征序列和所述当前负荷预测数据,计算当前迭代次数下的散度损失;
32.判断当前迭代次数下的散度损失是否小于上一迭代次数下的散度损失;
33.若是,则将当前迭代次数下的共享神经网络确定为训练好的共享神经网络;
34.若否,则对当前迭代次数下的共享神经网络的参数进行调整,并进行下次迭代。
35.可选地,所述散度损失的计算公式为:
36.d
kl
(t)=λ1(t)d
kl
(p1|q1)+λ2(t)d
kl
(p2|q2)+λ3(t)d
kl
(p3|q3);
37.其中d
kl
(t)为散度损失,λ1(t)为冷负荷特征序列的权重系数,λ2(t)为热负荷特征序列的权重系数,λ3(t)为电负荷特征序列的权重系数,d
kl
(p1|q1)为冷负荷特征序列的散度,d
kl
(p2|q2)为热负荷特征序列的散度,d
kl
(p3|q3)为电负荷特征序列的散度。
38.一种冷热电多元负荷预测系统,所述预测系统包括:
39.数据获取模块,用于获取电力系统在当前时刻的负荷数据;所述负荷数据包括:冷负荷数据、热负荷数据和电负荷数据;
40.特征选择模块,用于采用随机森林法对所述负荷数据进行特征选择,得到当前时刻的特征集序列;所述特征集序列包括:冷负荷特征集序列、热负荷特征集序列和电负荷特征集序列;
41.负荷预测模块,用于将当前时刻的特征集序列输入到负荷预测模型中,输出下一时刻的负荷数据;所述负荷预测模型基于线性自注意力机制建立。
42.可选地,所述预测系统,还包括:
43.模型确定模块,用于确定所述负荷预测模型;所述模型确定模块,具体包括:
44.获取子模块,用于获取训练集;所述训练集为所述电力系统的历史负荷数据;所述历史负荷数据包括历史时刻的负荷数据;
45.训练集特征序列确定子模块,用于采用随机森林法对所述训练集进行特征选择,得到训练集特征序列;所述训练集特征序列包括历史时刻的特征集序列;
46.构建子模块,用于构建共享神经网络;所述共享神经网络包括依次连接的编码层和解码层;
47.训练子模块,用于将所述训练集特征序列输入至所述共享神经网络,以散度损失最小为目标对所述共享神经网络中的参数进行调整,得到训练好的共享神经网络;
48.负荷预测模型确定子模块,用于将所述训练好的共享神经网络确定为所述负荷预测模型。
49.可选地,所述训练子模块具体包括:
50.编解码处理单元,用于将所述训练集特征序列输入至当前迭代次数下的共享神经网络,当前迭代次数下的共享神经网络采用所述线性自注意力机制,对所述训练集特征序列进行编码和解码处理,得到当前迭代次数下的共享神经网络输出的当前负荷预测数据;
51.散度损失计算单元,用于根据所述训练集特征序列和所述当前负荷预测数据,计算当前迭代次数下的散度损失;
52.判断单元,用于判断当前迭代次数下的散度损失是否小于上一迭代次数下的散度
损失;
53.确定单元,用于若是,则将当前迭代次数下的共享神经网络确定为训练好的共享神经网络;
54.调整单元,用于若否,则对当前迭代次数下的共享神经网络的参数进行调整,并进行下次迭代。
55.可选地,所述判断单元中所述散度损失的计算公式为:
56.d
kl
(t)=λ1(t)d
kl
(p1|q1)+λ2(t)d
kl
(p2|q2)+λ3(t)d
kl
(p3|q3);
57.其中d
kl
(t)为散度损失,λ1(t)为冷负荷特征序列的权重系数,λ2(t)为热负荷特征序列的权重系数,λ3(t)为电负荷特征序列的权重系数,d
kl
(p1|q1)为冷负荷特征序列的散度,d
kl
(p2|q2)为热负荷特征序列的散度,d
kl
(p3|q3)为电负荷特征序列的散度。
58.根据本发明提供的具体实施例,本发明公开了以下技术效果:
59.本发明实施例提出了一种冷热电多元负荷预测方法及系统,采用基于线性自注意力机制建立的负荷预测模型实现负荷预测,由于线性自注意力机制,能够降低计算的复杂度,进而使得对负荷数据的预测更加的简单,并且采用基于线性自注意力机制建立的负荷预测模型,还能够使得对负荷数据的预测的计算能力增强,从而使得计算更加的快速,缩短了计算周期,因此,本发明能够简单快速的实现负荷预测。
附图说明
60.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
61.图1为本发明实施例提供的冷热电多元负荷预测方法的流程图;
62.图2为本发明实施例提供的冷热电多元负荷预测系统的结构图;
63.图3为本发明实施例提供的预测方法的具体流程框图;
64.图4为本发明实施例提供的标准自注意力机制和线性自注意力机制算法对比图;
65.图5为本发明实施例提供的编解码的详细步骤图。
66.符号说明:
67.数据获取模块-1、特征选择模块-2、负荷预测模块-3。
具体实施方式
68.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
69.本发明的目的是提供一种冷热电多元负荷预测方法及系统,以简单快速实现负荷预测。
70.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
71.实施例1
72.如图1所示,本发明实施例提供了一种冷热电多元负荷预测方法,该预测方法包括:
73.步骤100:获取电力系统在当前时刻的负荷数据;负荷数据包括:冷负荷数据、热负荷数据和电负荷数据。
74.步骤200:采用随机森林法对负荷数据进行特征选择,得到当前时刻的特征集序列;特征集序列包括:冷负荷特征集序列、热负荷特征集序列和电负荷特征集序列。
75.步骤300:将当前时刻的特征集序列输入到负荷预测模型中,输出下一时刻的负荷数据;负荷预测模型基于线性自注意力机制建立。
76.具体地,负荷预测模型的确定方法为:
77.获取训练集;训练集为电力系统的历史负荷数据;历史负荷数据包括历史时刻的负荷数据。
78.采用随机森林法对训练集进行特征选择,得到训练集特征序列;训练集特征序列包括历史时刻的特征集序列。
79.如图3所示,分别对冷负荷数据、热负荷数据和电负荷数据进行特征选择,然后再进行合并,得到特征集序列。
80.特征选择需要在众多影响因素中,筛选出若干种影响最大的因素。运用随机森林法对特征的贡献度进行深入分析,比较不同特征的贡献度大小,得到冷负荷特征集序列p1,热负荷特征集序列p2,电负荷特征集序列p3。将三个负荷预测任务的特征集序列合并,取p=p1∪p2∪p3作为总特征集,即特征集序列,包含p个特征。则合并子任务后的多任务样本库中的一条样本为输入数据为:
[0081][0082]
其中,p
p
表示特征集序列中第p个特征;分别表示t1个历史时刻内第i个时刻的电负荷数据、热负荷数据和冷负荷数据。
[0083]
构建共享神经网络;共享神经网络包括依次连接的编码层和解码层。
[0084]
将训练集特征序列输入至共享神经网络,以散度损失最小为目标对共享神经网络中的参数进行调整,得到训练好的共享神经网络。
[0085]
将训练好的共享神经网络确定为负荷预测模型。
[0086]
该负荷预测模型是基于transformer模型改进的。通过构建的权值共享层,作为共享神经网络。
[0087]
负荷预测模型通过输入-编码-解码-输出四个步骤得到负荷预测结果,设一条数据样本有m个特征,负荷预测模型的输入由单个特征值和特征位置向量相加得到。将得到的特征表示矩阵传入编码器,经过自注意力机制处理后的数据传入前馈神经网络,并行计算得到的结果输入到下一个编码器。经过n次编码操作得到编码信息矩阵并传递到解码器中。解码器根据当前时刻i的负荷数据预测下一个时刻i+1的负荷数据,这个过程需要通过掩码操作遮盖住第i+1时刻之后的数据。编解码的详细步骤如图5所示。
[0088]
标准自注意力机制接收的是输入或者上一个编码器的输出,将接收到的数据乘以不同权重得到q、k、v三个矩阵。通过公式:
[0089][0090]
自发得到数据之间的相似度。attention(q,k,v)指求取输入数据之间的相似度。
[0091]
为查询矩阵;为关注内容;为值矩阵;dk为矩阵k的维度;qk
t
计算出对于q在v上的注意力权重。
[0092]
该负荷预测模型用线性自注意力机制代替标准自注意力机制,线性化方式为:用核函数φ(
·
)的内积代替softmax非线性函数以降低计算复杂度,即使用φ(q)φ(k)
t
代替softmax中的核函数φ(
·
)是值域非负的激活函数,可以是relu、elu函数及其变形,标准自注意力机制和线性自注意力机制对比,如图4所示。
[0093]
将负荷预测模型输出序列与训练集对应的特征序列进行对比,以kl散度损失函数最小化为目标,得到最优网络参数。设p(x)为标签序列,即训练集特征序列,q(x)为负荷预测模型预测输出序列。kl散度计算公式为:
[0094][0095]
q(xj)表示负荷预测模型预测输出序列中第j个负荷预测值;p(xj)表示标签序列中q(xj)对应时刻的负荷值。d
kl
(p|q)表示p(x)和q(x)两个序列的kl散度损失函数。l表示负荷序列的长度。kl散度越小,表示两组数据分布越接近,通过反复训练神经网络以使q(x)的分布逼近p(x)。
[0096]
具体地,得到最优的参数的过程如下:
[0097]
多任务学习总体的损失函数来源于不同任务损失函数之和,损失函数的加权方式应该是动态的,根据不同任务学习的阶段,学习的难易程度,学习的效果等进行调整。冷热电负荷预测均是对系统负荷进行预测,要求三个预测子任务以相近的速度来进行学习,根据此特性,选用动态加权平均方法,利用损失函数变化率,平衡多任务学习速度。任务k的权重λk(t)的计算公式如下:
[0098][0099][0100]
其中,k为任务的个数;λk(t)为任务k的权重;t是迭代次数;lk(t-1)为任务k在第t-1次迭代时的损失函数;rk(t-1)为任务k在第t-1次迭代时的相对下降率;t为用来控制任务权重的平滑度的常数;exp表示以自然常数e为底的指数函数;h为总任务数;rh(t-1)为h个任务在第t-1次迭代时的相对下降率;lk(t-2)为任务k在第t-2次迭代时的损失函数。
[0101]
进一步地,将训练集特征序列输入至共享神经网络,以散度损失最小为目标对共享神经网络中的参数进行调整,得到训练好的共享神经网络,具体包括:
[0102]
将训练集特征序列输入至当前迭代次数下的共享神经网络,当前迭代次数下的共享神经网络采用线性自注意力机制,对训练集特征序列进行编码和解码处理,得到当前迭代次数下的共享神经网络输出的当前负荷预测数据。
[0103]
根据训练集特征序列和当前负荷预测数据,计算当前迭代次数下的散度损失。
[0104]
判断当前迭代次数下的散度损失是否小于上一迭代次数下的散度损失。
[0105]
若是,则将当前迭代次数下的共享神经网络确定为训练好的共享神经网络。
[0106]
若否,则对当前迭代次数下的共享神经网络的参数进行调整,并进行下次迭代。
[0107]
散度损失的计算公式为:
[0108]dkl
(t)=λ1(t)d
kl
(p1|q1)+λ2(t)d
kl
(p2|q2)+λ3(t)d
kl
(p3|q3);
[0109]
其中d
kl
(t)为散度损失,λ1(t)为冷负荷特征序列的权重系数,λ2(t)为热负荷特征序列的权重系数,λ3(t)为电负荷特征序列的权重系数,d
kl
(p1|q1)为冷负荷特征序列的散度,d
kl
(p2|q2)为热负荷特征序列的散度,d
kl
(p3|q3)为电负荷特征序列的散度。
[0110]
最后通过三个全连接层分离冷负荷预测、热负荷预测和电负荷预测三个任务和预测结果。预测结果指冷负荷预测数据、热负荷预测数据和电负荷预测数据。
[0111]
实施例2
[0112]
如图2所示,本发明实施例提供了一种冷热电多元负荷预测系统,该预测系统包括:数据获取模块1、特征选择模块2和负荷预测模块3。
[0113]
数据获取模块1,用于获取电力系统在当前时刻的负荷数据;负荷数据包括:冷负荷数据、热负荷数据和电负荷数据。
[0114]
特征选择模块2,用于采用随机森林法对负荷数据进行特征选择,得到当前时刻的特征集序列;特征集序列包括:冷负荷特征集序列、热负荷特征集序列和电负荷特征集序列。
[0115]
负荷预测模块3,用于将当前时刻的特征集序列输入到负荷预测模型中,输出下一时刻的负荷数据;负荷预测模型基于线性自注意力机制建立。
[0116]
具体地,该预测系统还包括:模型确定模块。
[0117]
模型确定模块,用于确定负荷预测模型。模型确定模块具体包括:获取子模块、训练集特征序列确定子模块、构建子模块、训练子模块和负荷预测模型确定子模块。
[0118]
获取子模块,用于获取训练集;训练集为所述电力系统的历史负荷数据;历史负荷数据包括历史时刻的负荷数据。
[0119]
训练集特征序列确定子模块,用于采用随机森林法对训练集进行特征选择,得到训练集特征序列;训练集特征序列包括历史时刻的特征集序列。
[0120]
构建子模块,用于构建共享神经网络;共享神经网络包括依次连接的编码层和解码层。
[0121]
训练子模块,用于将训练集特征序列输入至共享神经网络,以散度损失最小为目标对共享神经网络中的参数进行调整,得到训练好的共享神经网络。
[0122]
负荷预测模型确定子模块,用于将训练好的共享神经网络确定为负荷预测模型。
[0123]
进一步地,训练子模块具体包括:编解码处理单元、散度损失计算单元、判断单元、确定单元和调整单元。
[0124]
编解码处理单元,用于将训练集特征序列输入至当前迭代次数下的共享神经网络,当前迭代次数下的共享神经网络采用线性自注意力机制,对训练集特征序列进行编码和解码处理,得到当前迭代次数下的共享神经网络输出的当前负荷预测数据。
[0125]
散度损失计算单元,用于根据训练集特征序列和当前负荷预测数据,计算当前迭代次数下的散度损失。
[0126]
判断单元,用于判断当前迭代次数下的散度损失是否小于上一迭代次数下的散度损失。
[0127]
确定单元,用于若是,则将当前迭代次数下的共享神经网络确定为训练好的共享神经网络。
[0128]
调整单元,用于若否,则对当前迭代次数下的共享神经网络的参数进行调整,并进行下次迭代。
[0129]
判断单元中散度损失的计算公式为:
[0130]dkl
(t)=λ1(t)d
kl
(p1|q1)+λ2(t)d
kl
(p2|q2)+λ3(t)d
kl
(p3|q3);
[0131]
其中d
kl
(t)为散度损失,λ1(t)为冷负荷特征序列的权重系数,λ2(t)为热负荷特征序列的权重系数,λ3(t)为电负荷特征序列的权重系数,d
kl
(p1|q1)为冷负荷特征序列的散度,d
kl
(p2|q2)为热负荷特征序列的散度,d
kl
(p3|q3)为电负荷特征序列的散度。
[0132]
本发明的优点:
[0133]
1.提出了基于transformer网络和多任务学习的多元负荷预测方法。
[0134]
2.通过多任务学习模型,使冷热电负荷预测模型共享同一个模型,有助于挖掘冷热电负荷之间的耦合关系,避免了单任务模型易陷入局部最优的缺点。
[0135]
3.兼具rnn和cnn的优点,特征抽取能力强,并行计算能力强,易学习序列的长距离依赖关系。同时能实现快速并行,在长距离特征捕获能力等方面都表现优异。
[0136]
4.提出改进transformer模型,得到负荷预测模型,用线性自注意力机制代替标准自注意力机制,使得计算复杂度降低至o(n)。
[0137]
针对单任务学习和现有多任务学习存在的问题,本发明提出一种基于改进transformer模型和多任务学习的冷热电多元负荷预测方法,该方法采用多任务学习架构,神经网络采用基于线性注意力机制的改进transformer模型,即负荷预测模型。首先对冷热电负荷预测三个子任务分别进行特征贡献度分析,运用随机森林法得到每个子任务贡献度较高特征的合集。取三个子任务特征合集的并集,与历史冷热电负荷数据合并形成多任务学习样本库。抽取样本数据输入改进transformer模型,即负荷预测模型。为降低transformer模型的计算量,修改自注意力机制结构,用线性自注意力机制代替标准自注意力机制,使得计算复杂度降低至o(n)。多元负荷预测任务经过相同网络进行编码、解码等操作,共享权值。多任务学习总体的损失函数来源于不同任务损失函数之和,选用动态加权平均方法确定每个任务权重,以总损失函数最小为目标训练模型。最后通过全连接层分离冷热电负荷预测任务和预测结果,底层参数统一共享,顶层参数各个模型各自独立。
[0138]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0139]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1