隨著計算機計算能力的不斷提高,機器學習這一技術在各個工業領域中逐漸得到應用。與此同時,隨著國內風電平價上網進程的推進,風電場後評估工作在風電行業內不斷受到關注;而風電機組性能評估作為風電場後評估工作中最重要的內容之一,其與機器學習技術的結合自然受到了行業內的廣泛關注[1-2]。
風電機組性能評估依賴於建立風電機組性能模型,即建立風電機組輸出功率與風電機組各關鍵參數( 如風速、槳距角、偏航角等) 之間的函數關係,這屬於典型的非線性回歸問題;在機器學習領域,深度神經網絡是解決該問題的經典手段,因此,利用其構建風電機組性能模型自然得到了行業內研究者的廣泛嘗試。比如,文獻[3]嘗試將神經網絡擬合的風電機組功率曲線與測量的風電機組功率曲線進行對比分析;文獻[4] 驗證了採用卷積神經網絡構建的風電機組齒輪箱故障識別分類器比一般的支持向量機(SVM) 分類器具備更好的性能表現;文獻[5] 提出了基於引力搜索算法優化人工神經網絡的風電機組傳動鏈故障診斷方法;文獻[6] 採用深度神經網絡構建了風電機組齒輪箱狀況檢測框架,以用於故障預警;文獻[7] 利用線性混合自組織映射神經網絡對風力機狀態特徵進行分類,提出了一種特徵變化累積趨勢差分法,用於預測風力機的異常和故障。上述研究的關注點主要在於深度神經網絡在具體場景中的實際應用,所構建的模型大多僅針對研究中所使用的特定風電機組。
綜上,本文嘗試從深度神經網絡本身出發,探討其自身超參數的取值對最終風電機組性能模型的準確度的影響,同時將驗證以上超參數在參考風電機組訓練中得到的最優配置是否可以直接推廣應用於同一風電場同一型號的其他風電機組上。針對以上研究內容,本文首先介紹了深度神經網絡的基本概念及所選取的超參數,並從某實際運行的風電場50 臺2000 kW 風電機組中選取1 臺作為參考風電機組,基於該機組的SCADA數據採用深度神經網絡進行訓練,通過網格搜索(Grid Search) 法得到最優的超參數配置方案,並驗證該配置方案是否為整個風電場的全局最優配置。
1 深度神經網絡的概念及超參數的選取
1.1 深度神經網絡的概念
深度神經網絡(Deep Neural Network,DNN)是具有多個隱含層的人工神經網絡[8],其由3 部分構成,分別為輸入層、隱含層及輸出層。每一層都由一定數量的神經元構成,同時每個神經元都具有1 個自己的激活函數,當其接收到的信號達到激活函數的閾值時,其將被激活,並向下層連接的神經元輸出信號,最終各層的神經元逐一連接在一起構成一個類似生物神經的網狀結構。具有3 個隱含層的深度神經網絡結構示意圖如圖1 所示。其中,Xi 為選定的進入深度神經網絡輸入層參與風電機組性能模型構建的、與風電機組輸出功率相關性較高的SCADA 數據類型,如風速等;Y 為風電機組實際輸出功率。
1.2 超參數的選取
深度神經網絡的結構和特性是通過超參數來決定的,超參數是在深度神經網絡訓練過程開始之前需要設置數值的參數,而不是通過訓練得到的參數數值。通常情況下,需要對超參數進行優化,以尋找到一組最優的超參數,提高訓練效果。深度神經網絡的超參數很多,包括但不局限於:
1) 隱含層的層數;
2) 深度神經網絡的形狀;
3) 每層隱含層神經元的數量;
4) 神經元的激活函數;
5) 損失函數;
6) 優化器的選擇;
7) 隱含層傳遞權重初始化方法。
這些超參數對於深度神經網絡的影響不盡相同,其中有些會影響最終的訓練效果,有些會影響訓練過程的速度和收斂。由於本研究僅針對風電機組性能模型構建中影響深度神經網絡最終訓練效果的超參數,因此基於參考風電機組的訓練過程,選取深度神經網絡隱含層層數、深度神經網絡形狀及隱含層神經元數量這3 個超參數作為主要研究對象,並尋找其最優配置方案[9]。
1.2.1 深度神經網絡隱含層層數
深度神經網絡模型中,輸入層與輸出層之間隱含層的層數決定了模型的複雜程度。一般情況下,隱含層的層數越多,模型的複雜程度就越高,也就越能更好地模擬複雜問題;但相應地,模型訓練所需要的時間也會相應增大,並且可能會伴隨出現「過擬合」的問題。針對本研究中風電機組發電性能的問題,輸入層的神經元數量為7,輸出層的神經元數量為1,屬於機器學習中相對簡單的案例,因此,所採用的隱含層層數不需要過多。
1.2.2 深度神經網絡形狀
當深度神經網絡的隱含層層數確定後,每一層隱含層的神經元數量決定了深度神經網絡的形狀,實際應用中較為常見的形狀為漏鬥型和均衡型。
1.2.3 隱含層神經元數量
本研究中的隱含層神經元數量是指輸入層之後的第一層隱含層的神經元數量。對於漏鬥型深度神經網絡形狀來說,輸入層之後的每一層隱含層的神經元數量與前一層相比,均按一定比例遞減( 本研究中採用0.5 倍遞減);對於均衡型深度神經網絡形狀而言,輸入層之後的每一層隱含層神經元數量均與第一層相同。圖1 所示的即為1個典型的均衡型3 層隱含層深度神經網絡形狀。與深度神經網絡的層數類似,每一層隱含層的神經元數量越多,表明該模型越複雜,增加隱含層神經元數量可以更好地模擬複雜問題,但機器學習的時間成本也相應更高,並且隨著神經元數量的增長,也會出現「過擬合」問題。
2 超參數尋優
本研究選取了某個實際運行的風電場進行方案驗證。該風電場的裝機容量為100 MW,由50 臺2000 kW 風電機組構成,風電機組採用SCADA 系統,共可採集90 種數據類型,採用10 min 時間步長,共記錄了9 個月的數據。
本研究採用基於互信息的關鍵數據提取方法[10],從中選取了7 個與風電機組輸出功率「相關性」較高的數據類型作為深度神經網絡訓練輸入層的入口數據。這7 個數據類型的名稱及對應單位如表1 所示。
首先選取了編號為T1 的風電機組作為參考風電機組進行訓練,然後以訓練後模型預測的風電機組輸出功率PDNN 與SCADA 數據中實際記錄的風電機組輸出功率PSCADA 間的均方誤差MSE 作為損失函數來進行深度神經網絡3 個超參數的尋優。均方誤差MSE 的計算公式為:
針對深度神經網絡隱含層層數、深度神經網絡形狀及隱含層神經元數量這3 個超參數,本研究設置的可選配置如表2 所示。
對於前文提到的其他超參數,本研究中則採用了機器學習領域中的經典配置,具體的配置方案如表3 所示。
本研究通過Grid Search 的方法對超參數進行尋優,即將3 個超參數所有配置排列組合後的全部方案均進行模型訓練,最終選取結果最優的方案。每個不同超參數組合配置的訓練採用2000 批次(epoch),每批次300 批大小(batchsize),最終參考風電機組T1 在不同超參數配置下的風電機組性能模型訓練效果如表4 所示。
從表4 的訓練結果可以看出,在參考風電機組T1 上,最優的超參數配置為:隱含層層數取5、深度神經網絡形狀為漏鬥型、隱含層神經元數量為64;該配置下達到的測試數據集誤差為6.95kW,相對於風電機組的額定功率2000 kW 而言,該值所佔比例僅為0.35%。而表現最差的配置方案為:隱含層層數取4、深度神經網絡形狀為均衡型、隱含層神經元數量為256;該配置下達到的測試數據集誤差為16.77 kW,相對於風電機組的額定功率2000 kW 而言,該值所佔比例為0.84%。由此可以得到以下結論:
1) 在不同的超參數配置方案下,通過深度神經網絡訓練得到的各個風電機組性能模型應用於參考風電機組後的預測準確度之間存在一定差異。
2) 從工業角度來看,在不同的超參數配置方案下,深度神經網絡訓練得到的風電機組性能模型應用於參考風電機組後的準確度誤差基本可以忽略不計。因此,若只是針對參考風電機組進行模型構建,可以直接將超參數選擇為訓練速度最快的配置方案,即隱含層層數最少、神經元數量最小。
下文對表2、表3 中的超參數設置在參考風電機組上的最優配置與同一風電場中同一型號其他所有風電機組上的最優配置間的相對關係進行探討。理想情況下希望實現以下2點假設:
1) 參考風電機組的最優配置同時也是同一風電場中同一型號其他風電機組的最優配置;
2) 基於參考風電機組得到的性能模型,應用於同一風電場同一型號其他所有風電機組上時準確度也能滿足需求。假設1) 和假設2) 若能同時被驗證成功,則說明同一個風電場中同一型號風電機組的最優超參數的配置及基於參考風電機組得到的性能模型具有推廣性。這也意味著在實際應用中,不需要針對每颱風電機組單獨進行訓練,只需要選擇1臺參考風電機組進行訓練,再推廣到整個風電場即可,從而可大幅節省時間,更能滿足工業領域的需求。
為了進行以上2 個假設的驗證,本研究將參考風電機組T1 訓練得到的不同超參數配置下的深度神經網絡模型分別在風電機組T2~T50 上進行復用,以在風電機組T2~T50 上模型的預測輸出功率與實際輸出功率的均方誤差的平均值作為評價標準,結果如表5 所示。
通過分析T2~T50 這49 颱風電機組應用參考風電機組T1 經深度神經網絡訓練得到的模型後的最終結果可以發現:
1) 在參考風電機組T1 上驗證的最優超參數配置方案,在T2~T50 風電機組上的表現並非最優。
2) 在T2~T50 風電機組上表現最優的超參數配置方案( 隱含層層數為4、深度神經網絡形狀為均衡型、隱含層神經元數量為64),在參考風電機組T1 上的表現也較好。
3) 基於不同超參數配置的深度神經網絡訓練得到的模型,訓練結果在風電機組T2~T50 上的表現總體較好,各模型的平均的均方誤差平均值為27.32 kW,最優的均方誤差平均值為12.59kW,最不理想的均方誤差平均值為115.21 kW,相對於風電機組的額定功率2000 kW 而言,均方誤差平均值佔比分別為1.37%、0.63% 和5.76%。綜上所述,雖然前文中的假設並未完全得到驗證,但由於基於參考風電機組得到的性能排名靠前的超參數配置方案應用於本風電場中同一型號其他風電機組時,雖然性能不是最優但基本也較為靠前,同時準確度也在可接受範圍內,因此,在工業應用中基本可以認為該方式具備推廣性。即實際應用中,出於時間成本考慮,可以將基於參考風電機組得到的超參數配置方案及模型直接應用於本風電場中同型號的其他風電機組。
3 結論與建議
本文以某實際運行風電場的50 臺2000 kW風電機組的SCADA 數據為基礎,對採用深度神經網絡技術建立風電機組性能模型時的隱含層層數、深度神經網絡形狀及隱含層神經元數量這3個超參數的取值對於該模型構建效果的影響進行了分析。通過Grid Search 方法在參考風電機組上發現這3 個超參數配置不同時建立的模型的最終性能存在一定差異,但從工業應用角度考慮,差異基本可以忽略不計。同時分析還發現,參考風電機組採用最優超參數配置方案時訓練得到的模型應用於同一風電場中同一型號的其他風電機組時得到的並非最佳方案,但由於其在同一風電場中同一型號的其他風電機組上的預測準確度在所有配置方案中仍然較優,因此出於時間成本考慮,在工業應用中可以認為同一風電場中同型號的風電機組間可以應用此方案,採用深度神經網絡在參考風電機組上得到的最優模型具備推廣性。
基於本研究的方法與結論,在未來工作中可以進一步針對不同型號的風電機組或不同風電場的風電機組進行超參數配置方案的尋優及推廣性驗證。若基於參考風電機組訓練得到的風電機組性能模型在不同機型乃至不同風電場間可以直接推廣復用,則可進一步為機器學習技術在風電行業後評估工作中的應用確立更為普遍的事實依據。