梁川
(江中藥業(yè)股份有限公司,江西 南昌330000)
隨著全球變暖引起的氣候問題越來越嚴重,各國都越來越重視環(huán)境和氣候問題,首先是化石能源的使用帶來的負面影響
[1],因此,可再生能源的發(fā)展備受關注。
其中,風力發(fā)電是最成熟、經(jīng)濟可行、應用最廣泛的新能源發(fā)電技術之一[2],風能是利用氣流做功和提供能源。在海拔1000米以下的地區(qū),每升高100 米風速增加0.1 米/秒[3],同時,低溫地區(qū)空氣密度增加,風能利用率提高10%,因此在高寒地區(qū)安裝了大量的風力發(fā)電機[4]。在這些高海拔地區(qū),葉片容易結冰,影響風機的性能和安全。因此,對風機葉片結冰預報的研究具有較高的應用價值。
國內(nèi)外都十分重視風機葉片結冰故障診斷的研究。Simani等[5]提出了數(shù)據(jù)驅動方法對風機的早期故障進行檢測,主要運用了模糊系統(tǒng)和神經(jīng)網(wǎng)絡來描述測量和故障之間的強非線性關系。葉春霖等[6]采用處理不平衡學習算法和隨機森林實現(xiàn)風機結冰故障診斷。李大中[7]等提出利用極端梯度提升XGBoost 算法對風機葉片結冰狀態(tài)進行評估,在風機葉片結冰狀態(tài)診斷中具有良好的性能。
目前,對于風機葉片故障診斷的研究很多,但準確度還有待提高。本文提出了一種基于ReliefF 特征提取和隨機森林的風機結冰故障診斷模型,可以提高故障診斷的準確率,保證故障能夠及時發(fā)現(xiàn)并處理,確保風機的安全運行。
Relief 算法是Kira 于1992 年首次提出的一種經(jīng)典的特征選擇算法[8],ReliefF 算法是Relief 算法的擴展,ReliefF 算法是一種常用的過濾式特征權重算法,根據(jù)各個特征和類別的相關性賦予特征不同的權重,權重小于某個閾值的特征將被移除,該方法設定了一個“相關統(tǒng)計量”來表達特征的重要性。ReliefF 通常用于多類別標簽的特征選擇,是根據(jù)每個特征和類別的相關性,賦予特征不同的權重[9]。
給出l 類的類標簽,ReliefF 算法從訓練集中隨機抽取一個樣本Ri,然后從同一類別中找到K 個Ri的近樣本,用Hj(j=1,2,…,K)表示,并從不同類別中找到K 個Ri的近樣本,用Mj(c)(j=1,2,…,K)[10]。ReliefF 算法在每個特征維上重復上述過程,得到每個特征的權重如下:
其中m 是迭代次數(shù),p(c)是c 類的概率,diff(A,R1,R2)表示關于特征A 的樣本R1和R2之間的差異,其定義為
隨機森林(Random Forests,RF)算法最早是由美國科學家Leo 于2001 年提出的一種機器學習算法[11],該算法結合了Bagging 集成學習算法與隨機子空間思想,通過有放回的隨機采樣構造完各個決策樹后,綜合多個決策樹的分類結果來作為最終輸出。隨機森林算法是由決策樹(Decision Forests)算法一步一步發(fā)展而來的,發(fā)展經(jīng)過如圖1 所示。
圖1 決策樹發(fā)展經(jīng)過
決策樹是一種常用的分類算法,屬于有監(jiān)督學習(Supervised Learning),他代表的是對象屬性與對象值之間的一種映射關系。樹中每個節(jié)點表示某個對象,每個分叉路徑則代表某個可能的屬性值。對于機器學習中的分類問題,將樣本特征輸入到?jīng)Q策樹模型后,通過一層層的決策,最終得到模型對該特征的預測結果,即樣本標簽。決策樹一般模型如圖2 所示。
圖2 決策樹的一般模型
隨機森林是以K 個決策樹為基本分類器,進行集成學習后得到一個組合分類器,將樣本輸入訓練好的隨機森林模型之后,隨機森林模型根據(jù)每個決策樹的分類結果投票決定出最終的輸出[12]。
由于隨機森林中各個決策樹的訓練都是相互獨立的,因此在具體使用隨機森林算法時可采用并行處理,這將極大的提高隨機森林模型的訓練速度。隨機森林中單個決策樹的訓練過程如圖3 所示。
圖3 隨機森林中單個決策樹訓練過程
隨機森林的特點決定了即便是處理大樣本、多維的數(shù)據(jù)也能有較快的速度,并且還可以根據(jù)每個特征在不同的決策樹中所做的貢獻來進行特征權重分析,同時隨機森林是一種非參數(shù)分類方法,只需要根據(jù)訓練樣本中特征與標簽的對應關系學習分類規(guī)則,而不需要分類的先驗知識。
本文采用的數(shù)據(jù)來自國內(nèi)某風機組15 號單機運行狀態(tài)下SCADA 部分數(shù)據(jù),有28 個連續(xù)數(shù)值型變量,除去時間列和沒有任何意義的“group”列外,共有26 個連續(xù)型數(shù)值變量,覆蓋了風機的工況、運行環(huán)境、狀態(tài)等多個維度的參數(shù),如功率、葉片轉速、葉片角度、風速、風向、溫度等,共計393886*28 組數(shù)據(jù)。
訓練數(shù)據(jù)集中包含了正常數(shù)據(jù)、故障數(shù)據(jù)以及無效數(shù)據(jù),分別將其對應的訓練樣本label 標記為0,1,2。其中,對于無效數(shù)據(jù),我們無法將其分成正常數(shù)據(jù)或是故障數(shù)據(jù),因此在實際訓練中將其刪除。
原始數(shù)據(jù)有26 個有效特征參數(shù),作為模型的輸入維度偏高,訓練會耗用過多的時間。因此,本文運用ReliefF 方法可以明確各特征對分類和故障診斷貢獻率。其特征權重相關度如圖4所示。
圖中各個顏色分別表示原始數(shù)據(jù)進行了10 次迭代的效果,提升貢獻率的準確性。
由圖可知,wind_direction_mean、yaw_speed、acc_x 等6 個特征的特征權重基本為0,與結果之間基本無關系,可以將26 維數(shù)據(jù)減少至20 維特征,提升了模型的訓練速度。
圖4 ReliefF 算法特征權重相關度
原始數(shù)據(jù)經(jīng)過“去噪”以及基于ReliefF 特征選擇之后,數(shù)據(jù)集具備了一定的完整性。將15 機組風機機組數(shù)據(jù)按7:3 劃分為訓練集和測試集。運用訓練集對隨機森林模型進行訓練,測試集帶入模型之后獲得狀態(tài)輸出,將輸出的結果與測試集實際situation 及逆行對比,來評估模型的效果,其流程圖如圖5 所示。
圖5 隨機森林模型訓練的流程
為判定算法的性能,本文采用了準確率(ACC)、精確率(PRE)、召回率(REC)和F1 Score。各個指標的定義為:
其中,F(xiàn)N/TP/FP/TN 的含義參數(shù)如表1。準確率表示診斷正確的結果占總樣本的百分比;精確率表示在所有診斷為正的樣本中實際為正樣本的概率;召回率表示在實際為正的樣本中被診斷為正樣本的概率;F1 Score 是綜合考慮精確率和召回率的一個評價指標。
表1 FN/TP/FP/TN 的含義
將原始數(shù)據(jù)按照以上步驟“去噪”、特征選擇后,將數(shù)據(jù)劃分為訓練集和測試集,運用訓練集對隨機森林模型進行訓練,測試集帶入模型中驗證模型效果,如表2 所示。再分別采用傳統(tǒng)的決策樹,KNN 和SVM算法實現(xiàn)風機結冰故障診斷,可以得到4 個算法的效果對比,如表3 所示。通過比較,能夠發(fā)現(xiàn)本文采取的方法的優(yōu)勢。
表2 基于特征選擇以及隨機森林的風機故障診斷
表3 4 種分類器模型的效果對比
本文提出了一種基于ReliefF 特征提取和隨機森林算法的風機結冰故障診斷方法,經(jīng)過實驗對比驗證,得出該方法在準確度上提升至97%左右,可以有效診斷出風機結冰的故障,及時警報除冰,減少風機因結冰而導致的效率降低和損壞。
本文還采用了適用于不平衡數(shù)據(jù)的評價指標F1 Score 參數(shù),可以減少因數(shù)據(jù)不平很而影響模型的評判。