一种基于编码解码长短期记忆网络的短期风电功率预测方法与流程

文档序号:15750800发布日期:2018-10-26 17:39阅读:183来源:国知局
一种基于编码解码长短期记忆网络的短期风电功率预测方法与流程

本发明涉及风电功率预测算法技术领域,尤其是一种基于编码解码长短期记忆网络的短期风电功率预测方法。



背景技术:

风能是清洁、可再生能源中的一种重要资源,但由于风能的间歇性、随机性等特点导致了wp的不确定性和弱可控性。这给电网安全稳定运行带来了隐患和挑战。准确的wpp能够缓解电网调频、调峰压力,对于大规模风电并网和运行管理具有十分重要的意义。

目前,针对风电功率预测的方法按照时间周期进行划分,主要有:以年度为单位的长期预测法;以月、周为单位的中期预测法;以日、小时为单位的短期预测法和以分钟为单位的超短期预测法。针对预测模型的不同,主要有物理预测方法和统计预测方法2大类。其中,物理预测方法主要使用了数值天气预报模型(numericalweatherprediction,nwp)提供的风速、风向、气压、气温等气象要素,结合风电场周围的地貌、地形信息,对局部风速进行估计,进而给出风电功率预测。但wpp的误差会受到nwp误差的影响而被放大,同时nwp的预测周期较长,因此物理预测方法无法用于超短期预测。统计预测方法主要有自回归移动平均法(auto-regressionmovingaverage,arma)、指数平滑法(exponentialsmoothing,em)、卡尔曼滤波法(kalmanfilter)等时序外推方法,以及以机器学习、神经网络为主要特征的支持向量机(supportvectormachine,svm)法、人工神经网络(artificialneuralnetwork,ann)法等。其中:外推方法对数据的随机分布特征具有比较严格的假设;svm的核函数选择存在随意性,且样本数据量的增加以及输入数据维度的增大会导致较高的计算复杂度;浅层ann虽然能够比较好地拟合样本数据,但存在过拟合、泛化能力差的缺点。



技术实现要素:

本发明的目的是提供一种基于编码解码长短期记忆网络的短期风电功率预测方法,通过利用在自编码过程中提取的数据时序表达从而降低了错定风险提高了泛化能力,同时将时序特征与天气预测信息进行结合进一步提高了预测精度。

为实现上述目的,本发明采用下述技术方案:

一种基于编码解码长短期记忆网络的短期风电功率预测方法,包括以下步骤:

s1、使用基于e-d的lstm网络对风电功率进行ae处理,提取训练后的网络中间状态;

s2、将提取的网络中间状态与预测期的天气数据进行合并形成新lstm预测模型输入值,输出预测期风电功率。

进一步地,所述将提取的网络中间状态与预测期的天气数据进行合并形成新lstm预测模型输入值步骤之前,还包括输入数据标准化步骤:

将风电功率及天气数据中的风速、气温、气压、轮毂高度处空气密度数值标准化为区间[-0.8,0.8],公式如下:

将轮毂高度处风向变量标准化公式如下:

进一步地,所述步骤s1中基于e-d的lstm网络对风电功率进行ae处理,具体步骤如下:

s11、将输入风电功率数据序列输入lstm网络,编码器学习后输出中间状态,解码器将中间状态解码成输出风电功率,所述输出风电功率数据序列与输入风电功率数据序列顺序相反;

s12、将步骤s11在训练初期维持高学习率进行训练,训练至500轮以后采用指数下降法实现学习率衰减,总体训练1500轮;

s13、提取步骤s12训练完毕的lstm网络中间层状态。

进一步地,所述编码器涉及到的超参数定义如下:

输入层时间步数设置为480,即按照15min一个数据点来计算的前5天历史风电功率数据;输入变量为风电功率,输入维数为1;隐藏层数目为1层lstm;隐藏层维度为32;输出变量为风电功率,输出维数为1。

进一步地,步骤s2中,将提取的网络中间状态与预测期的天气数据进行合并形成新lstm预测模型输入值,输出预测期风电功率,具体步骤如下:

s21、将历史天气数据输入到ae处理提取的中间状态后得到嵌入层,将该嵌入层与预测期的天气数据进行合并形成新lstm网络输入值,输出值为预测其风电功率;

s22、将输入值和输出值输入到新lstm网络进行训练,在训练初期维持高学习率进行训练,训练至500轮以后采用指数下降法实现学习率衰减,总体训练1500轮;

s23、将标准化处理后的历史风电功率数据输入到步骤s22中训练完成后的编码器中得到中间状态,将中间状态与标准化处理后的预测期天气数据进行合并,形成预测模型的输入值;

s24、将步骤s23形成的输入值输入到训练完成的新lstm预测模型中,输出预测期风电功率。

进一步地,步骤s24的输出预测期风电功率之后,还包括:

将输出的预测期风电功率按照下式进行反归一化处理,

进一步地,所述新lstm网络涉及到的超参数如下:

输入层的时间步数设置为480,即按照15min一个数据点来计算的前5天历史数据;输入变量为ae中提取的中间层和预测期5维气象变量的37维向量,包括嵌入层的32维以及风速、气温、气压、轮毂高度处空气密度和轮毂高度处风向;隐藏层数目为3层lstm;隐藏层维度为128维、64维、32维;输出变量为预测期风电功率,输出维数为1。

本发明的有益效果是,

本发明使用基于e-d的lstm网络对wp进行ae处理,能够有效挖掘数据的时序关系,降低模型的错定风险;以ae过程中提取的网络中间状态作为嵌入层与预测期的天气数据合并输入到新的lstm网络中,将使模型在已知wp时序关系的基础上纳入新的外部变化因素,从而对突变更加敏感。与没使用ae预处理的多层lstm网络方法相比,该方法通过利用ae过程中提取的wp时序关系信息降低了模型的错定(modelmisspecification)风险,提高了泛化能力,同时将时序特征与天气预测信息进行结合进一步提高了预测精度。

附图说明

图1是lstm单元结构示意图;

图2是编码解码的lstm结构示意图;

图3是基于e-d的lstm网络结构wpp预测模型;

图4是预测区间为未来九小时的预测结果对比图;

图5是预测区间为未来九小时的误差分布图。

具体实施方式

如图1所示,lstm是门控制循环神经网络的一种,其通过引入记忆神经元(它的主要特征是设置了输入门、遗忘门和输出门三个判断条件)缓解了数据时序长度过长时反向传播中的梯度消失问题。其中:输入门(inputgate)表示允许信息加入到记忆单元中的比例;遗忘门(forgetgate)表示保留当前状态节点中存储的历史信息的比例;输出门(outputgate)表示将当前状态节点的信息作为输出的比例。因此,lstm能够对时间序列数据进行有效挖掘。控制门的表达式如下所示:

it=σsig(wict-1+uixt+bi)(1)

ftσsig(wfct-1+ufxt+bf)(2)

ot=σsig(woct-1+uoxt+bo)(3)

状态节点的表达式为:

ht==ot⊙φtanh(ct)(6)

这里,⊙代表逐元素乘积(element-wiseproduct);wi、wf、wo和wc分别表示连接中间状态st-1的权重矩阵;ui、uf、uo和uc分别表示连接输入值的权重矩阵;bi、bf、bo和bc分别表示常量;σsig表示三个门的sigmoid激活函数,φtanh表示tanh激活函数。

如图2所示,在e-d结构的lstm网络中,编码器学习输入时间序列的固定长度向量表示,输出中间状态c;解码器使用该向量表示和前一时间步骤预测的值来重建时间序列。

给定输入序列是编码器在第t步的中间状态,其中,m为编码器的神经元个数。编码器学习完所有nx个输入序列后,用解码器把编码器学习到的中间状态解码成预测目标序列

令fw(x)代表拟建立的wpp模型,w是所有估计参数的集合,给定输入x*和真实输出y*,有:y*=fw(x*)+∈(7)

得到的预测值方差由两部分组成:

var(y*|x*)=var(fw)+var(∈)(8)

其中,(1)var(fw)表示模型由于随机采样而产生的波动性,(2)var(∈)表示代表数据生成过程中的误差。考虑到协方差转移(covarianceshift)的影响,因此,∈可以被进一步分解为由于协方差转移而产生的模型错定误差和数据生成过程中的内在噪音(inherentnoise)。

如图3所示,基于e-d的lstm网络通过对训练数据的编码提取和解码重构处理能够挖掘时序数据内部的模式改变,从而降低模型的错定误差。在wpp的过程中,首先使用基于e-d的lstm网络对wp数据进行ae处理,提取编码器的固定长度中间状态作为对wp时序关系的抽象表示。为了提高训练的效率,在保证输入值和目标值一致的同时,目标值的顺序与输入值的顺序完全相反,即:输入值为目标值为

ae过程的目的是:(1)固定长度的中间状态能够对数据的时序关系进行抽象表示;(2)数据序列中的时序关系能够被有效提取。这里使用了1层lstm作为模型的中间层,神经元数量为32。

自编码器中涉及到5个超参数,即输入层时间步数、输入层维数、隐藏层的数目、每个隐藏层维数以及输出变量维数。其中:输入层的时间步数设置为480,即前5天的历史数据,按照15min一个数据点来计算(480=5*24*60/15);输入为wp,维数为1;隐藏层数目为1层lstm;隐藏层维度为32;输出变量也为wp,维数为1。

ae处理的具体步骤如下:

(1)确定输入、输出值均为同一风功率变量,其中:输出变量的顺序与输入变量的顺序相反。

(2)将训练集的输入值和输出值输入到基于自编码器网络中进行训练,在训练初期采用较高的学习率维持不变以提高训练效率,训练至500轮以后采用指数下降法实现学习率衰减;总体训练1500轮。

(3)将训练完毕的lstm中间状态,即式(5)提取出来作为中间层输入到下一步的预测模型中。

把历史天气数据输入到ae过程中提取的中间状态后得到嵌入层,将该嵌入层与预测日的天气值进行合并形成新的lstm预测模型输入值,即:嵌入层作为原始输入数据的一个独立维度而取代了wp。这里隐含的思路是,气象规律的改变是wp时序规律发生变化的主要原因。当气象规律不发生新的变化时,wp的历史时序信息已经被先前ae过程中的中间状态提取出来而存放于固定长度的向量中了;如果气象规律出现了新变化,那么这些变化就要与wp的历史规律组合在一起被综合考虑。

这里使用一个新的3层lstm网络作为预测模型,其中:输入数据的维度为37(包括嵌入层的32维以及风速、气温、气压、轮毂高度处空气密度和风向);lstm神经元的数量为变为128、64、32;;时间步长的设置应与ae中训练的时间步长保持一致。

预测模型中涉及到5个超参数,即输入层时间步数、输入层维数、隐藏层的数目、每个隐藏层维数以及输出变量维数。其中:输入层的时间步数与前步中的自编码器设置相同;输入为ae中提取的中间层和预测期5维气象变量,具体为37(包括嵌入层的32维以及风速、气温、气压、轮毂高度处空气密度和风向);隐藏层数目为3层lstm;隐藏层维度为128、64、32;输出变量为预测期wp,维数为1。这里,输出层使用了tanh激活函数。

预测模型步骤:

1、模型训练

(1)确定输入值为ae步中的提取出的中间状态与预测期天气数据的37维组合数据,输出值为预测期风功率变量。

(2)将训练集的输入值和输出值输入到预测模型中进行训练,在训练初期采用较高的学习率维持不变以提高训练效率,训练至500轮以后采用指数下降法实现学习率衰减;总体训练1500轮。

2、模型预测

(1)将经过归一化的历史风电功率数据输入到训练完毕的自编码器中得出中间状态,同时将该中间状态与归一化后的预测期天气数据进行合并,形成预测模型的输入值。

(2)将输入值输入到训练完成的预测模型中,得出归一化后的输出值,即归一化后的预测期wp。

(3)对wp进行反归一化,完成最终预测。

由于输入数据的不同维度之间存在量纲差异,因此使用min-max方法对输入数据进行标准化。考虑到lstm网络中输出层选取tanh激活函数,其有效区间为[-1,1]。因此,为防止数据数值过大或过小而发生神经元饱和的问题,将wp、风速、气温、气压、轮毂高度的空气密度标准化为[-0.8,0.8],表达式如下所示:

将轮毂高度处风向变量标准化公式如下:

最后,对归一化后的数据进行训练和预测后的输出结果都要进行反归一化过程,使数据恢复到原来的量纲,公式如下:

方法应用于山西省某风电场数据进行训练和测试,数据取值范围为2016年1月1日至5月31日,风电场装机容量为50mw,所选取的数据包括wp、风速、气温、气压、轮毂高度处空气密度、风向,数据间隔为15min,共计14496个时间断面数据。

使用步长为1的滑动窗口构建数据样本,其中每个滑动窗口包含前5天的输入作为历史数据,预测期分别为未来3、6、9、12小时。按照50%、30%、20%的比例对整体数据集进行划分成训练集、验证集和测试集。训练过程中,使用附带动量的随机梯度下降法(stochasticgradientdescentwithmomentum,sgdm)对模型的参数进行优化。误差函数使用均方根误差(rootmeansquareerror,rmse)作为衡量预测水平的指标,公式如下:

其中:cap表示风电场装机容量;为预测区间预测值,yi为预测区间目标值。在训练初期采用较高的学习率维持不变以提高训练效率,训练至500轮以后采用指数下降法实现学习率衰减;总体训练1500轮。此外,在训练过程中设置提前终止机制,当验证集误差在5次迭代以上后出现上升时,训练终止。

为与基于e-d的lstm方法效果进行对比分析,选取非ae的lstm方法作为对照组。其中:非ae的lstm网络直接以历史wp和气象数据作为输入值进行预测,lstm层数为3层。

对2个方法的预测表现进行了比较,如下所示:

表13-12小时预测误差对比表

tab.1rmsefor3-12houraheadprediction%

表1给出了2个方法的rmse值,可以发现:

(1)在所有的预测区间内基于e-d的lstm方法预测误差分别为2.6%、5.2%、8.5%和11.8%,低于非ae的lstm方法误差。这是因为基于e-d的lstm网络通过ae过程提取了wp的历史时序关系,同时考虑了预测期内气象规律的新变化,如风速、温度的突变等。因此,基于e-d的lstm方法所做的预测对于wp突变的反应更加灵敏,如图4所示,而非ae的lstm方法预测曲线的变化则相对滞后。在误差的分布上,后者给出的预测结果误差分布更加分散,而前者给出误差分布更加集中,如图5所示。

(2)随着预测周期的增加,2种方法的预测误差都出现了不同程度地增加。但是基于e-d的lstm方法的增加幅度最小,从3小时预测误差到12小时预测误差上升了9.2%,而非ae的lstm方法预测误差上升了15.7%。特别是对于预测期较长的情况,比较6小时、9小时、12小时的误差变化,非ae的lstm方法预测误差分别上升5.9%和5.8%,而基于e-d的lstm方法预测误差仅上升了3.3%和2.7%。这主要是因为,基于e-d的lstm方法通过ae过程实现了中间状态提取,对wp时序信息进行有效挖掘,降低了模型的错定风险。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1