一种电力负荷预测方法、装置、计算机设备及存储介质
技术领域
本发明涉及电力预测领域,特别涉及一种电力负荷预测方法、装置、计算机设备及存储介质。
背景技术
随着电力市场的发展以及用户需求的提升,电网的安全及经济运行变得至关重要。对电力负荷进行准确的短期预测,可以有效保障电网安全运行,降低发电成本,满足用户需求和提高社会经济效益。由于电力系统负荷具有明显的周期特性,同时影响因素复杂,如气候、降雨量等,因此选择先进和准确的短期负荷预测方法十分必要。
当前涌现了很多现代智能的电力负荷预测方法,例如小波分析法、人工神经网络法和支持向量法等,这些方法相比于一些传统的短期电力负荷预测方法(诸如灰色预测法、卡尔曼滤波法和专家系统法等)而言,不论是电力负荷的预测速度还是预测精度,都有一定的提高。
然而即便这些电力负荷预测方法已经提高了电力负荷的预测速度和预测精度,但是都还存在着一些弊端,例如人工神经网络法,该方法虽具有较强的记忆能力和非线性映射能力,但是难以科学的确定其网络结构和适合的寻优参数,存在局部极小点问题;又例如支持向量法以统计学理论为基础,但是该方法的自旋参数和核函数的确定需要人工经验,这同样会影响到预测效果。
随着人工智能技术的快速发展,基于深度神经网络对电力负荷预测进行研究成为该领域研究的热点。其中,循环神经网络(RecurrentNeural Networks,RNNs)主要用于时间序列数据的分析及预测。RNNs会对前面的信息进行记忆并应用到当前输出的计算,即隐层不仅有与当前时刻输入层的连接,同时有与上一时刻隐层的连接。然而RNNs保留的历史信息会随着时间衰减,即反传过程中的历史梯度消散。RNNs的缺点导致其不能运用于较长时间序列的数据建模。考虑到电力负荷数据的时序性,RNN和LSTM神经网络存在梯度消失、过拟合等问题。
因此如何准确可靠地预测电力负荷是本领域技术人员需要解决的问题。
发明内容
本发明实施例提供了一种电力负荷预测方法、装置、计算机设备及存储介质,旨在实现电力负荷预测结果准确可靠的效果。
第一方面,本发明实施例提供了一种电力负荷预测方法,所述方法包括:
获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;
利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果;
利用融合注意力机制的CNN-BiLSTM网络对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果;
对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果。
进一步的,所述获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量,包括:
在所述历史用电量数据中获取用电量数据序列x(t),并在所述用电量数据序列x(t)中获取所有的极大值点,将所述极大值点拟合形成所述历史用电量数据的上包络线;
在所述用电量数据序列x(t)中获取所有的极小值点,并将所述极小值点拟合形成所述历史用电量数据的下包络线;
将上包络线和下包络线的均值记作m(t),设置如下公式:h(t)=x(t)-m(t),式中,h(t)是历史用电量数据的新序列;
根据预先设置的本征模态函数分量约束条件判断h(t)是否为本征模态函数分量;
当判定h(t)不是本征模态函数分量时,则以h(t)代替x(t),并重复上述步骤,直至h(t)满足所述本征模态函数分量约束条件;
当判定h(t)是本征模态函数分量时,则从用电量数据序列x(t)中扣除所述本征模态函数分量,并重复上述步骤,直至最后剩余部分为单调序列或者常值序列。
进一步的,所述利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果,包括:
预先通过单层LSTM网络构建残余分量预测模型,并对所述残余分量预测模型进行训练和测试,然后保存所述残余分量预测模型;
利用所述残余分量预测模型对所述残余分量进行学习,输出趋势预测结果。
进一步的,所述对所述一系列所述本征模态函数分量进行学习,并输出一系列对应的波动预测结果,包括:
预先通过融合注意力机制的CNN-BiLSTM网络构建本征模态函数分量预测模型,并对所述本征模态函数分量预测模型进行训练和测试,然后保存所述本征模态函数分量预测模型;
利用所述本征模态函数分量预测模型对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果。
进一步的,所述利用所述本征模态函数分量预测模型对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果,包括:
通过一维卷积层对所述一系列本征模态函数分量进行特征提取,输出特征矩阵;
为所述特征矩阵的数据设置池化区域,选取所述池化区域的最大值,以对所述特征矩阵进行降维处理;
根据融合注意力机制的Seq2Seq网络结构内的BiLSTM编码器对降维后的特征矩阵进行编码,并使用融合注意力机制的Seq2Seq网络结构内的解码器对编码输出的序列进行加权平均操作并进行解码,并输出目标序列;
通过门控循环单元对所述目标序列进行特征提取,并改变所述目标序列的长度,并输出特征序列;
根据全连接层对所述特征序列进行预测。
进一步的,所述对所述本征模态函数分量预测模型进行训练和测试包括:
根据所述本征模态函数分量预测模型输出一系列对应的波动预测结果;
通过损失函数计算所述一系列对应的波动预测结果和一系列本征模态函数分量真实值的均方误差,其中,所述损失函数如下:
式中,yi为第i个样本的本征模态函数分量真实值,yi ’为第i个样本的波动预测结果,n为样本个数;
通过计算出的均方误差对所述本征模态函数分量预测模型进行优化。
进一步的,所述对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果,包括:
对所述一系列对应的波动预测结果和所述趋势预测结果进行累加,得到最终的用电量预测结果。
第二方面,本发明实施例还提供了一种电力负荷预测装置,包括:
分解单元,用于获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;
第一学习单元,用于利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果;
第二学习单元,用于利用融合注意力机制的CNN-BiLSTM网络对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果;
重构单元,用于对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的电力负荷预测方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的电力负荷预测方法。
本发明实施例提供了一种电力负荷预测方法、装置、计算机设备及存储介质,所述方法包括:获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果;利用融合注意力机制的CNN-BiLSTM网络对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果;对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果。本发明通过构建预测模型对历史用电量数据进行学习,得到基于历史用电量数据的趋势预测结果和波动预测结果,并将学习得到的预测结果进行重构,得到最终的预测结果,使最终的预测结果准确可靠。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种电力负荷预测方法的流程示意图;
图2为本发明实施例提供的一种电力负荷预测方法的子流程示意图;
图3为本发明实施例提供的一种电力负荷预测方法的另一子流程示意图;
图4为本发明实施例提供的一种电力负荷预测方法的局部网络结构示意图;
图5为本发明实施例提供的一种电力负荷预测方法的网络结构示意图;
图6为本发明实施例提供的一种电力负荷预测方法的预测结果对比示意图;
图7为本发明实施例提供的一种电力负荷预测装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
下面请参阅图1,图1为本发明实施例提供的一种电力负荷预测方法的流程示意图,具体包括:步骤S101~S104。
S101、获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;
S102、利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果;
S103、利用融合注意力机制的CNN-BiLSTM网络对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果;
S104、对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果。
由于电力负荷本身受诸多因素比如日期、天气、气候、市场等因素的影响,这些因素更大大加大了准确进行电力负荷预测的困难性,数据波动较大。并且电力负荷具有高随机性和复杂性特征,利用单一的模型难以做出准确预测,对某些突发(非平稳)数据不敏感。也就是说,电力负荷数据具有非平稳且规律不明显的特征,在任意时间点上,电力负荷数据包含多个波动模式。所以,本实施例中,先对历史用电量数据进行经验模态分解(EMD)来获得一系列本征模态函数分量(一并作为波动时间序列)和残余分量(趋势时间序列),然后通过利用单层LSTM网络(Long Short-TermMemory,长短期记忆网络,一种循环神经网络)对残余分量进行学习,以及利用融合注意力机制的CNN-BiLSTM网络(其中,CNN为卷积神经网络,Convolutional Neural Networks;BiLSTM为双向长短期记忆网络)对一系列本征模态函数分量进行学习,得到基于历史用电量数据的趋势预测结果和一系列对应的波动预测结果,并将趋势预测结果和一系列对应的波动预测结果进行重构,得到最终的预测结果,使最终的预测结果准确可靠。
在一实施例中,如图2所示,步骤S101包括:步骤S201~S206;
S201、在所述历史用电量数据中获取用电量数据序列x(t),并在所述用电量数据序列x(t)中获取所有的极大值点,将所述极大值点拟合形成所述历史用电量数据的上包络线;
S202、在所述用电量数据序列x(t)中获取所有的极小值点,并将所述极小值点拟合形成所述历史用电量数据的下包络线;
S203、将上包络线和下包络线的均值记作m(t),设置如下公式:h(t)=x(t)-m(t),式中,h(t)是历史用电量数据的新序列;
S204、根据预先设置的本征模态函数分量约束条件判断h(t)是否为本征模态函数分量;
S205、当判定h(t)不是本征模态函数分量时,则以h(t)代替x(t),并重复上述步骤,直至h(t)满足所述本征模态函数分量约束条件;
S206、当判定h(t)是本征模态函数分量时,则从用电量数据序列x(t)中扣除所述本征模态函数分量,并重复上述步骤,直至最后剩余部分为单调序列或者常值序列。
本实施例中,通过经验模态分解方法将用电量数据序列x(t)分解为一系列本征模态函数分量(即波动时间序列)和残余分量(即趋势时间序列)的线性叠加,即
式中,h
i(t)表示第i个本征模态函数分量,R表示残余分量,N表示一共N个本征模态函数分量。经验模态分解方法的关键是经验模式分解,它能使复杂信号分解为有限个本征模态函数(Intrinsic ModeFunction,简称IMF),本征模态函数分量有两条约束条件,这两条约束条件具体是:第一条是在整个数据段内,所述本征模态函数分量的极值点的个数和过零点的个数相等,或者所述极值点的个数和所述过零点的个数之间的差值为1;第二条是在任意时刻,由局部极大值点形成的上包络线和由局部极小值点形成的下包络线的平均值为零,即所述上包络线和所述下包络线相对于时间轴局部对称。
另外,在步骤S206中,每得到一阶本征模态函数分量,就从用电量数据序列x(t)中扣除得到的一阶本征模态函数分量,并重复步骤S201~S205,直到用电量数据序列x(t)最后剩余部分就只是单调序列或者常值序列。
在一实施例中,步骤S102包括:预先通过单层LSTM网络构建残余分量预测模型,并对所述残余分量预测模型进行训练和测试,然后保存所述残余分量预测模型;利用所述残余分量预测模型对所述残余分量进行学习,输出趋势预测结果。
本实施例中,通过单层LSTM网络预先构建的残余分量预测模型对残余分量进行学习,残余分量表示的是序列的趋势,因此最后得到基于历史用电量数据的趋势预测结果。而通过单层LSTM网络预先构建的残余分量预测模型的具体步骤为:首先选取样本特征,例如选取月份、日期、小时、天气、温度、节假日等因素作为样本特征,再选取用电量(kwh)作为预测目标,并将残余分量分为训练集和测试集,并将训练集和测试集按列进行归一化处理;然后通过单层LSTM网络网络构建残余分量预测模型;最后通过训练集对残余分量预测模型进行训练并保存。
在一实施例中,步骤S103包括:预先通过融合注意力机制的CNN-BiLSTM网络构建本征模态函数分量预测模型,并对所述本征模态函数分量预测模型进行训练和测试,然后保存所述本征模态函数分量预测模型;利用所述本征模态函数分量预测模型对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果。
本实施例中,通过利用融合注意力机制的CNN-BiLSTM网络预先构建的本征模态函数分量预测模型对一系列本征模态函数分量进行学习,所述一系列本征模态函数分量表示的是序列的波动,因此最后得到基于历史用电量数据的波动预测结果。本实施例先选取样本特征,例如选取月份、日期、小时、天气、温度、节假日等因素作为样本特征,再选取用电量(kwh)作为预测目标,并将本征模态函数分量分为训练集和测试集,并将训练集和测试集按列进行归一化处理。需要注意的是,在将一系列本征模态函数分量分为训练集和测试集后,为了匹配后续构建的本征模态函数分量预测模型的输入条件,需要对训练集和测试集进行滚动切分。例如当时间步为7时,则第一组训练集或者测试集为样本1到样本7,第二组训练集或者测试集为样本2到样本8,以此类推。将训练集和测试集预处理为(k,m,n),其中,k为划分后的组数,m为每一组包含的样本个数(即时间步),n为某时刻样本特征个数。
在一实施例中,如图3所示,所述步骤S103包括:步骤S301~S305;
S301、通过一维卷积层对所述一系列本征模态函数分量进行特征提取,输出特征矩阵;
本步骤中,进行特征提取的具体步骤为:获取所述一系列本征模态函数分量(即时间序列数据)的数据维度m和卷积核个数k;计算特征矩阵的行数,所述行数h=m-k+1;将卷积核遍历输入所述一系列本征模态函数分量进行卷积计算,得到列向量;将每一次卷积计算得到的列向量进行拼接,最终得到特征矩阵。
S302、为所述特征矩阵的数据设置池化区域,选取所述池化区域的最大值,以对所述特征矩阵进行降维处理;
本步骤通过最大池化层(Maxpooling)的方式对特征矩阵进行降维处理,防止特征矩阵过拟合。
优选的,在池化区域后设置一Dropout层(可以有效的缓解过拟合的发生,在一定程度上达到正则化的效果),Dropout层以一定概率关闭神经元。在前向传播的时候,让某个神经元的激活值以一定的概率停止工作(节点值为0),训练更新剩余神经元的参数,恢复被关闭的神经元,再次进行前向传播,重复这一过程,这样可以使模型泛化性更强,不会过于依赖某些局部特征,减少隐层节点间的相互作用。
S303、根据融合注意力机制的Seq2Seq网络结构内的BiLSTM编码器对降维后的特征矩阵进行编码,并使用融合注意力机制的Seq2Seq网络结构内的解码器对编码输出的序列进行加权平均操作并进行解码,并输出目标序列;
本步骤中,Seq2Seq网络结构由编码器和解码器组成,其中,编码器负责单步执行输入时间步骤,并将整个序列编码为一个固定长度的向量;解码器则负责根据编码器输出的向量生成指定的序列。本实施例中,编码器采用双向长短期记忆(BiLSTM)结构,输入的序列向前传递和向后传递分别是两个长短期记忆(LSTM),而且这两个都连接着一个输出层,将信息拼接在一起。双向长短期记忆结构提供给输出层输入序列中每一个点的完整的过去和未来的上下文信息,为网络提供了额外的前后联系,并且能够更快,更充分的学习问题。在编码操作过程中,每个前向LSTML单元都会输出一个向量,分别为hL1、hL2、hL3,…,hLi。每个反向LSTMR单元会输出一个向量,分别为hR1、hR2、hR3,…,hRi。将hL1和hRi拼接成为向量h1,hL2和hRi-1拼接成为向量h2,以此类推。
如图4所示,Encoder(即编码器)的中间结果为h1、h2、h3、h4,对Decoder(即解码器)第一个LSTM的输出分别与h1、h2、h3、h4计算相似度,得到α0 1、α0 2、α0 3、α0 4,然后使用Softmax函数(即归一化指数函数)对相似度进行归一化,并将归一化后的四个系数与h1、h2、h3、h4相乘求和,最后将得到的向量作为Decoder(即解码器)中的下一个LSTM单元的输入,参与预测。另外,在上述过程中,通过注意力机制连接编码器和解码器,使解码器聚焦于编码器输出的某一部分。
S304、通过门控循环单元对所述目标序列进行特征提取,并改变所述目标序列的长度,并输出特征序列;
本步骤中,当Seq2Seq网络结构输出的目标序列输入至门控循环单元(GRU,循环神经网络中的一种门控机制)后,会依次通过与样本数量相同的GRU单元计算,并输出特征序列。
S305、根据全连接层对所述特征序列进行预测。
本实施例中,采用融合注意力机制的CNN-BiLSTM方法,即由卷积神经网络、基于注意力机制的Seq2Seq网络结构、门控循环单元(GRU)以及全连接层,实现对本征模态函数分量的预测。Seq2Seq网络结构由编码器和融合注意力机制的解码器构成,由于时间序列常用的是循环神经网络(RNN)、长短期记忆(LSTM)结构,又由于LSTM无法编码从后到前的信息,捕捉不到某些节假日、重大事件或某些周期性用电量突变的特征,因此本实施例中,对于编码器采用双向长短期记忆(BiLSTM)结构;解码器则负责根据编码器输出的向量生成指定的序列。由于解码层输出的矩阵维度是三维,无法和全连接层进行匹配,因此本发明实施例通过加上一层门控循环单元(GRU)来转化矩阵维度,同时进一步提取特征,改变目标序列长度,减轻全连接层的负担。GRU是LSTM的变体,神经元内部将输入门和遗忘门进行融合,参数相对少,更容易收敛,减少了计算。
在一实施例中,所述对所述本征模态函数分量预测模型进行训练和测试包括:
根据所述本征模态函数分量预测模型输出一系列对应的波动预测结果;
通过损失函数计算所述一系列对应的波动预测结果和一系列本征模态函数分量真实值的均方误差,其中,所述损失函数如下:
式中,yi为第i个样本的本征模态函数分量真实值,yi’为第i个样本的波动预测结果;
通过计算出的均方误差对所述本征模态函数分量预测模型进行优化。
本实施例中,通过本征模态函数分量训练集对构建的本征模态函数分量预测模型进行训练,并根据损失函数计算出的均方误差对本征模态函数分量预测模型进行优化。在一具体实施例中,选用自适应学习率的Adam优化算法对本征模态函数分量预测模型进行优化,加快收敛速度。Adam优化算法是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据的迭代更新神经网络权重。
在一实施例中,步骤S104包括:对所述一系列对应的波动预测结果和所述趋势预测结果进行累加,得到最终的用电量预测结果。
本实施例中,将由残余分量预测模型输出的趋势预测结果和由本征模态函数分量预测模型输出的一系列对应的波动预测结果累加,得到最终的用电量预测值,然后根据MAPE指标对最终的用电量预测值进行评价,MAPE指标评价公式如下:
式中,yi为历史用电量数据中第i个样本的真实值,yi ’为第i个样本最终的用电量预测值,n为样本个数。
请参见图5,图5为本发明实施例提供的网络结构示意图,具体包括经验模态分解过程、残余分量预测模型构建过程、本征模态函数分量预测模型构建过程以及趋势预测结果和波动预测结果的重构。在图5中,IMF分量表示一系列本征模态函数分量,R分量表示残余分量。
本发明实施例基于深度学习算法,结合某实际地区电力负荷数据研究了短期电力负荷预测的相关问题,通过训练神经网络,使其学习到了数据特征,提高了网络对突发(非平稳)数据的敏感度,可对电力负荷数据进行短期预测。
在一具体应用场景中,选取某一实际地区历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;
利用单层LSTM网络对残余分量进行学习,输出趋势预测结果;
利用融合注意力机制的CNN-BiLSTM网络对一系列本征模态函数分量进行学习,将用于训练本征模态函数分量预测模型的训练集处理为(8640,12,29),即该训练集包括8640组数据,同时该训练集的时间序列按照每12个时间步为一组进行滚动切分,每个时间点包括29维特征(例如月份、日期、天气、温度和节假日等)。将大小为(12,29)的数据输入预先构建的本征模态函数分量预测模型中,通过卷积核大小(k)为4,个数为32的卷积层后,按照公式:行数h=m-k+1,得到特征矩阵的行数为9,则输出特征矩阵(9,32);进入池化区域为3的池化层将特征矩阵降维为(3,32),然后再通过一层卷积核大小3,个数为64的卷积层,输出卷积部分最终的特征矩阵(1,64);根据融合注意力机制的Seq2Seq网络结构内的BiLSTM编码器对降维后的特征矩阵(即特征矩阵(1,64))进行编码,并使用融合注意力机制的Seq2Seq网络结构内的解码器对编码输出的序列进行加权平均操作并进行解码,并输出目标序列,其中,Sep2Sep网络结构内的编码器的隐藏神经元为128,因此在经过双向长短期记忆网络编码后,特征矩阵的大小变为(1,256),再经过解码器的解码操作后,特征矩阵的大小变为(1,64);通过门控循环单元对特征矩阵进行特征提取以及序列长度的改变后,特征矩阵的大小变为(1,32),即输出特征序列的长度为32的向量;然后通过全连接层进行预测,并输出一系列对应的波动预测结果。
最后,对本应用场景中得到的一系列对应的波动预测结果和趋势预测结果进行累加,得到如图6所示的最终用电量预测结果。由图6可知,根据本发明实施例提供电力负荷预测方法得到的预测曲线高度逼近真实曲线,预测误差可控制在3.7%以内,本发明实施例提供的电力负荷预测方法准确可靠。
请参阅图7,图7为本发明实施例提供的一种电力负荷预测装置700的示意性框图,所述电力负荷预测装置700包括:
分解单元701,用于获取历史用电量数据,并对所述历史用电量数据进行经验模态分解,得到一系列本征模态函数分量和残余分量;
第一学习单元702,用于利用单层LSTM网络对所述残余分量进行学习,并输出趋势预测结果;
第二学习单元703,用于利用融合注意力机制的CNN-BiLSTM网络对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果;
重构单元704,用于对所述一系列对应的波动预测结果和所述趋势预测结果进行重构,得到最终的用电量预测结果。
在一实施例中,所述分解单元701包括:
第一获取单元,用于在所述历史用电量数据中获取用电量数据序列x(t),并在所述用电量数据序列x(t)中获取所有的极大值点,将所述极大值点拟合形成所述历史用电量数据的上包络线;
第二获取单元,用于在所述用电量数据序列x(t)中获取所有的极小值点,并将所述极小值点拟合形成所述历史用电量数据的下包络线;
均值单元,用于将上包络线和下包络线的均值记作m(t),设置如下公式:h(t)=x(t)-m(t),式中,h(t)是历史用电量数据的新序列;
判断单元,用于根据预先设置的本征模态函数分量约束条件判断h(t)是否为本征模态函数分量;
第一判定单元,用于当判定h(t)不是本征模态函数分量时,则以h(t)代替x(t),并重复上述步骤,直至h(t)满足所述本征模态函数分量约束条件;
第二判定单元,用于当判定h(t)是本征模态函数分量时,则从用电量数据序列x(t)中扣除所述本征模态函数分量,并重复上述步骤,直至最后剩余部分为单调序列或者常值序列。
在一实施例中,所述第一学习单元702包括:
第一预测模型单元,用于预先通过单层LSTM网络构建残余分量预测模型,并对所述残余分量预测模型进行训练和测试,然后保存所述残余分量预测模型;
第一输出单元,用于利用所述残余分量预测模型对所述残余分量进行学习,输出趋势预测结果。
在一实施例中,所述第二学习单元703包括:
第二预测模型单元,用于预先通过融合注意力机制的CNN-BiLSTM网络构建本征模态函数分量预测模型,并对所述本征模态函数分量预测模型进行训练和测试,然后保存所述本征模态函数分量预测模型;
第二输出单元,用于利用所述本征模态函数分量预测模型对所述一系列本征模态函数分量进行学习,并输出一系列对应的波动预测结果。
在一实施例中,所述第二预测模型单元包括:
卷积单元,用于通过一维卷积层对所述一系列本征模态函数分量进行特征提取,输出特征矩阵;
池化单元,用于为所述特征矩阵的数据设置池化区域,选取所述池化区域的最大值,以对所述特征矩阵进行降维处理;
编码及解码单元,用于根据融合注意力机制的Seq2Seq网络结构内的BiLSTM编码器对降维后的特征矩阵进行编码,并使用融合注意力机制的Seq2Seq网络结构内的解码器对编码输出的序列进行加权平均操作并进行解码,并输出目标序列;
门控循环单元,用于通过门控循环单元对所述目标序列进行特征提取,并改变所述目标序列的长度,并输出特征序列;
全连接层单元,用于根据全连接层对所述特征序列进行预测。
在一实施例中,所述第二预测模型单元还包括:
第三输出单元,用于根据所述本征模态函数分量预测模型输出一系列对应的波动预测结果;
均方误差单元,用于通过损失函数计算所述一系列对应的波动预测结果和一系列本征模态函数分量真实值的均方误差,其中,所述损失函数如下:
式中,yi为第i个样本的本征模态函数分量真实值,yi’为第i个样本的波动预测结果,n为样本个数;
优化单元,用于通过计算出的均方误差对所述本征模态函数分量预测模型进行优化。
在一实施例中,所述重构单元704包括:
累加单元,用于对所述一系列对应的波动预测结果和所述趋势预测结果进行累加,得到最终的用电量预测结果。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本发明实施例还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供了一种计算机设备,可以包括存储器和处理器,存储器中存有计算机程序,处理器调用存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。