一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

风电功率预测方法

2022-07-02 13:56:05 来源:中国专利 TAG:


1.本发明属于风电技术领域,同时属于时间序列数据分析与挖掘技术领域,亦属于大数据分析与应用技术领域,特别涉及一种风电功率预测方法。


背景技术:

2.风电场通过开展风电功率预测来进行电力市场竞价和风电场运行维护,通过风电功率预测系统的预测结果,电网调度部门进行合理的发电计划安排,减少系统的旋转备用容量,提高电网运行的经济性,同时通过提前预测风电功率的波动,合理的安排运行方式和应对措施,提高电网的安全性和可靠性。但是数据在采集过程中由于传感器等硬件设备所带来的采集误差,对后期风电功率预测带来一定的误差。


技术实现要素:

3.为了克服上述现有技术的缺点,本发明的目的在于提供一种风电功率预测方法,采用了基于生成对抗网络自动编码的多元时间序列插补方法,通过对风电场发电量监测数据缺失值和社区运维系统数据缺失值的插补,尽可能规避了由于多方面原因所带来的异常值现象,提高预测准确性。
4.为了实现上述目的,本发明采用的技术方案是:
5.一种风电功率预测方法,包括如下步骤:
6.步骤1,以风电场传感器所接收的原始数据构成原始时间序列集,所述原始数据包括气象部门监测的温度、压强数据以及风电场监测的风速、风向数据;所述原始时间序列集含缺失值;先以所述原始时间序列集构建掩码矩阵m,然后将原始时间序列集编码至隐藏空间,将隐藏单元传入基于门控循环单元的生成对抗网络,生成伪时间序列集,其中生成对抗网络的生成器即对编码的原始时间序列集进行解码的解码器;
7.步骤2,将所述伪时间序列集处理后与所述原始时间序列集通过所述生成对抗网络的鉴别器比对,当均方根误差小于设定阈值时,使用伪时间序列集中的数据插补到原时间序列集的空缺中,形成完整的新时间序列集;
8.步骤3,利用所述新时间序列集,对风电功率进行预测。
9.与现有技术相比,本发明针对风电数据采集过程中出现的缺失值现象,采用插补的方法,将采集到原始数据中的缺失值进行插补,最终获得输入的特征数据进行预测模型的训练和测试,达到风电场所需的预测模型。采用本发明,可极大程度上解决风电原始数据采集的误差现象,提高预测模型预测的准确性,为电网调度部门和风电场提高更精准的预测数据。
附图说明
10.图1是本发明整体流程示意图。
11.图2是本发明工作逻辑图
12.图3是本发明实施例1中在不同方法的插补数据集上训练不同分类模型预测得分。
13.图4是本发明实施例2中在不同方法的插补数据集上训练不同分类模型所得的均方根误差。
具体实施方式
14.下面结合附图和实施例详细说明本发明的实施方式。
15.如图1所示,本发明为一种风电功率预测方法,包括如下步骤:
16.步骤1,以风电场传感器所接收的原始数据构成原始时间序列集,原始数据主要包括气象部门监测的温度、压强数据以及风电场监测的风速、风向数据;显然,由于传感器所带来的采集误差,该原始时间序列集容易含有缺失值。
17.步骤2,检测该原始时间序列集中是否含有缺失值,如没有,则可直接就行预测,但这种概率较低。如有,则需要进行插补,具体地,先以该原始时间序列集构建掩码矩阵m,然后将该原始时间序列集编码至隐藏空间,将隐藏单元传入基于门控循环单元的生成对抗网络(与解码同步进行),解码生成伪时间序列集,其中生成对抗网络的生成器即对编码的原始时间序列集进行解码的解码器。
18.在本发明中,构建掩码矩阵m的方法可如下所示:
19.在原始时间序列集中,若参数j在ti时刻的值存在,则记为若参数j在ti时刻的值不存在,即为缺失值,则记为最终构建掩码矩阵其中,表示在ti时刻j的值是否存在;最终表示形式可示例为:
20.本发明的原始时间序列集的编码基于自编码器实现,编码目标为使数据进入隐藏空间,隐藏空间中存在高斯分布限制的一维矩阵。
21.具体地,在原始时间序列集编码时,需要重构损失函数计算损失值,并检测编码后解码前的数据和原始时间序列集之间的误差,其中自编码器损失值定义为:l
enc
=||x

m-g(z)

m||2,解码器损失值定义为:l
dec
=||x

m-g(z)

m||2 λl
disc
,其中x表示真实数据,即含缺失值的原始时间序列集,g(z)表示生成数据,即生成的伪时间序列集,

表示矩阵乘法,λ表示控制l
enc
与l
disc
之间比例大小的超参数,l
disc
为鉴别器损失值,l
disc
=d(x)-d(g(z)),d(x)指真实数据的分布,d(g(z))指生成数据的分布,原始时间序列集与伪时间序列集之间的wasserstein距离可记作d。
22.本发明生成对抗网络可通过如下过程训练:
23.设定生成器的迭代次数为n
critic
;训练样本数量为m;θ
enc
为自编码器的梯度下降值;θ
dec
为解码器梯度下降值;θ
disc
为鉴别器梯度下降值;c为梯度限制,若鉴别器更新值大于c,则对其赋值为c,若鉴别器更新值小于-c,则对其赋值为-c,若鉴别器更新值若在-c到c之间,则对其赋值为计算值;
24.当θ
disc
未收敛时,从1开始循环更新,直至达到迭代次数n
critic

25.则:
[0026][0027][0028]
l
dec


l
enc
λl
disc
[0029][0030][0031][0032]
上式中:

为更新符号;是指梯度下降值,代表其后面的公式是梯度下降计算公式;m(i)表示第i批数据的掩码矩阵,x(i)表示第i批数据的含缺失值的原始时间序列集,g(z)(i)表示第i批数据的生成数据,clip()和fw()为限制函数;指解码器梯度下降值;指编码器梯度下降值;指鉴别器梯度下降值。
[0033]
步骤3,将伪时间序列集处理后与原始时间序列集通过生成对抗网络的鉴别器比对,当均方根误差小于设定阈值时,使用伪时间序列集中的数据插补到原时间序列集的空缺中,形成完整的新时间序列集;否则重复将新的伪时间序列集传入到编码器中,重复步骤2,直至其均方根误差小于设定阈值。
[0034]
示例地,在本发明中,需要将原始时间序列集中的每个时间序列样本传入自编码器中并编码到潜在空间,从而使之在有高斯分布的限制下降维,使后面生成器的效果更好。将潜在空间中的一维数据输入解码器中以获得g(z),插补损失收敛到最优解后,使用生成的数据g(z)替换原始时间序列集中的缺失值。
[0035]
本发明伪时间序列集处理方法为,将伪时间序列集乘以掩码矩阵m,以保证其与原始时间序列集中的数据数量一致,由于m是根据含缺失值的原始时间序列集定义的,其中缺失位置用0表示,但生成的伪时间序列集是不含缺失值的,这个时候若直接和带缺失值的原始时间序列集比对,不严谨,因此要把缺失位置复现,因此,通过处理,可以使伪时间序列集中与原始时间序列集中缺失位置保持一致。
[0036]
在本步骤中,鉴别器判别可参考l
disc
的计算方法。
[0037]
在本步骤中,伪时间序列集中的数据插补方法如下:
[0038]
对于每个编码前数据x,即时间序列样本,从其编码的潜在空间z中提取,并将其输入生成器以获得g(z)。插补损失收敛到最优解后,使用生成的数据g(z)部分替换缺失值。其中θ
enc
,θ
dec
,θ
disc
对收敛计算起到至关重要的作用。缺失值插补方法为l
imputed
=x

m (1-m)

g(z),通过此方法可获得使用生成数据g(z)替换原始时间序列集后得到新时间序列集。
[0039]
步骤4,利用新时间序列集,输入至现有的机器学习模型,即可对风电功率进行预测。
[0040]
本发明在生成对抗网络中加入门控循环单元的过程如下:
[0041]
在编码器(encoder)、解码器(decoder)、鉴别器(discrinimator)中,加入门控循环单元(gru),编码器(encoder)、解码器(decoder)、鉴别器(discrinimator)的主体网络都是由三层gru层和一层dense层组成,dense层的隐藏单元不同。
[0042]
在编码器的全连接层,使输入向量(含缺失值的原始时间序列集)压缩至低维向量z。在解码器的dense层,使其能够还原解码器输入形状大小。鉴别器的dense层设置为1。为了防止梯度爆炸或梯度消失发生的发生,在改进的循环门控单元(grui)中间加入了layernormalization层,以及其gru中利用了relu作为激活函数。
[0043]
由于缺失数据的存在,连续时间滞后可能会发生变化。为了拟合过去不同滞后的衰减效应,使用了grui对含缺失值的原始时间序列集的时间不规则性进行建模。
[0044]
为了记录原始时间序列集的两个值之间的延迟(此处,两个值是指两个时间在同一采集点采集的数据,时滞矩阵的意义是记录两次获得有效数据的时间差),构建时滞矩阵记录同一参数j当前值与上次有效值之间的时间差,r
n*d
表示n行d列的矩阵,与掩码矩阵m大小构造一致,用来记录每个数据和上次有效值的时间差,通过行和列能够找到每一个数据点;
[0045]
其中,编码器使数据进入隐藏空间;解码器又名生成器,作用为生成伪时间序列集;鉴别器是鉴别伪时间序列集与原始时间序列集的相似性;
[0046]
时滞矩阵
[0047]
ti时刻的衰减因子的计算方法为隐藏状态更新方法为
[0048]
其中是门控循环单元隐藏状态,w
β
与b
β
是需要学习的参数,用隐藏状态乘以衰减因子来更新最新的隐藏状态。
[0049]
在本发明的具体实施例中,硬件为一台计算机,配置包含硬件环境:cpu:2颗intel xeon 6130处理器(2.1ghz/16c)/2666mhz/10.4gt;gpu:6块16g_tesla-p100_4096b_p_cac;内存:16根32g ecc registered ddr4 2666;软件环境:操作系统:ubantu 16.04;深度学习框架:tensorflow;语言及开发环境:python 2.7、anaconda 3。
[0050]
在两个真实数据集(egg数据集、imwp(inner mongolia wind power)数据集)中对所提出的方法进行了评估。为了证明该方法的插补结果,与简单方法、基于knn的插补方法和gan网络插补方法进行了直接和间接比较。数据集基本信息如表1所示。
[0051]
表1数据集基本信息
[0052]
数据集特征数量样本数缺失率eeg14149800%imwp81349330%
[0053]
实施例一
[0054]
eeg数据集是一个使用情绪eeg神经耳机的连续eeg测量。该数据集包括14个传感
器信号,如af3、f7、t7等,以及一个二进制分类标签。类值“1”表示眼睛闭着,“0”表示眼睛睁开的状态。这是一个完整的数据集,共有14980个观测值未丢失。测量的持续时间为117秒。所有值均按时间顺序排列,第一个测量值位于数据顶部。原数据集无缺失值,因此在后续的实验中随机构造缺失值并验证本方法填补数据的合理性。
[0055]
当模型训练时,编码器和鉴别器的输入样本以及相应的屏蔽矩阵。对于本数据集,输入维度为(20,14),批量大小为128,gru的隐藏单元设置为128,解码器压缩的低维向量大小为64。
[0056]
eeg数据集是一个完整的数据集,可以直接将该方法的结果与其他方法进行比较。比较方法包括平均填充法、基于knn的插值法和基于原始gan的插值法。在实验之前,首先对数据集进行标准化。该数据集的超参数为:训练轮次为200轮,学习率为0.002,λ为0.0。表格的第一列是eeg数据集的缺失率。根据百分比随机构造缺失数据,剩余的列通过不同的方法进行插值的均方误差。这里的均方误差是对插值进行去规范化后计算的均方误差,样本数据的平均值约为4000。实验数据如表2所示。
[0057]
表2在eeg数据集上的插补效果
[0058]
缺失率平均值填充法knn填充法gan填充法vae-gan填充法90%41.9327.0923.3419.8970%38.8723.9121.7419.2750%36.7921.0321.4518.3530%36.6424.4720.3117.7910%27.339.9113.8411.46
[0059]
可以看到,当数据集的缺失精度低于30%时,基于knn插值的方法更好,但在缺失数据较高的情况下,本发明的方法具有更好的填充精度。这是因为基于生成模型的方法可以自动学习样本数据的分布和样本之间的时间关系。这样,所提出的方法不仅可以根据数据分布进行缺失插值,而且可以避免生成网络添加的一些噪声,从而生成新的样本,影响插值效果。
[0060]
如图3所示,是回归任务的测试结果。本发明使用70%缺失值的egg数据集,使用不同的方法填充数据集,然后训练随机森林分类器和支持向量机分类器进行二值分类。
[0061]
从图3可以看出,本发明的方法在分类精度上优于其他方法。
[0062]
实施例二
[0063]
imwp数据集是内蒙古某风电场2019年的真实数据。原始数据分为两部分,一部分是历史天气数据(nwp),这部分数据由风电场测风塔和历史天气预报报告进行校准。2019年1月1日至5月21日,每15分钟记录近14000条数据。每个数据有7个变量,包括风向、风速、温度和湿度。另一部分是风电场输出功率数据,由风电场运行监测和数据采集系统(scada)获取。数据为2019年1月1日至5月21日。采样频率与数值预报数据相同。由于恶劣的环境、scada系统传感器异常、通信故障等因素,存在一定的异常和数据缺失,其中缺失数据近4300条(30%)。表3为原始风电数据中天气预报数据(部分示意),表4为原始风电数据中风电实际功率(部分示意,含缺失值),表5为原始风电数据中风电实际功率(部分示意,缺失值已填充)。如下:
[0064]
表3原始风电数据天气预报部分
[0065][0066]
表4原始风电数据中风电实际功率
[0067][0068]
表5原始风电数据中风电实际功率(缺失值已填充)
[0069][0070]
imwp数据集不完整,无法直接评估插值方法的质量。通过间接测量本发明方法和其他方法的填充精度。本发明方法的超参数为:训练次数为100次,学习率为0.001,λ为0.2。通过不同的方法对结果进行插值,使用随机森林回归模型和lstm神经网络模型(三层,单元为32、64、94,损耗使用mae,优化器为adam)和其他回归模型预测未来风电数据,通过计算预测数据与实际数据之间的均方误差和均方根误差,间接判断填充法的优劣。将imwp数据集标准化为(0,5)区间,并使用预测风电数据和实际功率数据计算均方根误差。在图4中,可以看到本发明方法总是可以得到最佳的mse。
[0071]
通过本发明的实施步骤,由图3和图4可以看出本发明将实例中采集到的原始数据经过缺失值填补之后,很好的解决了数据采集过程中多因素造成的误差,综合了风电数据的连续性,进一步提高了预测的准确性,为电力调度部门等提供了更准确的预测结果。
[0072]
虽然本发明已经通过优选实施例进行了描述,然而本发明并非局限于这里所描述的实施例,在不脱离本发明范围的情况下还包括所做出的各种改变以及变化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献