吳 莎,汪 健,謝 新,蔣紫虓,鄧少平,盧 勝
(1.湖北省電力勘測設計院有限公司,武漢 430040;2.美迪歐動力氣象技術(北京)有限公司,北京 100027)
隨著計算機計算能力的不斷提高,機器學習這一技術在各個工業領域中逐漸得到應用。與此同時,隨著國內風電平價上網進程的推進,風電場后評估工作在風電行業內不斷受到關注;而風電機組性能評估作為風電場后評估工作中最重要的內容之一,其與機器學習技術的結合自然受到了行業內的廣泛關注[1-2]。
風電機組性能評估依賴于建立風電機組性能模型,即建立風電機組輸出功率與風電機組各關鍵參數(如風速、槳距角、偏航角等)之間的函數關系,這屬于典型的非線性回歸問題;在機器學習領域,深度神經網絡是解決該問題的經典手段,因此,利用其構建風電機組性能模型自然得到了行業內研究者的廣泛嘗試。比如,文獻[3]嘗試將神經網絡擬合的風電機組功率曲線與測量的風電機組功率曲線進行對比分析;文獻[4]驗證了采用卷積神經網絡構建的風電機組齒輪箱故障識別分類器比一般的支持向量機(SVM)分類器具備更好的性能表現;文獻[5]提出了基于引力搜索算法優化人工神經網絡的風電機組傳動鏈故障診斷方法;文獻[6]采用深度神經網絡構建了風電機組齒輪箱狀況檢測框架,以用于故障預警;文獻[7]利用線性混合自組織映射神經網絡對風力機狀態特征進行分類,提出了一種特征變化累積趨勢差分法,用于預測風力機的異常和故障。上述研究的關注點主要在于深度神經網絡在具體場景中的實際應用,所構建的模型大多僅針對研究中所使用的特定風電機組。
綜上,本文嘗試從深度神經網絡本身出發,探討其自身超參數的取值對最終風電機組性能模型的準確度的影響,同時將驗證以上超參數在參考風電機組訓練中得到的最優配置是否可以直接推廣應用于同一風電場同一型號的其他風電機組上。針對以上研究內容,本文首先介紹了深度神經網絡的基本概念及所選取的超參數,并從某實際運行的風電場50臺2000 kW風電機組中選取1臺作為參考風電機組,基于該機組的SCADA數據采用深度神經網絡進行訓練,通過網格搜索(Grid Search)法得到最優的超參數配置方案,并驗證該配置方案是否為整個風電場的全局最優配置。
深度神經網絡(Deep Neural Network,DNN)是具有多個隱含層的人工神經網絡[8],其由3部分構成,分別為輸入層、隱含層及輸出層。每一層都由一定數量的神經元構成,同時每個神經元都具有1個自己的激活函數,當其接收到的信號達到激活函數的閾值時,其將被激活,并向下層連接的神經元輸出信號,最終各層的神經元逐一連接在一起構成一個類似生物神經的網狀結構。具有3個隱含層的深度神經網絡結構示意圖如圖1所示。其中,Xi為選定的進入深度神經網絡輸入層參與風電機組性能模型構建的、與風電機組輸出功率相關性較高的SCADA數據類型,如風速等;Y為風電機組實際輸出功率。

圖1 具有3個隱含層的深度神經網絡結構示意圖Fig. 1 Structure schematic diagram of deep neural network with three hidden layers
深度神經網絡的結構和特性是通過超參數來決定的,超參數是在深度神經網絡訓練過程開始之前需要設置數值的參數,而不是通過訓練得到的參數數值。通常情況下,需要對超參數進行優化,以尋找到一組最優的超參數,提高訓練效果。
深度神經網絡的超參數很多,包括但不局限于: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層隱含層深度神經網絡形狀。與深度神經網絡的層數類似,每一層隱含層的神經元數量越多,表明該模型越復雜,增加隱含層神經元數量可以更好地模擬復雜問題,但機器學習的時間成本也相應更高,并且隨著神經元數量的增長,也會出現“過擬合”問題。
本研究選取了某個實際運行的風電場進行方案驗證。該風電場的裝機容量為100 MW,由50臺2000 kW風電機組構成,風電機組采用SCADA系統,共可采集90種數據類型,采用10 min時間步長,共記錄了9個月的數據。
本研究采用基于互信息的關鍵數據提取方法[10],從中選取了7個與風電機組輸出功率“相關性”較高的數據類型作為深度神經網絡訓練輸入層的入口數據。這7個數據類型的名稱及對應單位如表1所示。

表1 深度神經網絡輸入層的數據類型Table 1 Data types of input layer of deep neural network
首先選取了編號為T1的風電機組作為參考風電機組進行訓練,然后以訓練后模型預測的風電機組輸出功率PDNN與SCADA數據中實際記錄的風電機組輸出功率PSCADA間的均方誤差MSE作為損失函數來進行深度神經網絡3個超參數的尋優。均方誤差MSE的計算公式為:

式中,N為SCADA系統中的總數據量。
針對深度神經網絡隱含層層數、深度神經網絡形狀及隱含層神經元數量這3個超參數,本研究設置的可選配置如表2所示。
對于前文提到的其他超參數,本研究中則采用了機器學習領域中的經典配置,具體的配置方案如表3所示。

表2 待尋優超參數可選配置方案Table 2 Optional configuration scheme of hyperparameters to be optimized

表3 固定超參數配置方案Table 3 Configuration scheme of fixed hyperparameters
本研究通過Grid Search的方法對超參數進行尋優,即將3個超參數所有配置排列組合后的全部方案均進行模型訓練,最終選取結果最優的方案。每個不同超參數組合配置的訓練采用2000批次(epoch),每批次300批大小(batch size),最終參考風電機組T1在不同超參數配置下的風電機組性能模型訓練效果如表4所示。
從表4的訓練結果可以看出,在參考風電機組T1上,最優的超參數配置為:隱含層層數取5、深度神經網絡形狀為漏斗型、隱含層神經元數量為64;該配置下達到的測試數據集誤差為6.95 kW,相對于風電機組的額定功率2000 kW而言,該值所占比例僅為0.35%。而表現最差的配置方案為:隱含層層數取4、深度神經網絡形狀為均衡型、隱含層神經元數量為256;該配置下達到的測試數據集誤差為16.77 kW,相對于風電機組的額定功率2000 kW而言,該值所占比例為0.84%。由此可以得到以下結論:
1)在不同的超參數配置方案下,通過深度神經網絡訓練得到的各個風電機組性能模型應用于參考風電機組后的預測準確度之間存在一定差異。

表4 在不同超參數配置下,參考風電機組T1的風電機組性能模型訓練結果Table 4 Wind turbine performance model training results of reference wind turbine T1 under different hyperparameters configuration
2)從工業角度來看,在不同的超參數配置方案下,深度神經網絡訓練得到的風電機組性能模型應用于參考風電機組后的準確度誤差基本可以忽略不計。因此,若只是針對參考風電機組進行模型構建,可以直接將超參數選擇為訓練速度最快的配置方案,即隱含層層數最少、神經元數量最小。
下文對表2、表3中的超參數設置在參考風電機組上的最優配置與同一風電場中同一型號其他所有風電機組上的最優配置間的相對關系進行探討。理想情況下希望實現以下2點假設:1)參考風電機組的最優配置同時也是同一風電場中同一型號其他風電機組的最優配置;2)基于參考風電機組得到的性能模型,應用于同一風電場同一型號其他所有風電機組上時準確度也能滿足需求。
假設1)和假設2)若能同時被驗證成功,則說明同一個風電場中同一型號風電機組的最優超參數的配置及基于參考風電機組得到的性能模型具有推廣性。這也意味著在實際應用中,不需要針對每臺風電機組單獨進行訓練,只需要選擇1臺參考風電機組進行訓練,再推廣到整個風電場即可,從而可大幅節省時間,更能滿足工業領域的需求。
為了進行以上2個假設的驗證,本研究將參考風電機組T1訓練得到的不同超參數配置下的深度神經網絡模型分別在風電機組T2~T50上進行復用,以在風電機組T2~T50上模型的預測輸出功率與實際輸出功率的均方誤差的平均值作為評價標準,結果如表5所示。
通過分析T2~T50這49臺風電機組應用參考風電機組T1經深度神經網絡訓練得到的模型后的最終結果可以發現:

表5 在不同超參數配置下,風電機組性能模型的推廣驗證Table 5 Promotion verification of wind turbine performance model under different hyperparameters configuration
1)在參考風電機組T1上驗證的最優超參數配置方案,在T2~T50風電機組上的表現并非最優。
2)在T2~T50風電機組上表現最優的超參數配置方案(隱含層層數為4、深度神經網絡形狀為均衡型、隱含層神經元數量為64),在參考風電機組T1上的表現也較好。
3)基于不同超參數配置的深度神經網絡訓練得到的模型,訓練結果在風電機組T2~T50上的表現總體較好,各模型的平均的均方誤差平均值為27.32 kW,最優的均方誤差平均值為12.59 kW,最不理想的均方誤差平均值為115.21 kW,相對于風電機組的額定功率2000 kW而言,均方誤差平均值占比分別為1.37%、0.63%和5.76%。
綜上所述,雖然前文中的假設并未完全得到驗證,但由于基于參考風電機組得到的性能排名靠前的超參數配置方案應用于本風電場中同一型號其他風電機組時,雖然性能不是最優但基本也較為靠前,同時準確度也在可接受范圍內,因此,在工業應用中基本可以認為該方式具備推廣性。即實際應用中,出于時間成本考慮,可以將基于參考風電機組得到的超參數配置方案及模型直接應用于本風電場中同型號的其他風電機組。
本文以某實際運行風電場的50臺2000 kW風電機組的SCADA數據為基礎,對采用深度神經網絡技術建立風電機組性能模型時的隱含層層數、深度神經網絡形狀及隱含層神經元數量這3個超參數的取值對于該模型構建效果的影響進行了分析。通過Grid Search方法在參考風電機組上發現這3個超參數配置不同時建立的模型的最終性能存在一定差異,但從工業應用角度考慮,此差異基本可以忽略不計。同時分析還發現,參考風電機組采用最優超參數配置方案時訓練得到的模型應用于同一風電場中同一型號的其他風電機組時得到的并非最佳方案,但由于其在同一風電場中同一型號的其他風電機組上的預測準確度在所有配置方案中仍然較優,因此出于時間成本考慮,在工業應用中可以認為同一風電場中同型號的風電機組間可以應用此方案,采用深度神經網絡在參考風電機組上得到的最優模型具備推廣性。
基于本研究的方法與結論,在未來工作中可以進一步針對不同型號的風電機組或不同風電場的風電機組進行超參數配置方案的尋優及推廣性驗證。若基于參考風電機組訓練得到的風電機組性能模型在不同機型乃至不同風電場間可以直接推廣復用,則可進一步為機器學習技術在風電行業后評估工作中的應用確立更為普遍的事實依據。