基于深度置信网络风电机组变桨系统的故障诊断

2019-09-20 00:54
测控技术 2019年5期
关键词:变桨分类器风电

(中国科学技术大学 信息科学技术学院,安徽 合肥 230026)

近年来,风能作为清洁能源受到了世界各国的青睐,飞速发展的风电在能源产业结构中起到了愈加重要的作用[1]。由于风电机组运行环境恶劣、工况复杂多变,机组故障发生率较高,每台风电机组的维修成本约占其总成本的20%~25%[2]。变桨系统是风电机组故障率较高且造成停机时间较长的关键子系统之一。因此,研究风电机组变桨系统的故障诊断技术,对于快速而准确地定位故障源,减少停机时间及降低机组维护成本,具有重要的现实意义。

目前,专家学者对风电机组变桨系统故障诊断研究主要是基于数据驱动方法,特别是大型风电场均安装了数据采集与监控(Supervisory Control and Data Acquisition,SCADA)系统,基于风电机组SCADA系统运行数据进行风电机组故障诊断已成为研究热点[3]。肖成[4]通过分析处理SCADA系统数据,采用小波BP(Back Propagation)神经网络建立变桨系统故障诊断预测模型;童超[5]通过Relief算法进行特征选择并结合BP神经网络对变桨距不对称进行故障诊断;郭慧东[6]采用最小二乘支持向量机构建非线性多输入多输出模型对变桨系统进行故障诊断;叶春霖[7]等基于数据挖掘算法对风电机组叶片结冰故障进行了有效诊断。上述方法依赖领域专家诊断经验及大量的信号处理技术提取出故障特征。由于大量人工参与,提取的特征具有一定的不确定性。此外,采用传统机器学习方法进行故障诊断,难以表征监测数据与机组健康状况之间复杂的映射关系,并可能存在维数灾难问题。

深度置信网络(Deep Belief Networks,DBN)[8]是由多伦多大学教授Hinton等人于2006年首次提出的一种新兴机器学习算法,在很多领域如图像识别、语音识别等取得了显著的成果。DBN相较于传统机器学习算法如决策树[9]、支持向量机(Supported Vector Machine,SVM)[6]及人工神经网络 (Artifical Neural Network,ANN)[4]等,有着强大的特征自提取能力和复杂非线性关系的表达能力。Tamilselvan等人在2013年首次将DBN应用于飞机发动机故障诊断并取得了显著效果[10]。Tran等人融合了TKEO算法和DBN,采用人工提取特征和DBN分类,用于压缩机阀门故障诊断,取得了更高的准确率[11]。本文利用DBN的这些优点,研究了DBN故障特征自提取能力,对风电机组变桨系统故障数据进行特征提取,建立故障诊断模型,最终完成对风电机组变桨系统的故障诊断。

1 深度置信网络(DBN)

深度学习是一种新兴机器学习算法,模拟人类大脑处理信号的多层次结构,通过大量数据训练学习到潜在的数据规律。DBN则是深度学习中研究最早,也是经典算法之一,通过深层次结构自动提取抽象特征,能够表达复杂的非线性关系。DBN是由多个受限玻尔兹曼机(Restricted Botlzmann Machine,RBM)堆叠而成的多隐藏层深度神经网络,通过无监督逐层贪婪学习算法对多个受限玻尔兹曼机预训练,再采用有监督反向传播算法微调完成网络权重的训练,最后通过顶层的分类器完成对数据的分类。

1.1 受限玻尔兹曼机(RBM)

RBM具有两层网络结构,包含可见层(visible layer)和隐藏层(hidden layer),层内无连接,层间全连接[8,12]。可见层状态向量v=(v1,v2,…,vnv)T,可见层偏置向量a=(a1,a2,…,anv)T,隐藏层状态向量h=(h1,h2,…,hnh)T,隐藏层偏置向量b=(b1,b2,…,bnh)T,层次间连接权重W=(wi,j)∈Rnh×nv,θ=(W,a,b)表示RBM的参数集。

RBM是基于能量的模型,对给定的一组状态(v,h),定义能量函数为

Eθ(v,h)=-aTv-bTh-hTWv

(1)

由式(1)可以给出(v,h)的联合概率分布,其中,Zθ为归一化因子

Pθ(v,h)=exp[-Eθ(v,h)]/Zθ

(2)

(3)

在RBM网络中给定可见层(或隐藏层)单元状态时,隐藏层(或可见层)上某单元被激活的概率为

(4)

(5)

其中,sigmoid函数是激活函数。给定训练样本,训练RBM目标是迭代更新θ,以拟合训练样本,使得由RBM表示的概率分布尽可能与训练数据一致。

假定训练样本集为

S={v1,v2,…,vns}

(6)

(7)

连乘式处理较为麻烦,将对数似然函数作为优化的目标

(8)

采用梯度上升法迭代更新RBM参数,计算公式如下:

(9)

(10)

(11)

RBM参数迭代更新格式如下:

(12)

其中η>0为学习率。

1.2 DBN结构

DBN由多个堆叠RBM和一个分类器组合而成,对多个RBM进行堆叠,底层隐藏层作为高一层的可见层,通过无监督贪婪学习算法逐层优化网络间连接权重和偏置,可以从复杂监测数据中逐层提取更深层次的特征[12]。高层RBM的隐藏层作为特征提取层,输入到分类器,对数据进行分类。DBN基本结构如图1所示。可以看出,该DBN模型由两个RBM和分类器组成,第一层和第二层形成RBM1,第二层和第三层形成RBM2,共堆叠了两个RBM,这里做了简化,实际中会堆叠更多的RBM。将RBM2隐藏层提取到的特征输入顶层分类器中,对数据进行分类。

1.3 DBN训练

DBN模型的训练包括无监督逐层贪婪预训练和有监督微调两部分。先通过逐层预训练将网络模型的参数初始化为较优的值,再通过标签数据进行有监督微调。逐层预训练算法伪代码如下。

算法1 深度置信网络的逐层预训练方法

输入:训练样本集:S={v1,v2,…,vns};学习率:η;

图1 DBN基本结构

网络层数:L;第l层权重:W(l);第l层权重:a(l); 第l层权重:b(l);

1: forl=1…Ldo

2: 初始化:W(l)←0,a(l)←0,b(l)←0;

4: fori=1…l-1 do

5: 根据分布P(h(i)|v(i-1))采样h(i);

6: end

7: 将h(l-1)作为训练样本,充分训练第l个RBM

参数W(l),a(l),b(l);

8: end

输出:连接权重W(1),…,W(L),可见层偏置a(1),…,a(L),

隐藏层偏置b(1),…,b(L)

在DBN模型顶层设置softmax分类器,接收最高层RBM隐藏层输出作为输入特征向量,根据标签数据对分类器进行有监督训练。预训练阶段可以确保单个RBM层自身层内达到最优,并不是整个DBN模型最优。有监督训练过程将错误信息反向传播到每一层RBM,进行参数微调,与预训练阶段每次单独训练一层RBM参数相比,有监督阶段会对所有层参数进行更新。

2 风电机组变桨系统故障诊断框架

基于DBN的风机变桨系统故障诊断框架如图2所示,主要包括以下几个步骤:

① 采集数据。采集风电机组变桨系统不同故障模式下SCADA系统监测的运行数据,并与正常运行数据构建风电机组变桨系统故障数据集。

② 数据预处理。神经网络模型训练必须对原始数据进行归一化处理,加速网络训练速度,同时避免不同数量级特征带来的数值问题。

③ 划分为训练集和测试集。将上述变桨系统故障数据集以7∶3比例随机划分为训练集和测试集,分别用于训练DBN模型和测试故障分类效果。

④ 训练DBN。DBN训练过程包括两部分,无监督的逐层贪婪训练和有监督的微调。利用训练数据集,先对由多个RBM堆叠而成的深层网络进行无监督训练,逐层提取特征。再通过在深度置信网络顶层增添标签数据,对网络进行有监督训练,即使用BP算法对网络所有层参数进行更新。

⑤ 故障诊断。输入测试数据集,利用训练好的DBN进行故障分类。

图2 基于DBN的风电机组变桨系统故障诊断框架

3 实例分析

3.1 实验数据

本次实验所用数据均来自内蒙古某风场SCADA系统采集到的风电机组真实运行数据,包含了风机运行的环境参数、工况参数、状态参数和控制参数等。选取同一规格风电机组下多组数据,其中包括3组变桨系统故障状态数据,分别为齿形带断裂故障、变桨运行模式故障和变桨桨距不对称故障。结合风电机组正常运行状态,将变桨系统状态简记为4类:故障1、故障2、故障3和正常。 对每类状态数据进行随机划分,切分为训练集和测试集,数据规模如表1所示。

表1 风电机组变桨系统4种运行状态

3.2 DBN特征提取能力研究

DBN是由多个RBM堆叠而成的多隐层深度神经网络,原始输入数据作为可见层,经底层RBM学习后输出隐藏层,并作为上一层RBM的可见层输入,依次逐层传递。为探讨DBN故障特征自提取能力,在多个堆叠RBM后未构建顶层softmax分类器,直接将高层RBM隐藏层导入解码网络,重构原始输入数据。假设原始输入数据为x,RBM隐藏层输出(编码函数)定义为

(13)

相应的解码函数定义为

(14)

(15)

(16)

定量评估方法借鉴文献[13]中对失真度的定义,采用相对均方差值定义失真度S,并结合均方根误差(Root Mean Square Error,RMSE)从两个指标进行评估。

(17)

(18)

DBN模型采用经典的4层网络[12,14],输入层节点数为130,由原始数据特征数决定,隐藏层分别100,100,输出层为40。RBM的参数设置:学习率为0.01,最大迭代次数为50。图3为节点数130-100-100-40的DBN模型训练后,原始输入数据曲线与重构曲线的定性结果。表2给出了不同输出层节点数下,两者的定量评估指标。

输出层节点数RMSE失真度(×10-3)200.243540.30393400.242960.30249600.242630.30169800.242390.301091000.242200.30060

由表2可知,节点数从20变化到100,重构效果越来越好,当输出层节点数为100时,DBN重构数据与原始输入数据的RMSE和失真度最小。结合图3,可以表明DBN高层特征可以低失真度地恢复原始输入数据,即提取到的深层次特征在一定程度上可以表征原始输入,进而可以说明DBN具有很强保持原有数据细节的能力,也在一定程度上解释了深度学习无需人工特征提取过程却拥有自主学习相关特征的能力。

3.3 风电机组变桨系统故障诊断

在前面故障特征自提取研究的基础上,将多堆叠RBM输出节点设置为40,DBN模型其他参数设置不变,输入到顶层softmax分类器中,进行风电机组变桨系统故障诊断。同时,为了探究DBN模型在风电机组变桨系统故障诊断时较传统浅层机器学习算法的优劣,本文采用了随机森林(Random Forest)、线性支持向量机(Linear-SVM)和RBF核支持向量机(RBF-SVM)进行对比实验,对故障数据集采用了统一的数据预处理方法,并使用主成分分析技术提取主要故障特征,均采用70%的故障数据集训练模型,30%作为测试集,为消除算法随机性,每个实验重复进行10次,测试集准确率结果如图4所示。

图4 不同分类器多次实验结果

各个分类器风电机组变桨系统故障诊断测试集的平均准确率如表3所示。

表3 各个分类器诊断结果对比

由表3及图4可以看出,DBN在测试集上取得了95.59%的准确率,RBF-SVM分类器次之,准确率为91.33%,RF和Linear-SVM准确率较差些,约84.6%左右。同时,与其他分类器不同,DBN模型多堆叠RBM具有故障特征自提取能力,能够提取深层次故障特征。而测试集上的表现,也说明了DBN模型在风电机组变桨系统故障诊断中明显优于其他模型,具有很好的泛化能力。

4 结束语

本文研究了基于DBN的风电机组变桨系统故障诊断方法,并通过变桨系统故障数据验证了该方法的有效性。DBN通过多堆叠受限RBM能够逐层自动提取故障特征,高层RBM输出可以低失真度地重构原始输入数据。实验结果表明,与传统浅层机器学习算法相比,该方法避免了人工提取特征的不确定性,同时能够有效地诊断风电机组变桨系统故障,具有较高的准确率。

猜你喜欢
变桨分类器风电
风电变桨轴承保持架耐磨技术研究
风力发电机组变桨系统探析
风电偏航与变桨轴承滚道直径测量尺结构改进
海上风电跃进隐忧
分散式风电破“局”
风电:弃风限电明显改善 海上风电如火如荼
基于差异性测度的遥感自适应分类器选择
基于实例的强分类器快速集成方法
变速风力发电机组变桨距建模与仿真
重齿风电