一种基于社会信息计算的地区中长期用电量预测方法与流程

文档序号:23982215发布日期:2021-02-20 10:41阅读:81来源:国知局
一种基于社会信息计算的地区中长期用电量预测方法与流程

[0001]
本发明属于负荷预测领域,特别涉及一种基于社会信息计算的地区中长期用电量预测方法。


背景技术:

[0002]
近年来,由于世界经济长周期滞缓压力,以及我国正处在经济结构与发展方式的转型期,中国经济发展步入新常态。一方面,过去的大量高耗能高污染的产业面临转型升级,工业比重下降,服务业比重上升,用电增速放缓,峰谷差逐渐加大,系统调峰需求不断增加,准确预测用电需求将长期面临挑战。另一方面,经济结构的持续变化对用电市场的预测带来不确定因素。宏观经济集合了大量微观经济活动,复杂度极高,具有外界环境不确定性、运行趋势难以预测性。而电力需求和经济发展关系密切,电力系统作为宏观经济系统中的子系统,其发展取决于整体经济环境,同时,电力供应情况也会对经济发展产生影响。
[0003]
然而目前我国的经济统计活动绝大多数还采用传统的经济统计方法,统计收集的经济信息存在一定的局限性,不能够服务于经济管理活动的整体,或者造成一些数据统计工作的重复。同时,这些统计数据信息存在信息量大、组成复杂,并且带有很强的随机性、部分数据信息不完整等主要特点。针对这些现状,传统的统计方法已很难保证将当前复杂繁多的数据准确的统计出来。
[0004]
数据挖掘技术是针对现代数据管理活动中存在的数量基数大、构成复杂和数据缺失现象严重等客观问题而研发的一种高效的数据深度加工技术,其在经济统计中的应用能够更好地满足经济统计的需求。与此同时,社会计算的提出和人工智能技术的兴起,为在大数据时代更好地利用经济数据,挖掘更多的宏观经济数据资源,实现计算机实时在线数据收集提供了理论和技术支持。
[0005]
建立基于社会计算和人工智能技术的大数据经济分析模型和电网用电市场模型,为与经济发展密切相关的电力行业投资规划、用电市场预测做出指导建议。对于分析华中地区社会经济结构变化下对用电市场的影响,挖掘电力消费变化的基本规律,使电力供应同经济发展相适应,具有重要的理论指导性和现实意义。因此本发明结合大数据技术挖掘宏观经济数据资源和政策信息,提供了一种基于社会计算和深度神经网络的中长期负荷预测电力社会经济模型。


技术实现要素:

[0006]
针对背景技术存在的问题,提供了一种基于社会信息计算的地区中长期用电量预测方法,其特征在于,包括以下步骤:
[0007]
步骤1:利用网络爬虫技术从多个网站上爬取月度社会经济数据、月度气象数据以及月度负荷数据;
[0008]
步骤2:将社会经济数据、月度气象数据、月度负荷数据分别依次通过缺失值填补预处理、数据归一化预处理,得到预处理后社会经济数据、预处理后月度气象数据、预处理
后月度负荷数据;
[0009]
步骤3:通过多个受限玻尔兹曼机构建深度置信网络,构建深度置信网络损失函数模型,将预处理后社会经济数据、预处理后月度气象数据作为深度置信网络输入数据,通过对比散度算法依次训练每个受限玻尔兹曼机的网络参数,将预处理后月度负荷数据作为真实值,进一步以深度置信网络损失函数模型最小化为优化目标,对受限玻尔兹曼机的网络参数进一步微调训练,得到训练后深度置信网络用于月度负荷预测;
[0010]
作为优选,步骤1所述月度社会经济数据为:
[0011]
e_item
x,s,t
(x=1,2,...p;s=1,2,...q;t=1,2,...,12y)
[0012]
其中,e_item
x,s,t
为第t个月份中第s个地区中第x个经济指标,x为经济指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0013]
步骤1所述月度气象数据为:
[0014]
c_item
k,s,t
(k=1,2,...p;s=1,2,...q;t=1,2,...,12y)
[0015]
其中,c_item
k,s,t
为第t个月份中第s个地区中第k个经济指标,k为气象指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0016]
步骤1所述月度负荷数据为:
[0017]
load
s,t
(s=1,2,...q;t=1,2,...,12y)
[0018]
其中,load
s,t
为第t个月份中第s个地区预处理后负荷,s为地区编号,t为时间,y为年份,q为省份的数量,12y为月份的数量;
[0019]
作为优选,步骤2所述通过缺失值填补预处理为:采用分段三次hermit插值方法对缺失数据进行填补预处理;
[0020]
步骤2所述数据归一化预处理为:通过最小最大归一化方法进行归一化处理;
[0021]
步骤2所述预处理后社会经济数据为:
[0022][0023]
其中,为第t个月份中第s个地区中第x个预处理后经济指标,x 为预处理后经济指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0024]
步骤2所述预处理后月度气象数据为:
[0025][0026]
其中,为第t个月份中第s个地区中第k个预处理后经济指标,k 为预处理后气象指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0027]
步骤2所述预处理后月度负荷数据为:
[0028][0029]
其中,为第t个月份中第s个地区月度预处理后负荷,s为地区编号, t为时间,y为年份,q为省份的数量,12y为月份的数量;
[0030]
作为优选,步骤3所述通过多个受限玻尔兹曼机构建深度置信网络为:
[0031]
通过第一受限玻尔兹曼机、第二受限玻尔兹曼机、...、第k受限玻尔兹曼机依次堆叠构建深度置信网络;
[0032]
所述受限玻尔兹曼机包括:可视层、隐藏层;
[0033]
所述受限玻尔兹曼机的可视层用于数据输入,所述受限玻尔兹曼机的隐藏层用于特征检测;
[0034]
所述可视层包含多个可视层神经元;
[0035]
所述隐藏层包含多个隐藏层神经元;
[0036]
所述可视层中各神经元状态定义为可视层状态向量,用v表示;
[0037]
所述隐藏层中各神经元状态定义为隐藏层状态向量,用h表示;
[0038]
所述受限玻尔兹曼机中v和h均服从伯努利分布;
[0039]
v
i
与h
j
均为二值变量,即v
i
∈{0,1},(i=1,2,

,n),h
j
∈{0,1},(j=1,2,

,m);
[0040]
其中,i代表可视层中第i个神经元,j代表隐藏层中第j个神经元,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0041]
所述受限玻尔兹曼机的能量函数为:
[0042][0043]
其中,v表示可视层状态向量,h表示隐藏层状态向量,θ表示受限玻尔兹曼机的待寻优参数,θ={w=(w
i,j
)
n
×
m
,a=(a
i
)
n
,b=(b
j
)
m
},v
i
为可视层中第i个神经元的状态,h
j
为隐藏层中第j个神经元的状态,w
i,j
为可视层第i个神经元与隐藏层第j个神经元之间的连接权重,a
i
为可视层中第i个神经元的偏置,b
j
为隐藏层中第j个神经元的偏置,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0044]
所述单个受限玻尔兹曼机的可视层中神经元和隐藏层各神经元的联合概率分布函数表示为:
[0045][0046]
其中,e(v,h;θ)为所述受限玻尔兹曼机的能量函数,
[0047]
所述受限玻尔兹曼机可视层各神经元的状态相互独立以及隐藏层各神经元的状态相互独立;
[0048]
根据可视层状态向量计算隐藏层中神经元的激活概率,根据隐藏层状态向量计算可视层中神经元的激活概率,具体如下:
[0049][0050]
其中,p为神经元激活概率,w
i,j
为可视层第i个神经元与隐藏层第j个神经元之间的连接权重,b
j
为隐藏层中第j个神经元的偏置,v
i
为可视层中第i个神经元的状态,h
j
为隐
藏层中第j个神经元的状态,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0051]
σ(x)为sigmoid激活函数,其表达式为:
[0052]
根据所述受限玻尔兹曼机的能量函数、所述受限玻尔兹曼机的可视层各神经元和隐藏层各神经元的联合概率分布函数、隐藏层中神经元的激活概率、可视层中神经元的激活概率构建所述的第一受限玻尔兹曼机至第k受限玻尔兹曼机,实现步骤3所述的构建深度置信网络;
[0053]
步骤3所述将预处理后社会经济数据、预处理后月度气象数据作为深度置信网络的输入数据为:
[0054][0055]
其中,为第t0个月份中第s0个地区中第x0个预处理后经济指标, x0,k0∈{1,2,...,p},s0∈{1,2,...,q},t0∈{1,2,...,12y};
[0056]
输入数据输入深度置信网络的输入层,即对应第一受限玻尔兹曼机的可视层;
[0057]
步骤3所述通过对比散度算法依次训练每个受限玻尔兹曼机的网络参数为:
[0058]
所述训练每个受限玻尔兹曼机即以所述受限玻尔兹曼机的能量函数值最大为优化目标,训练受限玻尔兹曼机的待寻优参数即θ;
[0059]
每个受限玻尔兹曼机训练过程中,所述输入数据通过所述受限玻尔兹曼机的可视层传递到所述受限玻尔兹曼机的隐藏层,同时所述受限玻尔兹曼机的可视层的输入会被随机采样并重构至所述受限玻尔兹曼机的输入矩阵,更新后所述受限玻尔兹曼机的可视层神经元状态通过前向传播重构所述受限玻尔兹曼机的隐藏层神经元状态;
[0060]
所述对比散度算法具体流程如下:
[0061]
采用对比散度算法更新参数时,首先将训练数据作为可视层神经元的输入,计算过程为:
[0062]
v

h

v'

h'
[0063]
v'=(v'),h'=(h')
[0064]
其中,v,h为神经元更新前状态,v',h'为神经元更新后的状态;
[0065]
然后,进行参数更新,更新算法为:
[0066][0067]
其中,ε
cd
为cd算法的学习率,<
·
>为变量的数学期望。δw
i,j
为可视层第i个神经元与隐藏层第j个神经元之间的连接权重的变化量,δa
i
为可视层中第i个神经元的偏置变化量,δb
j
为隐藏层中第j个神经元的偏置变化量,v
i
为可视层中第i个神经元的原状态,h
j
为隐藏层中第j个神经元的原状态,v
i
'为可视层中第i个神经元更新后的状态,h
j
'为隐藏层中第j个神经元更新后的状态;
[0068]
从第一受限玻尔兹曼机至第k受限玻尔兹曼机,依次训练每一层的受限玻尔兹曼机的受限玻尔兹曼机的待寻优参数即θ,当前一层的受限玻尔兹曼机中的神经元参数收敛
至稳定状态时,固定相应参数,再对下一层受限玻尔兹曼机进行训练;
[0069]
步骤3所述进一步以深度置信网络损失函数模型最小化为优化目标为:
[0070]
所述深度置信网络损失函数模型损失函数模型定义为均方误差,具体如下:
[0071][0072]
其中,为第d个需预测的全社会用电量负荷真实值,为第d个模型预测值,m为输出预测值的个数。
[0073]
步骤3所述对受限玻尔兹曼机的网络参数进一步微调训练为:
[0074]
以mse最小化为优化目标,再从第k受限玻尔兹曼机至第1受限玻尔兹曼机自顶向下进行有监督反向微调,使得模型整体参数达到全局最优。
[0075]
与现有技术相比,本发明将社会经济因素混同纳入了负荷预测模型,在中长期的负荷预测方门有着更准确的结果。
附图说明
[0076]
图1:网络爬虫程序的架构设计;
[0077]
图2:基于网络爬虫的社会经济大数据的获取与处理流程;
[0078]
图3:dbn结构图;
[0079]
图4:dbn模型预测结果图;
[0080]
图5:dbn模型预测结果图;
[0081]
图6:本发明方法流程图。
具体实施方式
[0082]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0083]
下面结合图1至图6介绍本发明的具体实施方式,本发明具体实施方式包括第一实施例以及第二实施例。
[0084]
第一实施例的具体步骤为:
[0085]
步骤1:利用网络爬虫技术从多个网站上爬取月度社会经济数据、月度气象数据以及月度负荷数据;
[0086]
步骤1所述月度社会经济数据为:
[0087]
e_item
x,s,t
(x=1,2,...p;s=1,2,...q;t=1,2,...,12y)
[0088]
其中,e_item
x,s,t
为第t个月份中第s个地区中第x个经济指标,x为经济指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0089]
步骤1所述月度气象数据为:
[0090]
c_item
k,s,t
(k=1,2,...p;s=1,2,...q;t=1,2,...,12y)
[0091]
其中,c_item
k,s,t
为第t个月份中第s个地区中第k个经济指标,k为气象指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0092]
步骤1所述月度负荷数据为:
[0093]
load
s,t
(s=1,2,...q;t=1,2,...,12y)
[0094]
其中,load
s,t
为第t个月份中第s个地区预处理后负荷,s为地区编号,t为时间,y为年份,q为省份的数量,12y为月份的数量;
[0095]
步骤2:将社会经济数据、月度气象数据、月度负荷数据分别依次通过缺失值填补预处理、数据归一化预处理,得到预处理后社会经济数据、预处理后月度气象数据、预处理后月度负荷数据;
[0096]
步骤2所述通过缺失值填补预处理为:采用分段三次hermit插值方法对缺失数据进行填补预处理;
[0097]
步骤2所述数据归一化预处理为:通过最小最大归一化方法进行归一化处理;
[0098]
步骤2所述预处理后社会经济数据为:
[0099][0100]
其中,为第t个月份中第s个地区中第x个预处理后经济指标,x 为预处理后经济指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0101]
步骤2所述预处理后月度气象数据为:
[0102][0103]
其中,为第t个月份中第s个地区中第k个预处理后经济指标,k 为预处理后气象指标名称编号,s为地区编号,t为时间,y为年份,p为经济指标的数量,q为省份的数量,12y为月份的数量;
[0104]
步骤2所述预处理后月度负荷数据为:
[0105][0106]
其中,为第t个月份中第s个地区月度预处理后负荷,s为地区编号, t为时间,y为年份,q为省份的数量,12y为月份的数量;
[0107]
步骤3:通过多个受限玻尔兹曼机构建深度置信网络,构建深度置信网络损失函数模型,将预处理后社会经济数据、预处理后月度气象数据作为深度置信网络输入数据,通过对比散度算法依次训练每个受限玻尔兹曼机的网络参数,将预处理后月度负荷数据作为真实值,进一步以深度置信网络损失函数模型最小化为优化目标,对受限玻尔兹曼机的网络参数进一步微调训练,得到训练后深度置信网络用于月度负荷预测;
[0108]
步骤3所述通过多个受限玻尔兹曼机构建深度置信网络为:
[0109]
通过第一受限玻尔兹曼机、第二受限玻尔兹曼机、...、第k受限玻尔兹曼机依次堆叠构建深度置信网络;
[0110]
所述受限玻尔兹曼机包括:可视层、隐藏层;
[0111]
所述受限玻尔兹曼机的可视层用于数据输入,所述受限玻尔兹曼机的隐藏层用于特征检测;
[0112]
所述可视层包含多个可视层神经元;
[0113]
所述隐藏层包含多个隐藏层神经元;
[0114]
所述可视层中各神经元状态定义为可视层状态向量,用v表示;
[0115]
所述隐藏层中各神经元状态定义为隐藏层状态向量,用h表示;
[0116]
所述受限玻尔兹曼机中v和h均服从伯努利分布;
[0117]
v
i
与h
j
均为二值变量,即v
i
∈{0,1},(i=1,2,

,n),h
j
∈{0,1},(j=1,2,

,m);
[0118]
其中,i代表可视层中第i个神经元,j代表隐藏层中第j个神经元,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0119]
所述受限玻尔兹曼机的能量函数为:
[0120][0121]
其中,v表示可视层状态向量,h表示隐藏层状态向量,θ表示受限玻尔兹曼机的待寻优参数,θ={w=(w
i,j
)
n
×
m
,a=(a
i
)
n
,b=(b
j
)
m
},v
i
为可视层中第i个神经元的状态,h
j
为隐藏层中第j个神经元的状态,w
i,j
为可视层第i个神经元与隐藏层第j个神经元之间的连接权重,a
i
为可视层中第i个神经元的偏置,b
j
为隐藏层中第j个神经元的偏置,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0122]
所述单个受限玻尔兹曼机的可视层中神经元和隐藏层各神经元的联合概率分布函数表示为:
[0123][0124]
其中,e(v,h;θ)为所述受限玻尔兹曼机的能量函数,
[0125]
所述受限玻尔兹曼机可视层各神经元的状态相互独立以及隐藏层各神经元的状态相互独立;
[0126]
根据可视层状态向量计算隐藏层中神经元的激活概率,根据隐藏层状态向量计算可视层中神经元的激活概率,具体如下:
[0127][0128]
其中,p为神经元激活概率,w
i,j
为可视层第i个神经元与隐藏层第j个神经元之间的连接权重,b
j
为隐藏层中第j个神经元的偏置,v
i
为可视层中第i个神经元的状态,h
j
为隐藏层中第j个神经元的状态,n表示可视层中神经元的数量,m表示隐藏层中神经元的数量;
[0129]
σ(x)为sigmoid激活函数,其表达式为:
[0130]
根据所述受限玻尔兹曼机的能量函数、所述受限玻尔兹曼机的可视层各神经元和
隐藏层各神经元的联合概率分布函数、隐藏层中神经元的激活概率、可视层中神经元的激活概率构建所述的第一受限玻尔兹曼机至第k受限玻尔兹曼机,实现步骤3所述的构建深度置信网络;
[0131]
步骤3所述将预处理后社会经济数据、预处理后月度气象数据作为深度置信网络的输入数据为:
[0132][0133]
其中,为第t0个月份中第s0个地区中第x0个预处理后经济指标, x0,k0∈{1,2,...,p},s0∈{1,2,...,q},t0∈{1,2,...,12y};
[0134]
输入数据输入深度置信网络的输入层,即对应第一受限玻尔兹曼机的可视层;
[0135]
步骤3所述通过对比散度算法依次训练每个受限玻尔兹曼机的网络参数为:
[0136]
所述训练每个受限玻尔兹曼机即以所述受限玻尔兹曼机的能量函数值最大为优化目标,训练受限玻尔兹曼机的待寻优参数即θ;
[0137]
每个受限玻尔兹曼机训练过程中,所述输入数据通过所述受限玻尔兹曼机的可视层传递到所述受限玻尔兹曼机的隐藏层,同时所述受限玻尔兹曼机的可视层的输入会被随机采样并重构至所述受限玻尔兹曼机的输入矩阵,更新后所述受限玻尔兹曼机的可视层神经元状态通过前向传播重构所述受限玻尔兹曼机的隐藏层神经元状态;
[0138]
所述对比散度算法具体流程如下:
[0139]
采用对比散度算法更新参数时,首先将训练数据作为可视层神经元的输入,计算过程为:
[0140]
v

h

v'

h'
[0141]
v'=(v'),h'=(h')
[0142]
其中,v,h为神经元更新前状态,v',h'为神经元更新后的状态;
[0143]
然后,进行参数更新,更新算法为:
[0144][0145]
其中,ε
cd
为cd算法的学习率,<
·
>为变量的数学期望。δw
i,j
为可视层第i 个神经元与隐藏层第j个神经元之间的连接权重的变化量,δa
i
为可视层中第i 个神经元的偏置变化量,δb
j
为隐藏层中第j个神经元的偏置变化量,v
i
为可视层中第i个神经元的原状态,h
j
为隐藏层中第j个神经元的原状态,v
i
'为可视层中第i个神经元更新后的状态,h
j
'为隐藏层中第j个神经元更新后的状态;
[0146]
从第一受限玻尔兹曼机至第k受限玻尔兹曼机,依次训练每一层的受限玻尔兹曼机的受限玻尔兹曼机的待寻优参数即θ,当前一层的受限玻尔兹曼机中的神经元参数收敛至稳定状态时,固定相应参数,再对下一层受限玻尔兹曼机进行训练;
[0147]
步骤3所述进一步以深度置信网络损失函数模型最小化为优化目标为:
[0148]
所述深度置信网络损失函数模型损失函数模型定义为均方误差,具体如下:
[0149][0150]
其中,为第d个需预测的全社会用电量负荷真实值,为第d个模型预测值,m为输出预测值的个数。
[0151]
步骤3所述对受限玻尔兹曼机的网络参数进一步微调训练为:
[0152]
以mse最小化为优化目标,再从第k受限玻尔兹曼机至第1受限玻尔兹曼机自顶向下进行有监督反向微调,使得模型整体参数达到全局最优。
[0153]
本发明第二实施例的具体步骤为:
[0154]
步骤1:利用网络爬虫获取经济信号和社会信号
[0155]
对于短期负荷预测而言,主要受到历史负荷及天气因素的影响,由于社会经济因素的迟滞效应,其对负荷曲线的影响可以忽略不计;而对中长期负荷预测而言,社会经济数据则对于电力负荷的走势有着较大影响。因此本发明将社会数据和经济数据引入中长期负荷预测,需首先获取网络上公开的社会经济数据作为输入的一部分。社会经济信号广泛的存在于网络空间中,具有公开透明的特点。但是这些信号分布较为零散,通过传统方法下载和获取效率较低、速度较慢;而网络爬虫可以按照一定的规则,自动抓取网络或脚本中所包含的信息,能够大大减少在获取信息这一步所耗费的时间以及人力物力,因此本发明借助网络爬虫的手段对相应数据进行获取。图1为爬虫程序的架构设计,主要分为以下几个层次:
[0156]
步骤1.1:确立目标网站及需要爬取的信息。为了更全面地反映我国经济发展状况,本文根据相关程度和粒度选取了选取了包含国民经济、人口、工资、经济贸易、财政、价格等因素的的宏观社会经济数据,分别为:居民消费价格指数、城市居民消费价格指数、农村居民消费价格指数、工业生产者购进价格指数、工业生产者出厂价格指数、商品零售价格指数、规模以上工业增加值、规模以上工业企业单位数、规模以上工业企业产成品、发电量、房地产开发投资、房地产开发企业房屋施工面积、房地产开发企业房屋施工面积、房地产开发企业房屋竣工面积、社会消费品零售总额、社会消费品零售总额(累计增速)、一般公共预算收入、一般公共预算支出、金融机构本外币各项存款余额、金融机构本外币各项贷款余额、进口额、出口额、进出口总额、规模以上工业企业利润总额、工业用电量、城镇居民人均消费支出、地区生产总值、地区生产总值指数、建筑业总产值、建筑业竣工产值、房屋建筑施工面积、房屋建筑新开工面积、按总产值计算的劳动生产率、人均竣工产值、房屋建筑竣工面积、居民人均可支配收入、城镇居民人均可支配收入、农村居民人均可支配收入、居民人均消费支出、农村居民人均消费支出、固定资产投资价格指数、gdp、gdp实际增长指数、人均gdp、人均gdp实际增长指数、第一产业增加值、第二产业增加值、第三产业增加值、第一产业增加值实际增长指数、第二产业增加值实际增长指数、第三产业增加值实际增长指数、工业增加值、居民消费水平、城镇居民消费水平、农村居民消费水平、城乡消费水平对比、全社会固定资产投资完成额、城镇居民消费水平指数、农村居民消费水平指数、居民消费水平指数、固定资产投资(不含农户)、固定资产投资(不含农户)_能源工业、社会消费品零售总额_总值、建筑业企业增加值、常住人口数、常住人口自然增长率、电力消费总量(实物量)、单位gdp能耗(等价值)增速;本文选用的电力数据为全国31个省份的全社会用电量负荷;
[0157]
步骤1.2:对于网页的结构进行解析,针对不同类型的数据采取不同手段进行分析,据此部署相应的网络爬虫和数据解析工具对网页中的各类数据进行爬取;
[0158]
步骤1.3:结构化数据的抽取,考虑到不同指标的统计频率有所不同,根据步骤1.2中分析的结果,获取到全国各个省市的月度社会经济数据 item1
i,j,t
(i=1,2,...p;j=1,2,...q;t=1,2,...,12),其中i为经济指标名称编号,j为地区编号,t为时间;获取到全国各个省市的月度气象数据 item2
i,j,t
(i=1,2,...p;j=1,2,...q;t=1,2,...,12),其中i为气象指标名称编号,j为地区编号,t为时间;获取到全国各个省市的月度负荷数据 load
j,t
(j=1,2,...q;t=1,2,...,12),其中j为地区编号,t为时间;
[0159]
步骤1.4:对抽取数据的归纳整理,将同一省份相同指标下的数据进行人工拼接形成连续的时间序列,从而形成包含全国各省市数据的混频社会经济大数据库;
[0160]
步骤1.5:后续工作,对数据进行展示,对数据进行缺失值填补,以便与数据分析预测对接。本发明采用分段三次hermit插值方法对缺失数据进行填补,数据输入模型前,对数据集进行最大最小归一化法进行归一化处理,并将时间序列预测问题转化为监督学习。
[0161]
1.1数据源的选择
[0162]
为方便数据源的选择,使得选择输入的数据更具有代表性,本发明对于模型的输入数据类型进行划分。它主要分为以下三类:
[0163]
电力大数据,来自电能生产使用的发、输、变、配、用电和调度各个环节;
[0164]
经济大数据,反映国民经济、人口、工资、经济贸易、财政、价格等方面的数据;
[0165]
社会大数据,气象数据、社交数据、政策、国内外政治经济形势等。
[0166]
考虑到不同地区间负荷的交换情况,本发明中选用的电力数据为本省负荷以及与其属于同一电网区划的相邻省份负荷数据。
[0167]
对于经济大数据,本发明根据相关程度和粒度主要选取了地区生产总值、居民消费价格指数、商品零售价格指数、固定资产投资总额、一般公共预算收入、进出口贸易总额、存贷款金额作为宏观经济分析指标。
[0168]
对于社会大数据,本发明选取了月度平均气温、月度平均气压、月度平均相对湿度、月度平均空气质量综合指数作为输入的气象数据;
[0169]
选取政策数据包括:天然气价格的调价信息、燃油价格的调价信息,工业、能源、环保相关的政策标题。
[0170]
1.2网络爬虫的部署
[0171]
由于不同网站源码、数据结构存在差异,须针对每个网站部署相应的爬虫程序对数据进行爬取。本发明主要利用python自带的urllib库以及python第三方库beautifulsoup共同实现网络爬虫功能,其中urllib主要实现对于网页内容的获取,而beautifulsoup则主要用于对网页源码进行处理,抽取其中对表格、文本、标题信息等。此外,运用selenium自动化测试工具来辅助网页的检索以及查找爬虫程序的异常。
[0172]
考虑到分布于网络空间中的数据存在形式不同,本发明对于不同来源数据的获取设计了不同的策略。图2为通过网络爬虫获取和处理不同来源数据的主要流程。明确需爬去数据的来源后,需对于网络元素进行审查,确定该网站请求的发起格式——若为静态网站,有效数据存在于网页源码之内,因此需解析网页格式,通过beautifulsoup侦测到所需内容的css、xpath和html标签,并将其提取出来,转化为结构化数据的或纯文本内容;对于动态
网站,其有效数据并非存在于网络源码中,而是通过获取服务器到浏览器的通讯填充到网页的显示中,因此需要通过解析query文件以提取有效信息。
[0173]
步骤2:基于dbn的中长期负荷预测模型
[0174]
本发明以社会数据、经济数据以及历史负荷数据作为输入,使用dbn构建中长期负荷预测模型。本发明中使用的dbn结构如图3所示。
[0175]
本发明以负荷历史值作为负荷序列的输入,以不同尺度的经济信号和政策信号混合输入x,以月度负荷作为输出y,作为张量表单进入dbn模型,通过减小 dbn模型输出与期望输出之间差别所造成的损失来不断迭代以修正模型,得出更准确的预测结果。
[0176]
2.1dbn结构和原理
[0177]
深度置信网络(deep belief network,dbn)由多个受限玻尔兹曼机(rbm)堆叠构成。通过逐层无监督预训练的方法得到网络初始参数,有效解决了传统神经网络参数随机初始化导致的一系列问题;再通过使用有监督的反向传播训练方法来微调参数,可以很好的解决非线性、时变性和不确定性并存的电力需求预测问题,与本发明的中长期负荷预测的需求相符合。
[0178]
本发明采用的dbn模型由:一个输入层、多个隐藏层和一个输出层构成;
[0179]
其基本组成单元为受限玻尔兹曼机(rbm),dbn模型由多个rbm堆叠构成,dbn除输入层和输出层外的其余层均为dbn的隐藏层;
[0180]
rbm是一种无方向性的概率图模型,由可视层神经元与隐藏层神经元组成;
[0181]
可视层神经元用于数据输入,隐藏层神经元用于特征检测;
[0182]
其中神经元节点同层无连接,两层之间互相连接;
[0183]
可视层神经元状态用向量v表示,隐藏层的神经元状态用向量h表示;
[0184]
rbm中v和h均服从伯努利分布;
[0185]
v
i
与h
j
为二值变量,即v
i
∈{0,1},(i=1,2,

,n),h
j
∈{0,1},(j=1,2,

,m);
[0186]
其中,i、j分别代表不同神经元,n、m分别表示可视层和隐藏层神经元个数。
[0187]
其能量函数为:
[0188][0189]
其中,θ表示网络参数,θ={w=(w
ij
)
n
×
m
,a=(a
i
)
n
,b=(b
j
)
m
},v
i
为第i层可视层神经元,h
j
为第j层隐藏层神经元,w
ij
为第i层可视层神经元与第j层隐藏层神经元支间的连接权重,a
i
为第i层可视层神经元的偏置,b
j
为第j层隐藏层神经元的偏置,n为可视层神经元与的单元个数,m为藏层神经元的单元个数;
[0190]
rbm的可视单元和隐藏单元的联合概率分布p(v,h;θ)可表示为:
[0191][0192]
其中,e(v,h;θ)为根据公式(1)计算出的能量函数值。
[0193]
由于rbm模型同一层神经元节点的状态相互独立,当给定可视层和隐藏层状态向量v和h时,可视单元和隐藏单元的激活概率为:
[0194][0195]
其中,p为神经元激活概率,w
ij
为神经元之间的权重,b
j
为偏置量,σ(x)为sigmoid激活函数,其表达式为:
[0196]
rbm的训练过程主要是训练其参数θ,使能量函数值最大。
[0197]
本发明采用的dbn模型中,使用对比散度(cd)算法求解对数似然函数的负梯度来获得参数θ的最优值;
[0198]
训练过程中,可视层的输入矩阵传递到隐藏层,同时可视层的输入会被随机采样并重构输入矩阵,更新后的可视层神经元状态通过前向传播重构隐藏层神经元状态;
[0199]
对比散度算法具体流程如下:采用对比散度算法更新参数时,首先将训练数据作为可见单元的输入,计算过程为:
[0200]
v

h

v'

h'
[0201]
v'=(v
i
'),h'=(h
j
')
[0202]
然后,进行参数更新,更新算法为:
[0203][0204]
其中,ε
cd
为cd算法的学习率,<
·
>为变量的数学期望。
[0205]
本发明中采用的dbn模型采用无监督贪婪算法逐层进行训练。首先自底向上依次训练每一层的rbm,当前一层的rbm中的神经元参数收敛至稳定状态时,固定相应参数,再对下一层进行训练。所有rbm都训练结束后再自顶向下进行有监督反向微调,使得模型参数达到全局最优。
[0206]
2.2dbn模型搭建与验证
[0207]
本发明调用tensorflow的keras模块来搭建搭建dbn模型。
[0208]
由于dbn结构会影响模型预测效果,本发明采用贪婪算法对dbn模型的网络层数及每层神经元个数进行遍历搜索,选取使训练结果的平均绝对百分比误差(mape)和均方根误差(rmse)最小的网络结构进行最终的预测。
[0209]
本发明按照training set:testing set=9:1划分训练集与测试集,选用均方误差(mse)作为损失函数,学习率0.005,预训练迭代500个epoch、微调训练迭代 20000个epoch后,训练指标mape降至3.278%。为了体现本发明的优越性,本发明采用ls-svm和arima作为对比模型,相比ls-svm和arima模型,本发明所建立的dbn模型的mape分别降低了9.394%和1.862%,rmse分别降低了0.0292和0.0607,最终预测结果如图4、5所示。
[0210]
从预测结果可以看出,本发明所建立的基于社会计算的地区中长期用电量预测方法,能更好地学习经济与电力数据间的复杂非线性关系,挖掘经济市场与用电市场的关联,
能够较好地对中长期负荷走向做出预判,且和传统预测模型相比预测精度有了进一步的提升,对于电力系统调度规划具有较好的指导意义。
[0211]
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
[0212]
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1