尹詩,侯國(guó)蓮,胡曉東,周繼威
(1.中能電力科技開發(fā)有限公司,北京 100034;2.華北電力大學(xué) 控制與計(jì)算機(jī)工程學(xué)院,北京 102206)
由于風(fēng)電機(jī)組所處運(yùn)行環(huán)境惡劣,受氣象、設(shè)備老化等多種不確定因素的影響,容易出現(xiàn)性能與運(yùn)行狀態(tài)劣化,從而造成關(guān)鍵部件失效。風(fēng)電機(jī)組主軸承連接著輪轂與齒輪箱,作為重要的機(jī)械傳動(dòng)部件之一,其可靠性要求較高,但主軸承內(nèi)部結(jié)構(gòu)和受力較復(fù)雜,且常常運(yùn)行在重負(fù)荷、強(qiáng)沖擊的工作狀態(tài)下,容易發(fā)生磨損、不對(duì)中、不平衡等問題[1]。風(fēng)電機(jī)組主軸承一旦損壞,受限于維修過程的復(fù)雜,其維修費(fèi)用高、周期長(zhǎng),嚴(yán)重影響風(fēng)電場(chǎng)的經(jīng)濟(jì)效益。
風(fēng)電機(jī)組故障診斷研究目前主要集中在振動(dòng)信號(hào)分析法方法、SCADA 數(shù)據(jù)分析方法、視頻圖像檢測(cè)方法、潤(rùn)滑油檢測(cè)方法、聲發(fā)射信號(hào)檢測(cè)方法、應(yīng)變傳感信號(hào)檢測(cè)方法等[2]。數(shù)據(jù)挖掘方法能夠在大量數(shù)據(jù)中發(fā)現(xiàn)隱含的知識(shí)或潛在規(guī)律,因此近年來在各行業(yè)中具有廣泛的研究和應(yīng)用。隨著數(shù)據(jù)挖掘算法的不斷發(fā)展,一些算法逐漸被應(yīng)用到故障預(yù)警和故障辨識(shí)中[3]。目前基于數(shù)據(jù)挖掘的風(fēng)電機(jī)組的狀態(tài)監(jiān)測(cè)研究主要基于采集與監(jiān)視控制系統(tǒng)(supervisory control and data acquisition,SCADA) 時(shí)序數(shù)據(jù),利用相關(guān)智能學(xué)習(xí)算法建立設(shè)備部件的正常運(yùn)行模型,通過分析正常模型預(yù)測(cè)值與實(shí)際觀測(cè)值之間的殘差進(jìn)行狀態(tài)監(jiān)測(cè)。文獻(xiàn)[4]利用深度置信網(wǎng)絡(luò)建立發(fā)電機(jī)同步定子故障預(yù)警模型,對(duì)殘差設(shè)定故障閾值進(jìn)行狀態(tài)監(jiān)測(cè)。文獻(xiàn)[5]利用BOX-COX 變換和相對(duì)熵對(duì)殘差進(jìn)行分析,對(duì)齒輪箱進(jìn)行狀態(tài)監(jiān)測(cè)。文獻(xiàn)[6]利用數(shù)據(jù)分類重建和提取衰退指標(biāo)的方法對(duì)齒輪箱進(jìn)行狀態(tài)監(jiān)測(cè)。文獻(xiàn)[7]將DS 證據(jù)理論應(yīng)用于SCADA 警報(bào)分析對(duì)風(fēng)電機(jī)組進(jìn)行故障診斷。文獻(xiàn)[8]通過提取風(fēng)電機(jī)組SCADA 系統(tǒng)中的實(shí)際運(yùn)行數(shù)據(jù),采用雙向遞歸神經(jīng)網(wǎng)絡(luò)建立風(fēng)電機(jī)組運(yùn)行預(yù)測(cè)模型,根據(jù)滑動(dòng)窗口的實(shí)際值與實(shí)測(cè)值之間的殘差,利用萊特準(zhǔn)則實(shí)現(xiàn)故障預(yù)警。
以上方法對(duì)殘差進(jìn)行分析時(shí)需要人為設(shè)定故障預(yù)警閾值,所述方法適用于某一特定風(fēng)電場(chǎng),其泛化性有待提升。文獻(xiàn)[9]利用SCADA 數(shù)據(jù)提出了基于工況辨識(shí)的Bi-RNN 神經(jīng)網(wǎng)絡(luò),建立預(yù)警模型對(duì)風(fēng)電機(jī)組主軸承運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè),該方法在故障決策方面引入隨機(jī)森林算法避免人為設(shè)定故障閾值,但由于故障發(fā)生前SCADA 數(shù)據(jù)不全是表征故障的數(shù)據(jù),所建立的狀態(tài)決策模型精度有待提升。
上述研究在不同程度上對(duì)風(fēng)電機(jī)組關(guān)鍵核心部件的狀態(tài)監(jiān)測(cè)和故障預(yù)警起到了推動(dòng)作用,但是普遍存在泛化性弱,故障決策受主觀因素影響、缺乏理論支撐等問題,限制了狀態(tài)監(jiān)測(cè)模型的工程實(shí)用性。
因此,本文以風(fēng)電機(jī)組主軸承溫度為研究對(duì)象,提出了一種基于輔助分類生成對(duì)抗網(wǎng)絡(luò)(auxiliary classifiergenerative adversarial networks,ACGAN)數(shù)據(jù)重構(gòu)的風(fēng)電機(jī)組主軸承狀態(tài)監(jiān)測(cè)方法對(duì)其運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè)。
溫度是風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)中較為重要的觀測(cè)指標(biāo),具有很強(qiáng)的抗干擾性,不會(huì)輕易因環(huán)境或工況變化產(chǎn)生劇烈跳躍變化。正常情況下,軸承溫度隨著軸承開始運(yùn)行緩慢上升,后續(xù)達(dá)到穩(wěn)定運(yùn)行狀態(tài)。風(fēng)電機(jī)組主軸承溫度隨著熱容量、散熱速度、轉(zhuǎn)速和負(fù)載而發(fā)生變化。但機(jī)械傳動(dòng)設(shè)備在運(yùn)行過程中產(chǎn)生的磨損、潤(rùn)滑不良、屏蔽不良等問題往往會(huì)導(dǎo)致溫度數(shù)據(jù)異常,如果主軸承長(zhǎng)期在高溫下運(yùn)行,其運(yùn)行壽命將會(huì)大大縮短,甚至?xí)鸶鼮閲?yán)重的故障事故[10]。因此,本文重點(diǎn)分析風(fēng)電機(jī)組主軸承溫度參數(shù)的變化,監(jiān)測(cè)并實(shí)時(shí)掌握主軸承運(yùn)行狀態(tài),發(fā)現(xiàn)其潛在隱患。風(fēng)電機(jī)組主軸承溫度預(yù)測(cè)模型的準(zhǔn)確度、泛化能力以及狀態(tài)決策模型的準(zhǔn)確度決定著主軸承狀態(tài)監(jiān)測(cè)的精準(zhǔn)度。建模流程如圖1 所示。
圖1 建模方法流程Fig.1 Flow chart of the modeling method
首先,利用SCADA 時(shí)序數(shù)據(jù)建立基于輕型梯度增強(qiáng)學(xué)習(xí)器(light gradient boosting machine,LightGBM)的主軸承溫度預(yù)測(cè)模型,定義模型預(yù)測(cè)輸出溫度與實(shí)際觀測(cè)溫度之差為殘差。相較于其他算法,LightGBM 算法無需通過計(jì)算所有樣本信息增益,其內(nèi)置的特征降維技術(shù)具有較高的預(yù)測(cè)精度和較快的訓(xùn)練速度,比較適合于工程實(shí)現(xiàn)。
其次,通過滑動(dòng)窗口和統(tǒng)計(jì)過程控制(statistical process control,SPC)方法將異常主軸承殘差中的正常殘差和異常殘差進(jìn)行有效區(qū)分。利用AC-GAN 輔助分類生成對(duì)抗網(wǎng)絡(luò)生成與主軸承異常殘差分布相似的殘差數(shù)據(jù)集,用來替換異常主軸承殘差分布中的正常殘差數(shù)據(jù)集。由于風(fēng)電機(jī)組異常主軸承的殘差特征不全表征為異常狀態(tài),無法統(tǒng)一進(jìn)行標(biāo)記。因此,利用AC-GAN 將溫度殘差特征進(jìn)行數(shù)據(jù)重構(gòu),得到異常主軸承下的殘差特征,從根本上解決了異常樣本數(shù)據(jù)的標(biāo)記問題,進(jìn)而提高了后續(xù)主軸承狀態(tài)決策模型的預(yù)測(cè)精度。
最后,建立基于自然梯度提升(natural gradient boosting,NGBoost)的狀態(tài)決策模型對(duì)風(fēng)電機(jī)組主軸承狀態(tài)進(jìn)行判斷。NGBoost 算法利用自然梯度進(jìn)行概率預(yù)測(cè),解決了傳統(tǒng)狀態(tài)決策方法中采用單一固定閾值或人為主觀設(shè)定閾值進(jìn)行風(fēng)電機(jī)組運(yùn)行狀態(tài)監(jiān)測(cè)的問題,提高了狀態(tài)決策模型的預(yù)測(cè)精度和泛化性。
本文所采用的SCADA 數(shù)據(jù)是河北某風(fēng)電場(chǎng)1.5 MW 雙饋式風(fēng)力發(fā)電機(jī)組的運(yùn)行數(shù)據(jù)。該風(fēng)電場(chǎng)的風(fēng)電機(jī)組切入風(fēng)速為3 m/s,切出數(shù)據(jù)為25 m/s。SCADA 數(shù)據(jù)每10 min 記錄一條,為了消除偶發(fā)性的故障對(duì)主軸溫度預(yù)測(cè)模型的影響,本文共選取該風(fēng)電場(chǎng)1.5 MW 機(jī)組共36 臺(tái)機(jī)組,包括23 臺(tái)主軸承正常機(jī)組,13 臺(tái)主軸承異常機(jī)組。這36 臺(tái)風(fēng)電機(jī)組生產(chǎn)廠家和型號(hào)相同,并且都是同一個(gè)風(fēng)電場(chǎng)的風(fēng)電機(jī)組,因此所利用的風(fēng)資源和地理環(huán)境相似,能夠表征該風(fēng)電場(chǎng)的所有運(yùn)行工況。SCADA 時(shí)序數(shù)據(jù)包括時(shí)間、風(fēng)速、風(fēng)向、有功功率、發(fā)電機(jī)轉(zhuǎn)速、葉輪轉(zhuǎn)速、偏航角度、環(huán)境溫度、齒輪箱油溫等百余個(gè)有效觀測(cè)數(shù)據(jù)。表1為部分SCADA 有效數(shù)據(jù)。
表1 SCADA 數(shù)據(jù)示例Table 1 Examples of SCADA data
由于風(fēng)電機(jī)組本身和SCADA 系統(tǒng)在運(yùn)行過程中掉電、傳感器損壞、系統(tǒng)宕機(jī)、通信設(shè)備故障等因素造成SCADA 數(shù)據(jù)中夾雜著很多異常噪聲數(shù)據(jù)。在建模前首先對(duì)數(shù)據(jù)進(jìn)行清洗,其過程如下:
1)采用分區(qū)間方法按風(fēng)速0.5 m/s 劃分子工況區(qū)間;
2)將小于切入風(fēng)速、大于切出風(fēng)速、有功功率小于或等于0 的數(shù)據(jù)剔除;
3)采用統(tǒng)計(jì)學(xué)中的四分位原理[11]對(duì)每個(gè)子工況區(qū)間的SCADA 數(shù)據(jù)進(jìn)行清洗。
為說明去除異常噪聲數(shù)據(jù)的效果,本文對(duì)2.1節(jié)提到的風(fēng)電機(jī)組歷史SCADA 數(shù)據(jù)進(jìn)行了異常噪聲數(shù)據(jù)去除,如圖2 所示。圖2(a)為該風(fēng)電機(jī)組歷史SCADA 數(shù)據(jù)過濾前的風(fēng)速功率曲線圖,圖2(b)為過濾后的風(fēng)速功率曲線圖。
圖2 SCADA 數(shù)據(jù)過濾前后風(fēng)功率對(duì)比圖Fig.2 Contrast chart of the wind-power before and after SCADA data filtering
風(fēng)電機(jī)組SCADA 數(shù)據(jù)中并非所有的時(shí)序數(shù)據(jù)均與風(fēng)電機(jī)組主軸承溫度相關(guān),為提高風(fēng)電機(jī)組主軸承溫度預(yù)測(cè)模型精度,同時(shí)降低模型訓(xùn)練時(shí)長(zhǎng),選取與風(fēng)電機(jī)組主軸承運(yùn)行狀態(tài)相關(guān)的特征子集。傳統(tǒng)的特征篩選方式為利用皮爾森相關(guān)系數(shù)或根據(jù)工程師相關(guān)經(jīng)驗(yàn)進(jìn)行確定,皮爾森相關(guān)系數(shù)對(duì)數(shù)據(jù)的要求必須服從正態(tài)分布,但風(fēng)電機(jī)組由于棄風(fēng)、限電等運(yùn)行工況的變化導(dǎo)致SCADA數(shù)據(jù)并不符合正態(tài)分布,且皮爾森相關(guān)系數(shù)受到數(shù)據(jù)異常值的影響較大,僅適用于某些特定場(chǎng)合下的風(fēng)電場(chǎng)或風(fēng)電機(jī)組。鑒于此,本文選取相關(guān)系數(shù)收斂快、可解釋性好且對(duì)數(shù)據(jù)分布沒有特殊要求的斯皮爾曼相關(guān)性分析方法提取直接或者間接反映風(fēng)電機(jī)組主軸承溫度特征的參數(shù)集[12],斯皮爾曼相關(guān)系數(shù)的計(jì)算步驟為:
1)SCADA 數(shù)據(jù)特征中主軸承溫度定義為Y,其他特征定義為Xi,將Xi和Y列所對(duì)應(yīng)的數(shù)據(jù)轉(zhuǎn)換為各自列向量的排名,記為R(Xi) 和R(Y)。
2)兩個(gè)列向量中對(duì)應(yīng)數(shù)據(jù)R(Xi) 和R(Y) 之間的差異d為
兩個(gè)列向量之間的相關(guān)性Rs為
式中:i為每一列SCADA 特征數(shù)據(jù);N為SCADA數(shù)據(jù)特征的長(zhǎng)度。斯皮爾曼系數(shù)高于0.5 時(shí)特征之間的相關(guān)性為強(qiáng)相關(guān),因此,通過斯皮爾曼相關(guān)性系數(shù)分析,得到SCADA 數(shù)據(jù)中與主軸承溫度相關(guān)性較高的特征,見表2 所示。因此,選取發(fā)電機(jī)轉(zhuǎn)速、葉輪轉(zhuǎn)速、機(jī)艙溫度等10 個(gè)特征。
表2 斯皮爾曼相關(guān)性系數(shù)Table 2 Spearman correlation coefficient
提取的特征數(shù)據(jù)中往往具有不同的量綱和量綱單位,為了消除特征數(shù)據(jù)之間的量綱影響,將數(shù)據(jù)歸一化處理,計(jì)算公式為
式中:x為每一個(gè)SCADA 特征數(shù)據(jù);xmean為特征數(shù)據(jù)的均值;xmax為特征數(shù)據(jù)的最大值;xmin為特征數(shù)據(jù)的最小值;xn為歸一化以后的特征數(shù)據(jù)。
極限梯度提升(eXtreme gradient boosting,XGBoost)算法是在自適應(yīng)增強(qiáng)(adaptive boosting,adaBoost) 算法和梯度提升迭代決策樹(gradient boosting decision tree,GBDT)算法基礎(chǔ)上優(yōu)化形成的算法[13],具有良好的預(yù)測(cè)精度和分類準(zhǔn)確率,在眾多領(lǐng)域得到了廣泛的應(yīng)用。但XGBoost 算法普遍存在訓(xùn)練耗時(shí)長(zhǎng)、內(nèi)存占比大等缺點(diǎn)。針對(duì)這些缺點(diǎn),Ke 等[14]做了相應(yīng)的改進(jìn),并在2017 年提出了LightGBM 算法。LightGBM 算法無需計(jì)算所有樣本信息增益,具有訓(xùn)練效率高、低內(nèi)存、高準(zhǔn)確率、并行化學(xué)習(xí)等優(yōu)勢(shì),較適合于工程實(shí)踐。
LightGBM 使用直方圖算法替換了GBDT 的預(yù)排序,能夠在不損害準(zhǔn)確率的前提下加快GBDT 模型的訓(xùn)練速度[15]。為保證結(jié)果準(zhǔn)確性,算法使用梯度單邊采樣技術(shù)過濾大部分小梯度數(shù)據(jù),在計(jì)算信息增益的時(shí)候只利用具有高梯度的數(shù)據(jù)信息;為大幅度減少占用內(nèi)存,采用獨(dú)立特征合并技術(shù)實(shí)現(xiàn)互斥特征的捆綁,減少樣本特征數(shù)據(jù)[16]。
假設(shè)訓(xùn)練一個(gè)具有T棵樹的LightGBM 模型,給定數(shù)據(jù)集為D={(xi,yi)|i=1,2,···,n,xi∈Rm,yi∈R},其中給定的數(shù)據(jù)集共有n個(gè)樣本,每個(gè)樣本xi對(duì)應(yīng)m個(gè)特征和一個(gè)標(biāo)簽值yi。LightGBM算法在迭代過程中,假設(shè)在前一輪迭代中得到的強(qiáng)學(xué)習(xí)器是ft?1(x),損失函數(shù)為L(zhǎng)(y,ft?1(x)),為了讓本輪迭代的損失函數(shù)最小,本輪迭代的目的是找到分類回歸樹模型的弱學(xué)習(xí)器ht(x),如式(1)所示:
利用損失函數(shù)負(fù)梯度擬合本輪損失函數(shù)近似值,從而擬合一個(gè)樹模型。第t輪的第i個(gè)樣本的損失函數(shù)L(yi,f(xi))的負(fù)梯度rti為
利用(xi,xti) 擬合一個(gè)CART 回歸樹,進(jìn)而得到t棵回歸樹所對(duì)應(yīng)的葉子節(jié)點(diǎn)的范圍為 Rti,i=1,2,···,J。其中J為葉子節(jié)點(diǎn)的樣本,當(dāng)損失函數(shù)最小時(shí)擬合葉子節(jié)點(diǎn)輸出值ct j為
式中:c是損失函數(shù)最小化時(shí)的常數(shù)值;xi∈Rt j表示樣本xi屬于第t棵樹下的第j個(gè)葉子節(jié)點(diǎn)。本輪的決策樹擬合函數(shù)為
式中:I(xi∈Rt j)是指示函數(shù),當(dāng)xi∈Rt j時(shí),指示函數(shù)的值為1,反之為0[17]。進(jìn)而本輪最終得到的強(qiáng)學(xué)習(xí)器的表達(dá)式為
選用10 臺(tái)主軸承正常機(jī)組的歷史SCADA 數(shù)據(jù)共38955 組,按上述方法進(jìn)行預(yù)處理后得到共25946 組數(shù)據(jù)。將數(shù)據(jù)集80%作為訓(xùn)練集,數(shù)據(jù)集20%作為測(cè)試集。本文所有試驗(yàn)運(yùn)行環(huán)境均為:操作系統(tǒng)為Windows10、python 版本為3.7.1、集成開發(fā)運(yùn)行環(huán)境為anaconda3,LightGBM 算法、XGBoost 算法和隨機(jī)森林算法調(diào)用sklearn 的API。后續(xù)使用的AC-GAN 生成對(duì)抗神經(jīng)網(wǎng)絡(luò)調(diào)用kears 深度學(xué)習(xí)框架API,NGBoost 算法調(diào)用斯坦福的NGBoost 框架。
對(duì)比分析LightGBM 算法、XGBoost 算法、CatBoost(categorical boosting)算法在風(fēng)電機(jī)組訓(xùn)練主軸承溫度預(yù)測(cè)模型的精度,如表3 所示。
表3 LightGBM、XGBoost 和CatBoost 建模性能比較Table 3 LightGBM,XGBoost,and Cat Boost modeling performance comparison
采用模型訓(xùn)練時(shí)間、均方根誤差RMSE 和決定系數(shù)r2指標(biāo)對(duì)建模精度進(jìn)行評(píng)價(jià),計(jì)算公式為
式中:yi為第i個(gè)主軸承溫度的真實(shí)測(cè)量值;為第i個(gè)主軸承溫度的預(yù)測(cè)值;為主軸承溫度的真實(shí)測(cè)量值的均值。LightGBM 算法在均方根誤差RMSE、決定系數(shù)r2指標(biāo)和訓(xùn)練時(shí)間上均優(yōu)于XGBoost 算法和CatBoost 算法。表4 為L(zhǎng)ight-GBM、XGBoost 和CatBoost 這3 種算法在測(cè)試集樣本中殘差特征對(duì)比。LightGBM 算法在測(cè)試集上的殘差最大值為0.129,殘差均值為0.022,基于LightGBM 的風(fēng)電機(jī)組主軸承溫度預(yù)測(cè)在測(cè)試集上 具有較高的預(yù)測(cè)精度。
表4 3 種算法測(cè)試集殘差特征對(duì)比Table 4 Comparison of residual characteristics of three algorithms in test data
基于LightGBM 算法的主軸承溫度預(yù)測(cè)模型在測(cè)試集上的殘差見圖3 所示。
圖3 主軸承溫度模型測(cè)試集殘差Fig.3 Residual error of the main bearing temperature model in the test data
基于AC-GAN 的主軸承溫度殘差重構(gòu)方法具體步驟為:首先,采用SPC 方法將主軸承異常機(jī)組殘差在控制范圍內(nèi)的正常殘差數(shù)據(jù)剔除;其次,將控制范圍之外的異常殘差數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),采用AC-GAN 生成對(duì)抗網(wǎng)絡(luò)生成與真實(shí)數(shù)據(jù)分布相似的數(shù)據(jù)替換被剔除的數(shù)據(jù)。
SPC 方法最初主要用來監(jiān)測(cè)生產(chǎn)產(chǎn)品中的質(zhì)量問題,如果生產(chǎn)過程中出現(xiàn)隨機(jī)質(zhì)量問題說明此過程處于統(tǒng)計(jì)過程當(dāng)中,如果出現(xiàn)故障問題說明此過程處于失控狀態(tài)[18]。
假設(shè)某產(chǎn)品在生產(chǎn)過程中的質(zhì)量特征沒有顯著的非正態(tài)因素,而是由很多隨機(jī)原因?qū)е?,則認(rèn)為該質(zhì)量特性服從正態(tài)分布[19]。其質(zhì)量特征X服從均值為 μ,標(biāo)準(zhǔn)差為 σ 的正態(tài)分布,則概率密度分布函數(shù)為
質(zhì)量特征在 [μ?3σ,μ+3σ] 的概率為0.9973,則認(rèn)為在該范圍內(nèi)的數(shù)據(jù)是可控的,范圍之外為不可控。因此,本文主軸承異常機(jī)組溫度殘差中設(shè)定 [μ?3σ,μ+3σ] 的范圍,范圍內(nèi)的殘差為正常殘差,范圍之外為異常殘差,其中μ和σ為主軸承正常機(jī)組測(cè)試集溫度殘差的均值和標(biāo)準(zhǔn)差。利用SPC 方法可以提取主軸承異常機(jī)組殘差中的特征,將殘差中正常殘差進(jìn)行剔除。
由文獻(xiàn)[20]研究得知,軸承類故障在發(fā)生故障前一個(gè)月會(huì)有明顯的劣化趨勢(shì),因此選取風(fēng)電機(jī)組主軸承故障發(fā)生前一個(gè)月的SCADA 數(shù)據(jù)進(jìn)行試驗(yàn)。圖4 為某機(jī)組主軸承故障發(fā)生前一個(gè)月的溫度殘差,紅線為μ?3σ 下控制線,藍(lán)線為μ+3σ 上控制線,由圖可知故障發(fā)生前并不是所有的殘差都超出控制線范圍。采用AC-GAN 生成對(duì)抗網(wǎng)絡(luò)重構(gòu)主軸承異常機(jī)組溫度殘差序列,得到異常主軸承下的殘差特征,解決異常樣本數(shù)據(jù)的標(biāo)記問題,進(jìn)而提高了后續(xù)主軸承狀態(tài)決策模型的預(yù)測(cè)精度。
圖4 某機(jī)組故障發(fā)生前一個(gè)月溫度殘差Fig.4 Residual diagram of one month before a unit failure
生成對(duì)抗網(wǎng)絡(luò)(generative adversarial networks,GAN)是一種無監(jiān)督學(xué)習(xí)方法,包含生成器G(generator)和判別器D(discriminator)兩部分。
將噪聲信號(hào)z映射到樣本空間,通過生成器G得到生成樣本數(shù)據(jù)Xfake=G(z),將生成樣本Xfake或真實(shí)樣本數(shù)據(jù)Xreal輸入判別器D進(jìn)而判定概率P(S|X)=D(X),表示判別樣本X屬于S的概率。由于Xreal是真實(shí)數(shù)據(jù),所以判別器判定概率接近于1,Xfake是經(jīng)生成器生成的數(shù)據(jù)并經(jīng)過判別器判定是否真實(shí)。GAN 的目標(biāo)函數(shù)為
目標(biāo)函數(shù)包含生成器目標(biāo)函數(shù)和判別器目標(biāo)函數(shù),其中生成器目標(biāo)函數(shù)為
判別器的目標(biāo)函數(shù)為
GAN 訓(xùn)練過程中,G和D二者交替訓(xùn)練,相互博弈,最終使G生成的樣本符合真實(shí)樣本概率分布,達(dá)到納什均衡。GAN 在訓(xùn)練過程中無需先驗(yàn)概率即能學(xué)習(xí)真實(shí)樣本的分布,但同時(shí)GAN對(duì)初始參數(shù)極其敏感,輸入G的隨機(jī)噪聲信號(hào)無約束,導(dǎo)致生成數(shù)據(jù)概率分布與真實(shí)數(shù)據(jù)差異大,訓(xùn)練過程難以收斂,使整個(gè)訓(xùn)練過程出現(xiàn)震蕩,發(fā)生模式崩潰[21-22]。為了解決上述問題,文獻(xiàn)[23]提出了帶標(biāo)簽輔助分類器的生成對(duì)抗網(wǎng)絡(luò)ACGAN,在傳統(tǒng)GAN 基礎(chǔ)上增加了噪聲數(shù)據(jù)對(duì)應(yīng)的標(biāo)簽c,使用兩者來生成Xfake=G(c,z),判別器計(jì)算生成數(shù)據(jù)的概率分布P(S|X) 和類標(biāo)簽上的概率分布P(c|X)分別為
式中:c={0,1,2,···,n},n表示樣本類數(shù)。真實(shí)樣本數(shù)據(jù)標(biāo)記為正常溫度殘差(c=0) 和異常溫度殘差(c=1),AC-GAN 通過內(nèi)部博弈,最終實(shí)現(xiàn)主軸承異常機(jī)組溫度殘差的重構(gòu)。
AC-GAN 生成器和判別器均采用RNN 神經(jīng)網(wǎng)絡(luò),輸入層為32 個(gè)神經(jīng)單元,隱含層有3 層神經(jīng)單元,輸出層為1 個(gè)神經(jīng)單元,激活函數(shù)為sigmoid,損傷函數(shù)為均方誤差。AC-GAN 生成對(duì)抗網(wǎng)絡(luò)的基本框架見圖5。
圖5 AC-GAN 對(duì)抗神經(jīng)網(wǎng)絡(luò)生成殘差的基本框架Fig.5 Basic framework for the AC-GAN to generate residuals
溫度殘差重構(gòu)具體步驟為:
1)將主軸承發(fā)生故障前一個(gè)月的SCADA 特征數(shù)據(jù)輸入至基于LightGBM 的主軸承溫度預(yù)測(cè)模型,計(jì)算得到一個(gè)月內(nèi)的主軸承異常機(jī)組溫度殘差。
2) 采用SPC 控制圖將主軸承異常機(jī)組殘差在控制范圍內(nèi)的正常溫度殘差數(shù)據(jù)剔除。
3)定義控制線之外的殘差數(shù)據(jù)為訓(xùn)練樣本數(shù)據(jù),采用AC-GAN 算法生成與真實(shí)樣本數(shù)據(jù)分布相似的殘差數(shù)據(jù),用來重構(gòu)剔除的正常溫度殘差2)中剔除的正常溫度殘差。
NGBoost 算法由斯坦福吳恩達(dá)團(tuán)隊(duì)在2019年10 月提出的,最初是用于預(yù)測(cè)不確定性估計(jì)的天氣預(yù)測(cè)和醫(yī)療保健等領(lǐng)域[24]。該算法使用自然梯度的Boosting 方法,這種方法可直接在輸出空間中得到全概率分布,用于預(yù)測(cè)量化不確定性。NGBoost 算法區(qū)別于其他Boosting 算法是因?yàn)樵撍惴梢苑祷孛總€(gè)預(yù)測(cè)的概率分布,NGBoost 通過預(yù)測(cè)參數(shù)θ,產(chǎn)生概率密度為Pθ(y|x) 的概率預(yù)測(cè)。NGBoost 使用自然梯度來學(xué)習(xí)參數(shù),使得優(yōu)化問題不受參數(shù)化的影響,隨后在GBM 的框架下讓每個(gè)基學(xué)習(xí)器去擬合自然梯度,最后經(jīng)過放縮和加權(quán)組合,得到一個(gè)集成模型的參數(shù),由此可以學(xué)習(xí)最終條件分布參數(shù),從而達(dá)到概率預(yù)測(cè)的目的。NGBoost 作為一種梯度提升算法,使用自然梯度(natural gradient)解決現(xiàn)有梯度提升方法難以處理的通用概率預(yù)測(cè)的技術(shù)難題,NGBoost在不確定性估計(jì)和傳統(tǒng)指標(biāo)上的預(yù)測(cè)能力具有相當(dāng)大的優(yōu)勢(shì)[25]。
對(duì)于自然梯度,首先定義得分規(guī)則為S,這個(gè)得分規(guī)則與概率分布P和輸出值y相關(guān),記為S(P,y)。對(duì)于正確的概率分布,并期望取得最佳值,概率預(yù)測(cè)越準(zhǔn)確,損失越小,故有
式中:Q為正確的概率分布;P為預(yù)測(cè)的概率分布。定義得分規(guī)則的散度:
得分規(guī)則定義需要使得散度非負(fù),并且能夠測(cè)量分布間的距離。如果得分規(guī)則定義為MIF,則
如果得分規(guī)則定義為CRPS(連續(xù)概率排位分?jǐn)?shù)),則
式中F為累計(jì)概率分布函數(shù)。本來定義CRPS 為
CRPS 對(duì)于真實(shí)概率,其值最小,散度非負(fù),度量分布距離符合規(guī)則的定義要求。對(duì)于選擇的得分規(guī)則S(θ),滿足 E[?S(θ)]=0,對(duì)L關(guān)于 θ 求導(dǎo)有
最終的梯度為
對(duì)于MIF,有
對(duì)于CRPS,有
風(fēng)電機(jī)組的主軸承溫度殘差同樣是一種不確定估計(jì),對(duì)主軸承狀態(tài)監(jiān)測(cè)實(shí)質(zhì)也是一種故障發(fā)生不確定性的概率預(yù)測(cè),因此可利用該算法建立主軸承運(yùn)行狀態(tài)決策模型。
為使降低故障決策中單點(diǎn)誤報(bào),獲得較高的預(yù)測(cè)準(zhǔn)確度,本文按天提取主軸承溫度殘差的最大值、最小值、均值、偏度、峰度、中位數(shù)、方差、標(biāo)準(zhǔn)差8 個(gè)特征,將主軸承正常機(jī)組的溫度殘差標(biāo)簽設(shè)置為0,主軸承異常機(jī)組重構(gòu)的溫度殘差標(biāo)簽設(shè)置為1。
本實(shí)驗(yàn)所采用的SCADA 數(shù)據(jù)為河北某風(fēng)電場(chǎng)的歷史數(shù)據(jù)。選取機(jī)組編號(hào)為07#、09#、23#、31#、32#、41#、14#、11#、71#、81#,10 臺(tái)主軸承正常機(jī)組,選取編號(hào)為69#、37#、84#、88#、99#、15#、96#、86#、13#、70#的10 臺(tái)主軸承異常機(jī)組,共計(jì)20 臺(tái)機(jī)組。通過基于LightGBM 的主軸承溫度預(yù)測(cè)模型計(jì)算各機(jī)組主軸承溫度殘差,對(duì)于異常機(jī)組通過AC-GAN 算法重構(gòu)殘差值。提取主軸承正常機(jī)組和主軸承異常機(jī)組8 個(gè)溫度殘差特征作為狀態(tài)決策模型輸入,預(yù)測(cè)的主軸承正?;虍惓5母怕手底鳛闋顟B(tài)決策模型輸出。由于主軸承正常機(jī)組標(biāo)簽設(shè)置為0,異常機(jī)組標(biāo)簽設(shè)置為1,因此,輸出概率在0.5 以上可判斷為異常狀態(tài),0.5以下判斷為正常狀態(tài)。溫度殘差特征80%用于訓(xùn)練狀態(tài)決策模型,剩余20%用于測(cè)試模型的準(zhǔn)確度。按上述流程提取殘差特征后共得到938 組數(shù)據(jù)。對(duì)比分析NGBoost、XGBoost 和隨機(jī)森林3 種算法在殘差重構(gòu)前后測(cè)試樣本中的準(zhǔn)確性。
NGBoost 算法在測(cè)試集上的準(zhǔn)確為0.875,混淆矩陣見圖6(a)。采用同樣的特征提取方法提取沒有經(jīng)過殘差重構(gòu)的特征,在測(cè)試集上的準(zhǔn)確度為0.660,混淆矩陣見圖6(b)。XGBoost 算法在測(cè)試集上的準(zhǔn)確為0.843,混淆矩陣見圖7(a)。采用同樣的特征提取方法提取沒有經(jīng)過殘差重構(gòu)的特征,在測(cè)試集上的準(zhǔn)確度為0.651,混淆矩陣見圖7(b)。
圖6 殘差重構(gòu)前后故障決策模型混淆矩陣(NGBoost 算法)Fig.6 Confusion matrix of the fault decision model before and after residual reconstruction(NGBoost algorithm)
圖7 殘差重構(gòu)前后故障決策模型混淆矩陣(XGBoost 算法)Fig.7 Confusion matrix of the fault decision model before and after residual reconstruction(XGBoost algorithm)
隨機(jī)森林算法在測(cè)試集上的準(zhǔn)確為0.750,混淆矩陣見圖8(a)。采用同樣的特征提取方法提取沒有經(jīng)過殘差重構(gòu)的特征,在測(cè)試集上的準(zhǔn)確度為0.642,混淆矩陣見圖8(b)。
圖8 殘差重構(gòu)前后故障決策模型混淆矩陣(隨機(jī)森林算法)Fig.8 Confusion matrix of the fault decision model before and after residual reconstruction (random forest algorithm)
實(shí)驗(yàn)結(jié)果表明:在同等條件下,NGBoost 算法在風(fēng)電機(jī)組主軸承狀態(tài)決策模型中優(yōu)于XGBoost 算法和隨機(jī)森林算法。而且NGBoost、XGBoost 和隨機(jī)森林3 種算法經(jīng)過殘差重構(gòu)的狀態(tài)決策模型的準(zhǔn)確度分別提高了21.5%、19.2%、10.8%,說明基于AG-GAN 的數(shù)據(jù)重構(gòu)對(duì)風(fēng)電機(jī)組主軸承運(yùn)行狀態(tài)具有良好的預(yù)測(cè)準(zhǔn)確度。
下一步,選取未參與模型訓(xùn)練和測(cè)試的6 臺(tái)機(jī)組用來驗(yàn)證基于殘差重構(gòu)和NGBoost 算法下的準(zhǔn)確性和泛化性。選取主軸承正常機(jī)組編號(hào)為08#、65#、66#,主軸承異常機(jī)組編號(hào)為10#、85#、91#。
10#機(jī)組在2019 年3 月28 號(hào)巡檢時(shí)發(fā)現(xiàn)該機(jī)組主軸承振動(dòng)過大,需要更換主軸承,選取2019年3 月1 號(hào)到2019 年3 月30 號(hào)的數(shù)據(jù)。85#機(jī)組在2019 年4 月1 號(hào)巡檢時(shí)有異常響聲,經(jīng)廠家檢查發(fā)現(xiàn)該機(jī)組主軸承電腐蝕嚴(yán)重,因振動(dòng)導(dǎo)致平衡環(huán)境存在輕微開裂跡象,選取2019 年3 月8 號(hào)到4 月4 號(hào)的數(shù)據(jù)。91#機(jī)組在2019 年10 月13 號(hào)發(fā)生主軸承開裂故障,選取2019 年9 月16 號(hào)到10月16 號(hào)的數(shù)據(jù)。正常機(jī)組隨機(jī)選取一個(gè)月的數(shù)據(jù)。
對(duì)比分析表5、6,正常機(jī)組編號(hào)為08#的機(jī)組在經(jīng)過殘差重構(gòu)后預(yù)測(cè)的準(zhǔn)確率提升了28%,65#機(jī)組的準(zhǔn)確率提升了3%,66#機(jī)組的準(zhǔn)確率提升了1%。對(duì)比分析表7、8,異常機(jī)組編號(hào)為10#的機(jī)組在經(jīng)過殘差重構(gòu)后預(yù)測(cè)的準(zhǔn)確率提升了17%,85#機(jī)組的準(zhǔn)確率提升了15%,91#機(jī)組的準(zhǔn)確率提升了7%。
表5 正常機(jī)組未經(jīng)過殘差重構(gòu)時(shí)的概率預(yù)測(cè)值Table 5 Probability prediction value of the normal wind turbine without residual reconstruction
表6 正常機(jī)組經(jīng)過殘差重構(gòu)時(shí)的概率預(yù)測(cè)值Table 6 Probability prediction value of the normal wind turbine after residual reconstruction
表7 異常機(jī)組未經(jīng)過殘差重構(gòu)時(shí)的概率預(yù)測(cè)值Table 7 Probability prediction value of the abnormal wind turbine without residual reconstruction
表8 異常機(jī)組經(jīng)過殘差重構(gòu)時(shí)的概率預(yù)測(cè)值Table 8 Probability prediction value of the abnormal wind turbine after residual reconstruction
本文以風(fēng)電機(jī)組主軸承為研究對(duì)象,針對(duì)狀態(tài)監(jiān)測(cè)和故障預(yù)警中人為設(shè)定閾值的相關(guān)問題,提出了基于AC-GAN 數(shù)據(jù)重構(gòu)的風(fēng)電機(jī)組主軸承狀態(tài)監(jiān)測(cè)方法,得到如下結(jié)論:
1)采用LightGBM 算法建立主軸承溫度殘差預(yù)測(cè)模型,并將XGBoost 算法、CatBoost 算法與之對(duì)比分析,在同等條件下,LightGBM 算法在主軸承溫度建模中綜合性能優(yōu)于XGBoost 算法和Cat-Boost 算法。
2)采用滑動(dòng)窗口提取主軸承異常機(jī)組殘差,利用SPC 方法對(duì)主軸承異常溫度殘差在控制線范圍內(nèi)進(jìn)行篩選,并利用AC-GAN 算法對(duì)殘差序列進(jìn)行重構(gòu),解決了人為設(shè)定閾值的相關(guān)問題,提升了主軸承異常和正常數(shù)據(jù)標(biāo)簽標(biāo)注的準(zhǔn)確率。
3)在同等條件下,NGBoost 算法在風(fēng)電機(jī)組主軸承狀態(tài)決策模型中優(yōu)于XGBoost 算法和隨機(jī)森林算法。而且,NGBoost、XGBoost 和隨機(jī)森林3 種算法經(jīng)過殘差重構(gòu)的狀態(tài)決策模型的準(zhǔn)確度分別提高了21.5%、19.2%、10.8%,選擇6 臺(tái)機(jī)組進(jìn)行測(cè)試分析(3 臺(tái)主軸承正常機(jī)組,3 臺(tái)主軸承異常機(jī)組),均能夠判斷正確?;贜GBoost 的狀態(tài)決策模型的平均準(zhǔn)確率從60.5%(無殘差序列重構(gòu))提升至72.3%(利用殘差數(shù)據(jù)重構(gòu))。