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

基于LSTM-AE集成共享框架的风电机组异常数据检测及清洗方法

2022-04-16 13:40:34 来源:中国专利 TAG:

基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法
技术领域
1.本发明属于风电机组异常数据检测与清洗领域,涉及一种基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法。


背景技术:

2.能源短缺问题作为限制当今国际社会维持高速发展的主要问题,风能作为可再生,可持续的清洁能源,正迅速成为碳中和能源战略的重要组成部分,风电场数量及规模不断扩大。但风能本身的不确定性导致风电并网后电网系统容易出现大规模的功率波动,影响了系统的安全运行,为了使得风能成为可靠的能源来源,通过高质量的风电机组运行数据建立高效、精准的风电监测和预测模型十分重要。但是风电机组受设备质量、工作环境、运行状态等因素影响,采集的风电机组运行数据中会存在大量不符合风力发电机组正常输出特性的异常数据。这些“脏数据”的存在会影响进一步的预测建模分析,造成信息的误判,甚至导致对电网系统的安全运行产生不利影响,因此对风电机组运行数据中的异常数据进行有效的检测与清洗是提高预测建模分析精度的必要前提,寻找一种可靠的风电机组异常数据检测与清洗方法具有重要的探究意义。
3.通过风电场的数据采集与监视(scada)系统进行收集风电机组运行数据是常见手段。风电机组运行数据中的异常数据主要是由于风电机组的实际工况与设计工况出现较大偏离以及传感器故障与传输噪声产生。目前存在很多基于scada系统数据的风电机组异常数据检测及清洗方法,主要可分为两大类。一种是基于数理统计的方法主要是根据数据的分布特征结合先验的理论知识通过数理统计的方法进行异常数据检测,此类方法在建模时忽略了风电机组运行数据在时序上的特点,因此该类方法很难准确的描述风电机组运行状态下的变化趋势导致的异常。另一种是基于人工智能的方法主要从数据自身的特性与结构出发,通过深度学习的方式挖掘数据隐藏的深层信息,能有效处理高维变量,通过时序相关的模型可有效学习风电机组运行状态的变化趋势,能对变化趋势中的异常进行有效的识别。例如基于lstm-ae网络模型的风电机组数据异常检测方法,如图3所示结合了lstm有效处理时序序列的特点与ae能有效提取数据的本质特征的优势,学习并重建输入序列,使用重建误差进行异常检测。但是在实际应用过程中原始数据中部分机组可能会出现异常数据占整体比重过大的情况,导致基于单机组的运行数据建模时在训练阶段对该机组的数据过拟合,在检测阶段对正常数据与异常数据不能明显分化,导致准确率较低。风电机组运行数据的各个性能参数在不同的工况下变化幅度差异较大,不同的工况下对重构误差的判定标准是不同的,传统的固定阈值对重构误差进行异常清洗的方式容易出现错判与漏判现象。


技术实现要素:

4.为了解决现有技术中不足,本技术提出了基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法,以提高整体风电场中风电机组模型的异常数据检测精度及清洗
准确性。针对实际应用过程中原始数据中的部分机组可能会出现异常数据占整体比重过大的情况,导致基于单机组的运行数据建模时在训练阶段对该机组的数据过拟合,在检测阶段对正常数据与异常数据不能明显分化,致使准确率较低的问题,此发明通过在训练过程中联合进邻机组的数据帮助进行训练的思路,提出一种能在模型训练过程中优化参数调整各个机组数据影响比重的隐藏状态共享模块,并结合lstm-ae网络模型结构设计了能有效进行多机组模型联合训练的集成共享框架。针对传统的通过固定阈值对重构误差进行异常清洗的方式容易出现错判与漏判现象的问题,本发明通过ae网络构建误差在多元高斯分布中的概率密度与对应重构值间期望函数,提出了自适应阈值的清洗方法,通过对比重构值的期望误差概率密度与实际误差的概率密度在不同工况下自适应的调整对应的误差阈值,提高异常数据清洗的准确性。
5.本发明所采用的技术方案如下:
6.基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法,包括如下步骤:
7.步骤一、对同一风电场中n个近邻风电机组的scada数据预处理获得n个拥有相同时间戳的原始时间序列;
8.步骤二、构建基于lstm-ae集成共享框架,集成共享框架包括滑动窗口扩增层、编码层、隐藏状态共享层和解码层;所述滑动窗口扩增层的输入为原始时间序列,滑动窗口扩增层对对齐后的数据进行特征工程处理得到扩增时序序列;
9.编码层中的编码器对扩增时序序列进行学习得到隐藏状态,并输入至隐藏状态共享层;
10.隐藏状态共享层在模型训练过程中优化并调整各个机组隐藏状态的影响比重得到共享隐藏状态,输出共享隐藏状态至解码层;
11.解码层通过输入的共享隐藏状态对扩增时序序列进行重构,输出对应的扩增时序序列;
12.通过叠加风电机组的重构误差以及惩罚项获得集成共享框架损失函数,将损失函数引入共享隐藏状态作为惩罚项进行多机组模型联合训练。
13.步骤三、基于训练好集成共享框架,将训练后的集成共享框架中的编码器ei与解码器di对应拆分,由再编码器ei与解码器di构建单个风电机组的lstm-ae模型;并进行异常数据检测;
14.步骤四、设定清洗指标ξ,通过对比重构值的期望误差概率密度与实际误差的概率密度进行异常判定并清洗。
15.进一步,构建隐藏状态共享层的方法为:
16.在编码层与解码层中添加隐藏状态共享模块,为编码层e=(e1,e2...en)中的每个编码器设计一个线性权重矩阵共享隐藏状态是通过叠加每个隐藏状态与对应线性权重矩陌的积组成,表示如下:
[0017][0018]
其中,函数f(
·
)为线性叠加函数,将共享隐藏状态作为解码层d=(d1,d2...dn)中每个解码器的输入。
[0019]
进一步,多机组模型联合训练:
[0020]
基于每个风电机组的重构误差lossi以及惩罚项获得集成共享框架损失函数,表示如下:
[0021][0022]
其中,lossi表示机组i的重构误差,loss表示集成共享框架损失函数,为惩罚项,λ是控制在损失函数中惩罚效果的重要权重;分别是机组i中扩增序列与重构序列中第j个向量。
[0023]
进一步,异常数据检测:
[0024]
使用机组i经过滑动窗口扩增后的扩增时序序列作为机组i的lstm-ae模型的输入,通过解码器得到模型输出的重构序列ae模型的输入,通过解码器得到模型输出的重构序列是第i个机组的重构序列中的第x个重构值;计算输入的扩增时序序列与重构序列的误差,得到误差向量序列表示如下:
[0025]ej
=|h
j-h
″j|
[0026]e′i=(e1,e2...)
[0027]
其中,ej为误差向量中第j个向量参数;|
·
|为绝对值函数,hj及h
″j分别是扩增向量与重构向量中第j个参数,为ei中的第x个误差向量。
[0028]
进一步,自适应阈值清洗过程:
[0029]
步骤1,建立多元高斯分布模型:对误差向量序列ei标准化处理,再建立ei的多元高斯分布模型ei~n(μ,∑),通过最大似然法给出多元高斯分布模型参数μ和∑的估计量;
[0030]
步骤2,拟合误差向量的概率密度与重构值间的非线性期望函数:误差向量在多元高斯分布中的概率密度如下:
[0031][0032]
使用ae网络拟合误差概率密度与重构值的非线性期望函数,即期望误差概率密度估计器f:如下:
[0033][0034]
其中,w
p
为拟合ae网络的权重系数矩阵,b
p
为其偏移量,f为期望误差概率密度估计函数;
[0035]
步骤3,设定清洗指标ξ,通过对比重构值的期望误差概率密度与实际误差的概率密度进行异常判定并清洗,如下:
[0036]
[0037]
其中,f(
·
)为期望误差概率密度估计器,η为设定的误差偏移量;通过设置η,自适应调整误差阈值,若ξ为正,则表示该误差向量所对应的输入向量为异常数据,需要进行清洗。
[0038]
进一步,将开始时间的最晚时刻至结束时间的最早时刻作为整体风电机组scada数据的时间区间,根据时间区间,对各个风电机组的scada数据进行过滤并排序,得到每个机组对应的相同时间戳的原始时间序列,完成对scada数据的预处理。
[0039]
进一步,滑动窗口扩增层生成扩增时序序列:在输入的每个机组的原始时间序列t=(s1,s2...sc)上使用跨度2n,以n为间隔的窗口进行滑动,并计算每个窗口区间内向量集合中每个向量参数的统计特征与衍生特征,将统计特征与衍生特征作为新的扩增向量,进而得到新的短时相关性扩增时序序列t

=(h1,h2...hk)。
[0040]
本发明的有益效果:
[0041]
本发明应用于风电机组异常数据检测与清洗领域,对风电机组运行数据中的异常数据可进行有效的检测及清洗,对建立高效、精准的风电监测和预测模型具有重要意义。针对实际应用过程中原始数据中的部分机组可能会出现异常数据占整体比重过大的情况,导致基于单机组的运行数据建模时在训练阶段对该机组的数据过拟合,在检测阶段对正常数据与异常数据不能明显分化,致使准确率较低的问题,此发明通过在训练过程中联合其他机组的数据帮助进行训练的思路,提出一种能在模型训练过程中优化参数调整各个机组数据影响比重的隐藏状态共享模块,并结合lstm-ae网络模型结构设计了能有效进行多机组模型联合训练的集成共享框架。针对传统的通过固定阈值对重构误差进行异常清洗的方式容易出现错判与漏判现象的问题,本发明通过ae网络构建误差在多元高斯分布中的概率密度与对应重构值间期望函数,提出了自适应阈值的清洗方法,通过对比重构值的期望误差概率密度与实际误差的概率密度在不同工况下自适应的调整对应的误差阈值,提高异常数据清洗的准确性。
附图说明
[0042]
图1为本发明所述基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法总体流程示意图;
[0043]
图2为本发明所述基于lstm-ae集成共享框架结构图;
[0044]
图3为本发明所述基本lstm-ae模型结构图。
具体实施方式
[0045]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
[0046]
如图1所示,根据本发明的实施例,基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法包括四个基本步骤:scada数据预处理;构建基于lstm-ae集成共享框架并训练;重组机组对应基本lstm-ae模型并进行异常数据检测;自适应阈值清洗。步骤一、scada数据预处理
[0047]
在本实施例中,以同一风电场中9个近邻风电机组同一年的scada数据为例,本次
使用的scada数据中风电机组带时间戳的工况数据的采集周期为2017年11月~2018年10月,采集时间间隔为10min,监测的性能参数有风速、功率以及风轮转速;数据集中时序序列数据共计497837条。
[0048]
从九个风电机组的所有scada数据中,将开始时间的最晚时刻至结束时间的最早时刻作为整体风电机组scada数据的时间区间。根据时间区间,对各个风电机组的scada数据进行过滤并排序,得到9个拥有相同时间戳的原始时间序列,原始时间序列中每个向量包含风速、功率以及风轮转速信息。
[0049]
在同一风电场同一时间段内,风电机组群的运行状态及变化趋势应是相同的,因此在lstm-ae同构模型中的隐藏状态信息是相同的,对原始scada数据进行数据对齐,在后续整体联合训练时,共享的隐藏状态为同一时刻数据的隐藏状态。
[0050]
步骤二、构建基于lstm-ae集成共享框架并进行训练
[0051]
集成共享框架包括滑动窗口扩增层、编码层、隐藏状态共享层和解码层;其中,将对齐后的数据(即原始时间序列)作为滑动窗口扩增层的输入,滑动窗口扩增层对对齐后的数据进行特征工程处理得到扩增时序序列。
[0052]
编码层中的编码器对扩增时序序列进行学习得到隐藏状态,并输入至隐藏状态共享层;
[0053]
隐藏状态共享层在模型训练过程中优化并调整各个机组隐藏状态的影响比重得到共享隐藏状态,输出共享隐藏状态至解码层,
[0054]
解码层通过输入的共享隐藏状态对扩增时序序列进行重构,输出对应的扩增时序序列。训练时通过叠加多机组模型的损失函数并引入共享隐藏状态作为惩罚项进行多模型联合训练。
[0055]
本实施例中,构建基于lstm-ae集成共享框架的具体过程如下:
[0056]
步骤1,通过滑动窗口扩增层生成扩增时序序列:在输入的每个机组的原始时间序列t=(s1,s2...sc)上使用跨度2n,以n为间隔的窗口进行滑动,并计算每个窗口区间内向量集合中每个向量参数的统计特征与衍生特征,将统计特征与衍生特征作为新的扩增向量,进而得到新的短时相关性扩增时序序列t

=(h1,h2...hk),统计特征与衍生特征包括均值(mea)、最大值(max)、最小值(min)、标准差(std)、峰间距(p2p)以及三个四分位数,得到的扩增时序序列的特征空间比原始时间序列大得多,有助于在模型训练过程中自动编码器识别出最具代表性的特征;其中,si为原始时间序列第i个向量;i=1、2、..、c,c为原始时间序列长度。hj为第j个窗口区间生成的扩增向量。j=1、2、..、k,k为窗口个数;
[0057]
步骤2,构建编码层与解码层:编码层有9个相同结构的编码器ei,解码层有9个相同结构的解码器di,记作e=(e1,e2...e9)与d=(d1,d2...d9),将机组i经过滑动窗口扩增后的扩增时序序列输入编码层e中对应的编码器ei中,编码器对输入的扩增时序序列进行学习得到隐藏状态,解码器di接收隐藏状态后对扩增时序序列进行重构得到
[0058]
步骤3,构建隐藏状态共享层:在编码层与解码层中添加隐藏状态共享模块,为编码层e=(e1,e2...e9)中的每个编码器设计一个线性权重矩阵共享隐藏状态是通过
叠加每个隐藏状态与对应线性权重矩阵的积组成,具体公式如下:
[0059][0060]
其中,表示机组i在编码层e中的编码器ei所输出的隐藏状态,表示其对应的线性权重矩阵,在训练过程中可学习并通过调整权重降低异常机组的隐藏状态在共享隐藏状态中的影响比重,使得机组可通过正常数据比重大的共享隐藏状态训练其解码器,函数f(
·
)为线性叠加函数,表示隐藏状态共享层的整合输出,将共享隐藏状态作为解码层d=(d1,d2...dn)中每个解码器的输入;
[0061]
步骤4,多机组模型联合训练:基于每个风电机组的重构误差lossi以及惩罚项获得集成共享框架损失函数,具体公式如下:
[0062][0063][0064]
其中,lossi表示机组i的重构误差,loss表示集成共享框架损失函数,为惩罚项,λ是控制在损失函数中惩罚效果的重要权重;分别是机组i中扩增序列与重构序列中第j个向量。
[0065]
步骤三、基于训练好集成共享框架,构建单个风电机组的lstm-ae模型并进行异常数据检测
[0066]
步骤1,构建单个风电机组的lstm-ae模型:将训练后的集成共享框架中编码层e=(e1,e2...e9)与解码层d=(d1,d2...d9)中的编码器ei与解码器di对应拆分,由再编码器ei与解码器di构建单个风电机组的lstm-ae模型如图3所示。
[0067]
步骤2,异常数据检测:使用机组i经过滑动窗口扩增后的扩增时序序列步骤2,异常数据检测:使用机组i经过滑动窗口扩增后的扩增时序序列作为机组i的lstm-ae模型的输入,通过解码器得到模型输出的重构序列ae模型的输入,通过解码器得到模型输出的重构序列是第i个机组的重构序列中的第x个重构值;计算输入的扩增时序序列与重构序列的误差,得到误差向量序列具体公式如下:
[0068]ej
=|h
j-h
″j|
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3.1)
[0069]e′i=(e1,e2...)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3.2)
[0070]
其中,ej为误差向量中第j个向量参数;|
·
|为绝对值函数,hj及h
″j分别是扩增向量与重构向量中第j个参数,为ei中的第x个误差向量。
[0071]
步骤四、自适应阈值清洗
[0072]
步骤1,建立多元高斯分布模型:对误差向量序列ei标准化处理,再建立ei的多元高斯分布模型ei~n(μ,∑),通过最大似然法给出多元高斯分布模型参数μ和∑的估计量;
[0073]
步骤2,拟合误差向量的概率密度与重构值间的非线性期望函数:误差向量
在多元高斯分布中的概率密度具体公式如下:
[0074][0075]
使用ae网络拟合误差概率密度与重构值的非线性期望函数,即期望误差概率密度估计器f:公式如下:
[0076][0077]
其中,w
p
为拟合ae网络的权重系数矩阵,b
p
为其偏移量,f为期望误差概率密度估计函数;
[0078]
步骤3,设定清洗指标ξ,通过对比重构值的期望误差概率密度与实际误差的概率密度进行异常判定并清洗,具体公式如下:
[0079][0080]
其中,f(
·
)为期望误差概率密度估计器,η为设定的误差偏移量。通过设置η,自适应调整误差阈值,若ξ为正,则表示该误差向量所对应的输入向量为异常数据,需要进行清洗。
[0081]
与其它流行的风电机组异常数据检测及清洗模型进行比较分析:为了验证集成共享框架及自适应阈值的有效性,本发明进行了大量的实验,将基于lstm-ae的集成共享框架同rnn-ae模型和lstm-ae模型在固定阈值与自适应阈值清洗效果的进行比较,使用9个风电机组的性能指标均值作为最终结果,结果如表1所示,f值为综合评估召回率和精确率的性能指标,越大越好,公式如下:
[0082][0083][0084][0085]
其中tp为判定正常且实际正常的样本数,fp为判定异常但实际正常的样本数,fn为判定异常但实际正常的样本数。
[0086]
表1清洗结果比较
[0087]
[0088][0089]
综上,本发明公开了基于lstm-ae集成共享框架的风电机组异常数据检测及清洗方法,属于风电机组异常数据检测与清洗领域,具体步骤如下:对scada系统数据按照机组分组后通过时间戳进行数据对齐;构建集成共享框架模型,其中滑动窗口扩增层通过特征工程对原始数据进行扩增,编码层中编码器对输入的扩增序列进行学习,隐藏状态共享层在模型训练过程中优化调整各个机组隐藏状态的影响比重并整合输出至解码层,解码层通过输入的共享隐藏状态对输入序列进行重构,叠加多机组模型的损失函数并引入共享隐藏状态作为惩罚项进行多模型联合训练;拆分集成共享框架并重组机组对应的基本lstm-ae模型,根据重构序列与输入序列计算得到误差序列;对误差序列进行多元高斯分布建模,通过ae网络构建误差的概率密度与重构值的期望函数,比较重构值的期望概率密度与实际误差概率密度从而进行数据清洗。本发明可以应用于风电机组异常数据检测与清洗,能有效识别并清洗风电机组运行数据中的异常数据。
[0090]
以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。
再多了解一些

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

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

相关文献