一种电力负荷预测方法、系统、存储介质及设备转让专利

申请号 : CN202310636027.9

文献号 : CN116365519B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 姚素刚史善东马永明邱峰朱伟冯涛许鹏李玉宝屈然蒋刚刚

申请人 : 国网山东省电力公司微山县供电公司国网山东省电力公司济宁供电公司

摘要 :

本发明提出了一种电力负荷预测方法、系统、存储介质及设备,涉及电力负荷预测技术领域,所述方法包括以下步骤:获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;对异常数据进行修正,得到修正好的数据;通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测;本发明提供的电力负荷预测方法,对获取的数据进行了预处理和修正,确保了负荷数据的准确性,在预测模型的训练阶段,简化了特征值的提取过程,提高了训练模型输入数据的准确性,进而提高了电力负荷预测精度。

权利要求 :

1.一种电力负荷预测方法,其特征在于,包括以下步骤:获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;其中,数据检测过程包括:首先对待检测数据进行局部异常因子检测,将得到的结果作为孤立树的根节点;然后采用孤立森林算法对数据进行检测,并结合根节点建立树高;再确定数据分枝点,根据分枝结果进行数据分支;最后统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置;

对异常数据进行修正,得到修正好的样本数据;

通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;

将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测;

修正过程采用以下公式进行:

其中, 为被检曲线,被检曲线上的p点到q点为异常数据, 为特征曲线, 为修正曲线;

深度置信网络模型训练过程包括:

在第一层深度置信网络模型训练完成以后,将得到的模型参数进行保存,方便后续训练使用,将得到的训练结果作为后续深度置信网络模型的输入继续训练,依次传递,直到最终训练完成,将得到的模型参数保存为后续预测做准备;

采用电力负荷预测模型对未来的电力负荷进行预测过程中,对得到的负荷预测结果进行误差分析,然后采用BP神经网络进行微调;

通过粒子群算法优化所述电力负荷预测模型中深度置信网络,得到优化后的预测模型,包括:所述粒子群算法中惯性权重ω的计算式为:

其中, 为粒子群算法中惯性权重, 为最大惯性权重, 为最小惯性权重,为当前迭代次数, 为总的迭代次数;

所述粒子群算法在优化深度置信网络过程中,更新后的网络权重值的计算式为:其中, 为更新后的网络权重值; 为网络初始权重值, 为更新后的网络权重速度值; 公式为:其中, 为网络初始速度值, 为初始位置, 为单个粒子的最优位置,为整个粒子总体的最优位置, 和 均为学习因子,M为伸缩因子,M的计算式为:其中, 大于4, 为大于2的常数, 为大于2的常数。

2.如权利要求1所述的电力负荷预测方法,其特征在于,确定数据分枝点的过程包括:将每一棵孤立树局部异常因子检测结果作为孤立森林的分枝判别标准,如果该结果大于等于1,则会初步认定为具有隐含异常属性,划分到左枝;如果小于1,则会认为是正常值,会划分到右枝。

3.如权利要求2所述的电力负荷预测方法,其特征在于,数据分枝过程包括:将数据分为两个子空间,在此基础上重复执行建立孤立树及确定数据分枝点,不断构造新的叶子节点,直到每个叶子节点中只有一个数据或者达到预先设置的树高阈值时停止数据分支。

4.如权利要求1所述的电力负荷预测方法,其特征在于,通过深度置信网络构建的电力负荷预测模型的结构为三个受限玻尔兹曼机和一个BP调整网络堆叠而成。

5.一种电力负荷预测系统,其特征在于,包括:

数据处理模块,被配置为:获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;其中,数据检测过程包括:首先对待检测数据进行局部异常因子检测,将得到的结果作为孤立树的根节点;然后采用孤立森林算法对数据进行检测,并结合根节点建立树高;再确定数据分枝点,根据分枝结果进行数据分支;最后统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置;

数据修正模块:对异常数据进行修正,得到修正好的数据;

模型构建模块:通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;

电力负荷预测模块:将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测;

修正过程采用以下公式进行:

其中, 为被检曲线,被检曲线上的p点到q点为异常数据, 为特征曲线, 为修正曲线;

深度置信网络模型训练过程包括:

在第一层深度置信网络模型训练完成以后,将得到的模型参数进行保存,方便后续训练使用,将得到的训练结果作为后续深度置信网络模型的输入继续训练,依次传递,直到最终训练完成,将得到的模型参数保存为后续预测做准备;

采用电力负荷预测模型对未来的电力负荷进行预测过程中,对得到的负荷预测结果进行误差分析,然后采用BP神经网络进行微调;

通过粒子群算法优化所述电力负荷预测模型中深度置信网络,得到优化后的预测模型,包括:所述粒子群算法中惯性权重ω的计算式为:

其中, 为粒子群算法中惯性权重, 为最大惯性权重, 为最小惯性权重,为当前迭代次数, 为总的迭代次数;

所述粒子群算法在优化深度置信网络过程中,更新后的网络权重值的计算式为:其中, 为更新后的网络权重值; 为网络初始权重值, 为更新后的网络权重速度值; 公式为:其中, 为网络初始速度值, 为初始位置, 为单个粒子的最优位置,为整个粒子总体的最优位置, 和 均为学习因子,M为伸缩因子,M的计算式为:其中, 大于4, 为大于2的常数, 为大于2的常数。

6.一种计算机可读存储介质,用于存储计算机指令,其特征在于,所述计算机指令被处理器执行时,完成如权利要求 1‑4 任一项所述的电力负荷预测方法。

7.一种电子设备,其特征在于,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成如权利要求 1‑4 任一项所述的电力负荷预测方法。

说明书 :

一种电力负荷预测方法、系统、存储介质及设备

技术领域

[0001] 本发明涉及电力负荷预测技术领域,具体涉及一种电力负荷预测方法、系统、存储介质及设备。

背景技术

[0002] 本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
[0003] 电力负荷预测其实就是对某一区域未来的用电量进行估计相关部门会根据最终的预测结果做出相应的调整,从而减少不必要地人力物力消耗。电力负荷预测是进行电力系统季度规划的基础,它可以保证电网的正常运行,能够减少发电费用支出,增加社会经济效益。研究表明,电力负荷预测准确率每增加1%,就能带来数百万的经济效益,因此电力负荷预测在经济生活等各个领域都具有重要意义。
[0004] 电力负荷预测过程主要分为两阶段,第一阶段是对待检测数据预处理,第二阶段是建立良好的预测模型。现有技术中对电力负荷预测方法的改进通常集中在对预测模型的改进,而对于数据预处理过程通常只判断了数据是否缺失,但是获取的历史数据通常还存在数据异常值、噪声数据以及无关数据等影响实际负荷预测精度的错误数据存在。一般来说,如果负荷数据中具有较多缺失值或者存在噪声和异常数据,那么在预测模型的训练阶段,特征值的提取工作就会变的困难,导致训练模型输入数据不准确,进而使得预测精度降低。根据相关方面的统计,数据预处理的工作量大约占整个数据挖掘工作的80%。

发明内容

[0005] 为克服上述现有技术的不足,本发明提供了一种电力负荷预测方法、系统、存储介质及设备,通过对获取的历史数据进行检测和修正,提高了电力负荷预测的准确性。
[0006] 为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:
[0007] 第一方面,提供了一种电力负荷预测方法,包括以下步骤:
[0008] 获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;其中,数据检测过程包括:首先对待检测数据进行局部异常因子检测,将得到的结果作为孤立树的根节点;然后采用孤立森林算法对数据进行检测,并结合根节点建立树高;再确定数据分枝点,根据分枝结果进行数据分支;最后统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置;
[0009] 对异常数据进行修正,得到修正好的样本数据;
[0010] 通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;
[0011] 将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测。
[0012] 在本发明的一些实施方式中,确定数据分枝点的过程包括:将每一棵孤立树局部异常因子检测结果作为孤立森林的分枝判别标准,如果该结果大于等于1,则会初步认定为具有隐含异常属性,划分到左枝;如果小于1,则会认为是正常值,会划分到右枝。
[0013] 在本发明的一些实施方式中,数据分枝过程包括:将数据分为两个子空间,在此基础上重复执行建立孤立树及确定数据分枝点,不断构造新的叶子节点,直到每个叶子节点中只有一个数据或者达到预先设置的树高阈值时停止数据分支。
[0014] 在本发明的一些实施方式中,修正过程采用以下公式进行:
[0015]
[0016] 其中, 为被检曲线,被检曲线上的p点到q点为异常数据, 为特征曲线, 为修正曲线。
[0017] 在本发明的一些实施方式中,深度置信网络模型训练过程包括:
[0018] 在第一层深度置信网络模型训练完成以后,将得到的模型参数进行保存,方便后续训练使用,将得到的训练结果作为后续深度置信网络模型的输入继续训练,依次传递,直到最终训练完成,将得到的模型参数保存为后续预测做准备。
[0019] 在本发明的一些实施方式中,采用电力负荷预测模型对未来的电力负荷进行预测过程中,对得到的负荷预测结果进行误差分析,然后采用BP神经网络进行微调。
[0020] 在本发明的一些实施方式中,所述深度置信网络模型的结构为三个受限玻尔兹曼机和一个BP调整网络堆叠而成。
[0021] 第二方面,提供一种电力负荷预测系统,包括:
[0022] 数据处理模块,被配置为:获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;其中,数据检测过程包括:首先对待检测数据进行局部异常因子检测,将得到的结果作为孤立树的根节点;然后采用孤立森林算法对数据进行检测,并结合根节点建立树高;再确定数据分枝点,根据分枝结果进行数据分支;最后统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置;
[0023] 数据修正模块:对异常数据进行修正,得到修正好的数据;
[0024] 模型构建模块:通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;
[0025] 电力负荷预测模块:将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测。
[0026] 第三方面,提供一种计算机可读存储介质,用于存储计算机指令,其特征在于,所述计算机指令被处理器执行时,完成第一方面所述的电力负荷预测方法。
[0027] 第四方面,提供一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成第一方面所述的电力负荷预测方法。
[0028] 以上一个或多个技术方案存在以下有益效果:
[0029] 本发明提供的电力负荷预测方法,对获取的数据进行了预处理,对异常数据进行了修正,确保了负荷数据的准确性,在预测模型的训练阶段,简化了特征值的提取过程,提高了训练模型输入数据的准确性,进而提高了电力负荷预测精度。
[0030] 本发明通过将 LOF 与孤立森林算法有机结合,将LOF作为孤立树的树根节点,在此基础上进行建树,并将孤立森林算法中的孤立树分枝判别操作采用LOF算法进行代替,将每棵树的局部异常因子结果作为评判树高分枝的标准,提高算法对局部异常数据的检测能力。解决了单一算法中的局部异常检测能力不足的问题,并且避免了LOF算法人为设定K值参数的敏感性等问题,该模型可以处理多种复杂的异常情况,算法的检测精度明显提高,适用范围变得更为广泛。
[0031] 本发明通过将检测的异常数据采用公式进行修正,提高了修正结果的准确性和修正速度。
[0032] 本发明通过粒子群算法优化所述电力负荷预测模型中深度置信网络的初始权重,得到优化后的预测模型;将所述历史数据按照预设比例分配后训练集和测试集代入优化后的预测模型,得到具有最优解的预测模型,通过具有最优解的预测模型对待电力负荷进行预测。
[0033] 本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0034] 构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
[0035] 图1为本发明实施例一的电力负荷预测方法的流程图;
[0036] 图2为本发明实施例一的采用局部异常因子‑孤立森林算法进行数据检测的流程图。

具体实施方式

[0037] 应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
[0038] 需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。
[0039] 在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0040] 实施例一
[0041] 本实施例公开了一种电力负荷预测方法,如图1所示,包括以下步骤:
[0042] 步骤一、获取电力负荷历史数据,采用局部异常因子(LOF)‑孤立森林算法(iForest)进行数据检测,确定异常数据;
[0043] 电力负荷预测的类型通常包括超短期电力负荷预测、短期电力负荷预测、中期电力负荷预测和长期电力负荷预测;根据所要预测的了类型从历史数据库中获取数据,数据主要包括历史负荷数据、相关的气象因素,气象因素主要包括空气湿度、温度、降水量、气压等。
[0044] 对获取的数据进行检测,数据检测过程如图2所示,包括:
[0045] (1)判断数据类型。当数据维度较低时,直接对数据进行异常值检测;当数据维度较高时,对数据进行分区处理,减小算法的计算时间;
[0046] (2)参数设置。确定孤立森林算法中的最大树高、孤立森林数以及数据样本数;
[0047] (3)设置根节点。对待检测数据进行LOF 检测,将得到的结果作为孤立树的根节点;
[0048] (4)建立孤立树以及孤立森林。在步骤二、三的基础之上,采用孤立森林算法对数据进行检测,并结合根节点建立树高;
[0049] (5)确定数据分枝点。将每一棵孤立树的LOF结果作为孤立森林的分枝判别标准,如果该结果大于等于1,则会初步认定为具有隐含异常属性,划分到左枝;如果小于1,则会认为是正常值,会划分到右枝;
[0050] (6)数据分支。根据步骤五的分支结果进行数据分支,此分枝会将数据分为两个子空间,在此基础上重复执行步骤四、五,不断构造新的叶子节点,直到每个叶子节点中只有一个数据(单个数据无法再继续切割)或者达到预先设置的树高阈值时停止数据分支;
[0051] (7)统计结果。统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置。
[0052] 由于LOF算法对参数的依赖性较强,尤其是对于参数K,当K选取不同数值时,其相应的检测结果也不相同,使原本检测为异常点的数据不再被认定为异常点,导致检测结果不稳定;并且对于一些波动较大的数据集,不能很好的提取出其中的异常点位置坐标,导致检测精度不能满足实验要求。
[0053] 而孤立森林算法也存在以下缺陷:1、具有局部异常的数据:孤立森林算法所使用的异常评分是针对全局数据的,对局部异常数据分布不太敏感,因此在检测某些具有局部异常的数据集时效果相对较差;2、具有低相关维度的异常数据。在高维数据中,孤立森林只能随机选取数据中的一个维度来创建孤立树,因此当建树完成以后,仍会有大量的维度未得到使用。当相关维度较低时,会导致每一个子集所包含的信息不足以此作为标准来对相关维度的数据进行异常值检测,从而使得算法的可靠性降低。3、存在平行于轴集群之间的全局异常。由于孤立森林算法是对异常数据进行分割,在一些特殊情况下会使得分割线上会存在被检测的数据,使得轴平行的细分掩盖了这些异常,这些点往往很难判断是否为异常,从而导致最终的异常检测结果不准确。4、具有大量模式的多模态数据集中的异常。当数据中具有大量混合模型组成的多模态数据集时,也会导致最终的检测精度不高。
[0054] 通过将该算法将 LOF 与孤立森林算法有机结合,将LOF作为孤立树的树根节点,在此基础上进行建树,并将孤立森林算法中的孤立树分枝判别操作采用LOF算法进行代替,将每棵树的局部异常因子结果作为评判树高分枝的标准,提高算法对局部异常数据的检测能力。解决了单一算法中的局部异常检测能力不足的问题,并且避免了LOF算法人为设定K 值参数的敏感性等问题,该模型可以处理多种复杂的异常情况,算法的检测精度明显提高,适用范围变得更为广泛。
[0055] 步骤二、对异常数据进行修正,得到修正好的数据;
[0056] 具体的,修正过程采用以下公式进行:
[0057]
[0058] 其中, 为被检曲线,被检曲线上的p点到q点为异常数据, 为特征曲线, 为修正曲线。
[0059] 通过公式对异常数据进行修正,数据修正效果好,且提高了修正速度。
[0060] 步骤三、通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;
[0061] 具体的,首先设置深度置信网络模型(DBN)的结构,建立电力负荷预测模型,在本实施例中,选取的是具有3层隐含结构的DBN作为回归预测模型,是由 3 个受限玻尔兹曼机(RBM)和一个BP调整网络堆叠而成的,RBM实现了无监督网络学习,BP属于有监督的网络学习。
[0062] 所述通过粒子群算法优化所述电力负荷预测模型中深度置信网络,得到优化后的预测模型,包括:
[0063] 所述粒子群算法中惯性权重ω的计算式为:
[0064]
[0065] 其中, 为粒子群算法中惯性权重, 为最大惯性权重, 为最小惯性权重, 为当前迭代次数, 为总的迭代次数;
[0066] 所述粒子群算法在优化深度置信网络过程中,更新后的网络权重值的计算式为:
[0067]
[0068] 其中, 为更新后的网络权重值; 为网络初始权重值, 为更新后的网络权重速度值; 公式为:
[0069]
[0070] 其中, 为网络初始速度值, 为初始位置, 为单个粒子的最优位置,为整个粒子总体的最优位置, 和 均为学习因子,M为伸缩因子,M的计算式为:
[0071]
[0072]
[0073] 其中,大于4, 为大于2的常数, 为大于2的常数。
[0074] 步骤四、将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测。
[0075] 所述历史数据按照预设比例分配后训练集和测试集代入优化后的预测模型,得到具有最优解的预测模型,包括:将所述历史数据中前80%~90%的历史数据作为训练集,后10%~20%的历史数据作为测试集。
[0076] 训练过程包括:
[0077] 在第一层深度置信网络模型训练完成以后,将得到的模型参数进行保存,方便后续训练使用,将得到的训练结果作为后续深度置信网络模型的输入继续训练,依次传递,直到最终训练完成,将得到的模型参数保存为后续预测做准备。
[0078] 利用所述电力负荷预测模型对未来的电力负荷进行预测,在采用电力负荷预测模型对未来的电力负荷进行预测过程中,对得到的负荷预测结果进行误差分析,然后采用BP神经网络进行微调,由于在数据预处理阶段,每一层的参数在当前层的效果都是最好的,而当应用到整个网络模型中时,可能得到的效果并不理想,因此需要对模型进行反向微调,以达到更好的预测效果。
[0079] 实施例二
[0080] 本实施例的目的是提供一种计算机装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
[0081] 实施例三
[0082] 本实施例的目的是提供一种计算机可读存储介质。
[0083] 一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时执行上述方法的步骤。
[0084] 实施例四
[0085] 本实施例的目的是提供一种电力负荷预测系统,包括:
[0086] 数据处理模块,被配置为:获取电力负荷历史数据,采用局部异常因子‑孤立森林算法进行数据检测,确定异常数据;其中,数据检测过程包括:首先对待检测数据进行局部异常因子检测,将得到的结果作为孤立树的根节点;然后采用孤立森林算法对数据进行检测,并结合根节点建立树高;再确定数据分枝点,根据分枝结果进行数据分支;最后统计每棵孤立树的树高状态,根据异常判断标准确定其是否为异常值,确定异常点位置;
[0087] 数据修正模块:对异常数据进行修正,得到修正好的数据;
[0088] 模型构建模块:通过深度置信网络构建电力负荷预测模型,并利用粒子群算法优化电力负荷预测模型;
[0089] 电力负荷预测模块:将修正好的样本数据分成训练集和测试集输入优化后的电力负荷预测模型进行训练和测试,用于电力负荷预测。
[0090] 以上实施例二、三和四的装置中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本发明中的任一方法。
[0091] 本领域技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本发明不限制于任何特定的硬件和软件的结合。
[0092] 上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。