查雯婷 閆利成 陳 波 李亞龍 楊 帆
1(中國礦業(yè)大學(xué)(北京)機電與信息工程學(xué)院 北京 100083)2(內(nèi)蒙古電力科學(xué)研究院 內(nèi)蒙古 呼和浩特 010020)
風(fēng)能作為一種不確定性電源,隨著其在電力系統(tǒng)中的比例逐年升高,大規(guī)模集群入網(wǎng)的方式對系統(tǒng)調(diào)度帶來了巨大的挑戰(zhàn)[1-2]。同樣電力系統(tǒng)的不確定性也急劇增加,如何提高風(fēng)電功率的預(yù)測精度成為該領(lǐng)域的研究熱點之一[3]。然而目前的研究對象多為單一風(fēng)電場,鮮有對大區(qū)域的風(fēng)電功率預(yù)測研究[4]。高精度的區(qū)域級超短期風(fēng)電功率預(yù)測對風(fēng)電并網(wǎng)、風(fēng)電定價等方面有著重要的參考價值[5]。區(qū)域風(fēng)電場和單一風(fēng)電場的功率預(yù)測情況有所不同。單一風(fēng)電場的研究數(shù)據(jù)可選用歷史功率數(shù)據(jù)、天氣預(yù)報(NWP)數(shù)據(jù)和風(fēng)電場周圍的物理信息數(shù)據(jù)等。但區(qū)域預(yù)測時由于不同地區(qū)的差異性導(dǎo)致大多特征數(shù)據(jù)都難以適用,只能選用歷史功率數(shù)據(jù)作為研究對象,故預(yù)測難度也更高。因此能否從歷史數(shù)據(jù)中挖掘到有用信息成為提高區(qū)域風(fēng)電功率預(yù)測精度的關(guān)鍵。
目前區(qū)域級風(fēng)電功率預(yù)測的方法或模型還很少,文獻(xiàn)[6]通過氣象預(yù)測數(shù)據(jù)與歷史數(shù)據(jù)的相似程度,采用加權(quán)平均外推法得到區(qū)域功率預(yù)測值。文獻(xiàn)[7]通過預(yù)測基準(zhǔn)風(fēng)電場功率而映射出各子區(qū)域功率,通過疊加再得到區(qū)域的風(fēng)電功率。文獻(xiàn)[8]采用統(tǒng)計升尺度方法獲取區(qū)域風(fēng)電功率。這些方法存在的問題是模型相對簡單,而區(qū)域風(fēng)電功率數(shù)據(jù)的規(guī)律性較差,傳統(tǒng)的統(tǒng)計學(xué)習(xí)和機器學(xué)習(xí)模型難以獲得較高的預(yù)測精度。隨著大數(shù)據(jù)技術(shù)的進(jìn)步和并行計算能力的提升,深度學(xué)習(xí)技術(shù)取得重大突破,神經(jīng)網(wǎng)絡(luò)在時序預(yù)測領(lǐng)域得到廣泛應(yīng)用[9]。其中循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)正是一種處理時序數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò),LSTM是RNN的改進(jìn)模型,可以解決RNN在使用中存在的問題,同時兼顧數(shù)據(jù)的時序性和相關(guān)性[10],能充分反映時間序列數(shù)據(jù)中的長期歷史信息[11]。文獻(xiàn)[12]使用LSTM預(yù)測居民用電負(fù)荷,并論證了LSTM相較于傳統(tǒng)預(yù)測方法的優(yōu)越性。文獻(xiàn)[13]使用LSTM預(yù)測PM2.5的變化情況,實驗結(jié)果表明該模型既可以較準(zhǔn)確地預(yù)測變化趨勢,又可以響應(yīng)波動變化。文獻(xiàn)[14]提出了一種基于LSTM的股票預(yù)測模型,并對損失函數(shù)做正則化處理,結(jié)果表明該模型可以獲得較高的擬合程度。LSTM在時序預(yù)測領(lǐng)域中的廣泛應(yīng)用,也為區(qū)域風(fēng)電功率預(yù)測提供了可能。
超參數(shù)是指在開始學(xué)習(xí)過程之前設(shè)置的參數(shù)集,它的選取將直接決定網(wǎng)絡(luò)模型的拓?fù)浣Y(jié)構(gòu)。LSTM模型在構(gòu)建過程中同樣需要設(shè)置很多超參數(shù)。為了找到最合適的超參數(shù)組合,并盡量降低時間資源和計算資源的消耗。文獻(xiàn)[15]提出了一種貝葉斯優(yōu)化算法的變型,名為TPE(Tree-structured Parzen Estimator)的調(diào)優(yōu)理論。貝葉斯優(yōu)化算法可以看成通過先驗分布使用啟發(fā)式手段的一種間接的尋優(yōu)方法,與網(wǎng)格搜索遍歷參數(shù)空間和隨機搜索[16]利用隨機數(shù)去求函數(shù)近似的最優(yōu)解明顯不同。貝葉斯優(yōu)化在搜索過程中會參考之前的參數(shù)信息,不斷更新先驗分布,因此可以迭代更少的次數(shù),但精度更高。
為了提高區(qū)域超短期風(fēng)電功率預(yù)測精度,本文采用TPE算法對LSTM模型中比較重要的部分超參數(shù)自動尋優(yōu),借助歷史風(fēng)電功率數(shù)據(jù)完成模型的訓(xùn)練。此外為了減小預(yù)測過程中存在的誤差,加入誤差校正環(huán)節(jié)對預(yù)測結(jié)果完成校正。為驗證TPE-LSTM網(wǎng)絡(luò)的預(yù)測精度,加入實際的工程預(yù)測數(shù)據(jù)、BP網(wǎng)絡(luò)和RNN網(wǎng)絡(luò)與其比較。同時為了進(jìn)一步證實TPE算法對模型超參數(shù)尋優(yōu)的有效性,將參考模型中重要的超參數(shù)同樣采用TPE算法尋優(yōu)。
LSTM相比RNN在內(nèi)部結(jié)構(gòu)上多了一種自環(huán)結(jié)構(gòu)的記憶單元(Memory Cell)。這樣的設(shè)計雖然提高了模型的復(fù)雜度,但可以很好地解決RNN在使用過程中存在的梯度消失或梯度爆炸等問題,能夠深入挖掘在時間序列中蘊含的內(nèi)在規(guī)律。LSTM基本單元模型如圖1所示。
圖1 LSTM基本單元模型
記憶單元中的三個控制門:輸入門(Input Gate)、遺忘門(Forget Gate)和輸出門(Output Gate)。輸入門有條件地決定單元中存儲的信息,遺忘門確定計算單元歷史狀態(tài)信息的保留,輸出門控制信息輸出。Sigmoid激活函數(shù)可以將控制門的輸出映射到區(qū)間[0,1]內(nèi),當(dāng)輸出值越接近0時,表示上一狀態(tài)的信息被舍棄得越多;當(dāng)輸出值越接近1時,表示上一狀態(tài)的信息被保留得越多。LSTM的原理可以由式(1)-式(6)進(jìn)行描述。
ft=Sigmoid(wf·[ht-1,xt]+bf)
(1)
it=Sigmoid(wi·[ht-1,xt]+bi)
(2)
ot=Sigmoid(wo·[ht-1,xt]+bo)
(5)
ht-1=ot×tanh(Ct)
(6)
超參數(shù)尋優(yōu)的目的是最大程度提高模型的性能或效果。優(yōu)化過程如式(7)所示,其中配置空間X由所有需要優(yōu)化的超參數(shù)組成,經(jīng)過不斷調(diào)節(jié)模型的超參數(shù),可以得到一組最優(yōu)值x*。
x*=argminf(x)
(7)
式中:X是配置空間;f(x)是目標(biāo)函數(shù);x*是X中使得目標(biāo)函數(shù)f(x)取得最小值的一組超參數(shù)。
貝葉斯優(yōu)化是一種對模型超參數(shù)自動尋優(yōu)的搜索方法,原理是基于目標(biāo)函數(shù)在先前的評估結(jié)果建立以概率模型為依據(jù)的替代函數(shù)。與其他搜索算法相比,貝葉斯優(yōu)化將搜索問題轉(zhuǎn)換成一個優(yōu)化問題,并且在每次更新超參數(shù)時都會參考先前的觀測空間和優(yōu)化結(jié)果。在文獻(xiàn)[15]中,Bergstra等提出一種貝葉斯優(yōu)化的變體TPE算法來優(yōu)化模型的超參數(shù),其采用對p(x|y)和p(y)同時建模的方式代替只對p(y|x)建模。其中:p(y)代表解的分布情況;p(x|y)代表已知解的情況下,參數(shù)x的分布情況。此外引入優(yōu)化標(biāo)準(zhǔn)EI用于引導(dǎo)搜索配置空間。p(x|y)計算如下:
式中:y′是已經(jīng)定義好的閾值;l(x)表示觀測值x(i)的損失函數(shù)比y′小的密度估計值;g(x)表示觀測值x(i)的損失函數(shù)比y′大的密度組成。
為了防止在尋優(yōu)過程中陷入局部最優(yōu),確保能夠遍歷所有有希望的配置區(qū)域。EI正好可以滿足這樣的要求,它可以理解為相對于閾值y′,新的超參數(shù)所對應(yīng)的解所能提高的幅度。EI的定義如式(9)所示。
從式(10)可以看出,在最大化EI尋找更優(yōu)的超參數(shù)過程中,EI應(yīng)該逐步迭代到使g(x)/l(x)更小的值,即逼近最大概率的l(x)和最小概率的g(x)。
超參數(shù)尋優(yōu)后的LSTM模型雖然具有強大的泛化能力,但是仍然存在一定的誤差。為了盡可能縮小模型預(yù)測誤差,采用最小二乘多項式以n階多項式擬合預(yù)測數(shù)據(jù)前的s個數(shù)據(jù),擬合完成后得到擬合曲線并求取右端點外一個數(shù)據(jù)點的數(shù)值f(x′)。擬合過程使用的多項式如式(11)所示,具體的誤差校正過程如式(12)所示。
為了實現(xiàn)風(fēng)電功率預(yù)測,需要構(gòu)建合適的神經(jīng)網(wǎng)絡(luò)模型,以達(dá)到理想的預(yù)測效果。具體包括數(shù)據(jù)的修復(fù)及預(yù)處理、超參數(shù)優(yōu)化、預(yù)測流程的確定和模型預(yù)測精度評價指標(biāo)的選取。
由于獲取的數(shù)據(jù)中存在部分缺失,按照缺失數(shù)據(jù)時間間隔的長短分別采用線性插值和相似天填補的方法完成修復(fù),并對其完成降噪以提高信噪比。
確保數(shù)據(jù)的完整性后,需要對數(shù)據(jù)進(jìn)行歸一化處理。歸一化是一種無量綱的數(shù)據(jù)處理手段,把帶有單位的物理量線性映射到區(qū)間[0,1]內(nèi),處理成不含單位的相對值。此過程有利于降低運算量、加快收斂的速度和降低量值之間因為量綱和數(shù)量級的差異而帶來的影響。計算公式如式(13)所示。
式中:P′為歸一化后的風(fēng)電功率值;Pt為當(dāng)前的風(fēng)電功率值;Pmax和Pmin為當(dāng)組實驗數(shù)據(jù)中的風(fēng)電功率數(shù)據(jù)的最大值和最小值。
使用TPE算法對LSTM網(wǎng)絡(luò)尋優(yōu)時,首先應(yīng)確定需要尋優(yōu)的超參數(shù)和各超參數(shù)的取值范圍。本文模型主要優(yōu)化的超參數(shù)包括輸入時間長度L、隱含層層數(shù)N和隱含層節(jié)點個數(shù)J等。輸入時間長度L表示訓(xùn)練和預(yù)測過程中的歷史數(shù)據(jù)序列長度,其數(shù)值確定既需考慮歷史時序信息的完備利用,也需考慮預(yù)測模型的有效訓(xùn)練。隱含層層數(shù)N即LSTM層的層數(shù),它的選取需要衡量數(shù)據(jù)規(guī)模和訓(xùn)練時間。隱含層節(jié)點個數(shù)J即LSTM層每一層中的神經(jīng)元數(shù)量,可依據(jù)經(jīng)驗公式得到取值范圍。經(jīng)驗公式如式(14)所示。
式中:nh為隱含層的節(jié)點數(shù);n為輸入層的節(jié)點個數(shù);l為輸出層的節(jié)點個數(shù):α為[1,10]之間的常數(shù)。
此外學(xué)習(xí)率R、迭代次數(shù)Epochs和批次大小Batch_size同樣很重要。其中,合適的學(xué)習(xí)率及批次大小設(shè)置有助于顯著提升深度學(xué)習(xí)模型迭代收斂速度與預(yù)測精度。
考慮到風(fēng)電功率受天氣和政治經(jīng)濟(jì)等因素的影響,在超短期內(nèi)具有一定的規(guī)律性。因此選取連續(xù)的一段數(shù)據(jù)作為數(shù)據(jù)集,并將其按照t∶v∶e的比例將數(shù)據(jù)劃分成訓(xùn)練集、驗證集和測試集。訓(xùn)練集和驗證集同為n∶l的多輸入、多輸出訓(xùn)練模式,在完成訓(xùn)練和驗證過程后保存最佳的模型,使用此模型實現(xiàn)對測試集的數(shù)據(jù)預(yù)測,完整的預(yù)測過程如圖2所示。
圖2 預(yù)測過程
網(wǎng)絡(luò)的輸出層采用LSTM網(wǎng)絡(luò)與全連接層連接的方式,并將此層的激活函數(shù)設(shè)為線性激活函數(shù),目的是將具有強非線性特征的預(yù)測問題簡化成線性回歸問題。完整的模型預(yù)測流程如圖3所示。
圖3 模型預(yù)測流程
以輸出層節(jié)點長度為單位統(tǒng)計每一次的預(yù)測結(jié)果,建立以均方根誤差(RMSE)、平均絕對百分誤差(MAPE)和合格率Q為評價指標(biāo)的評價體系。RMSE和MAPE的計算如式(15)、式(16)所示,合格率的計算如式(17)、式(18)所示。
式中:Pp是風(fēng)電功率預(yù)測值;Pr是風(fēng)電功率真實值;n是目標(biāo)預(yù)測數(shù)量;Sop為開機總?cè)萘俊?個不同的評價指標(biāo)均能反映模型的預(yù)測精度,其中:ρRMSE和ρMAPE越小表示預(yù)測誤差越??;Q則是越大表示預(yù)測誤差越小。
根據(jù)上文建立的LSTM模型,選取北方某區(qū)域所有風(fēng)力發(fā)電廠在2018年9月至2018年11月中旬共76天的歷史風(fēng)電功率數(shù)據(jù)(時間分辨率為15分鐘)作為實驗數(shù)據(jù)。按照7 ∶3 ∶6的比例劃分成訓(xùn)練集、驗證集和測試集。本文將測試集的比例提高是因為預(yù)測過程中用到的模型是已訓(xùn)練好的模型,模型不需要重復(fù)訓(xùn)練,提高測試集的比例以證明模型的泛化能力。模型的輸出尺度為4,將預(yù)測結(jié)果反歸一化后得到的數(shù)值即代表在未來1個小時的預(yù)測功率值。
在超參數(shù)尋優(yōu)過程中為了降低主觀判斷對模型預(yù)測精度的影響,在設(shè)置各超參數(shù)的選取范圍時盡可能做到廣泛、全面,這樣才能尋找到最佳的超參數(shù)組合。理論上3層的網(wǎng)絡(luò)已經(jīng)可以逼近任何的非線性函數(shù),從而將LSTM層數(shù)控制在4層以內(nèi)。依據(jù)前文中需要確定的超參數(shù),對超參數(shù)的取值范圍設(shè)置如表1所示。
表1 模型超參數(shù)取值范圍
經(jīng)過TPE尋優(yōu)得出的超參數(shù)配置如下。輸入節(jié)點個數(shù)為16;LSTM的層數(shù)為2,其中第一層LSTM網(wǎng)絡(luò)的節(jié)點個數(shù)為9,第二層LSTM網(wǎng)絡(luò)的節(jié)點個數(shù)為6,構(gòu)成一個16- 9- 6- 4的四層神經(jīng)網(wǎng)絡(luò);激活函數(shù)為Sigmoid;Epochs為78;Batch_size為8;優(yōu)化算法為Adam。
為了驗證經(jīng)TPE算法優(yōu)化得到的LSTM模型可以更好地提升預(yù)測精度,進(jìn)行對比實驗的BP和RNN同樣使用TPE算法尋優(yōu)。由于受到數(shù)據(jù)數(shù)量級大小的影響,實驗結(jié)果的RMSE較大。模型預(yù)測精度如表2所示。
表2 模型預(yù)測精度對比
可以看出,TPE-LSTM模型與工程預(yù)測數(shù)據(jù)相比均方根誤差、平均絕對百分誤差分別只低了3.993、0.231百分點,合格率也高了2.015百分點,這說明TPE-LSTM已經(jīng)超過了工程預(yù)測數(shù)據(jù)的預(yù)測精度,但是還比較有限。為進(jìn)一步研究誤差校正對模型預(yù)測精度的影響。根據(jù)式(11)、式(12)對預(yù)測數(shù)據(jù)進(jìn)行誤差校正。表3給出了TPE-BP、TPE-RNN和TPE-LSTM算法經(jīng)過誤差校正之后的RMSE、MAPE和合格率。
表3 誤差校正后模型預(yù)測精度
為了更好地對比誤差校正對預(yù)測精度的影響,將TPE-BP、TPE-RNN和TPE-LSTM三種模型校正前后的數(shù)據(jù)結(jié)果進(jìn)行對比,如圖4、圖5和圖6所示。
圖4 誤差校正前后RMSE對比
圖5 誤差校正前后MAPE對比
圖6 誤差校正前后合格率對比
可以看出誤差校正前后,三種模型的RMSE和MAPE均有不同程度的降低,合格率也均有不同程度的提升,其中TPE-LSTM的RMSE相較于誤差校正前降低了25.504,相較于工程預(yù)測數(shù)據(jù)較低了30.396;TPE-LSTM的RMSE相較于誤差校正前降低了0.497百分點,相較于工程預(yù)測數(shù)據(jù)較低了0.728百分點。從圖6中可以看出誤差校正前后,三種模型的合格率也均有不同程度的提升,其中TPE-LSTM的合格率相較于誤差校正前提高了2.579百分點,相較于工程預(yù)測數(shù)據(jù)提高了4.594百分點,此外TPE-BP和TPE-RNN的預(yù)測精度也同樣有較大的提升。實驗結(jié)果表明,誤差校正策略能夠有效降低算法預(yù)測誤差,提高算法的預(yù)測精度。
為了驗證誤差校正可以有效減小模型在預(yù)測過程中存在的誤差,真正提升模型的預(yù)測精度。此節(jié)著重對比誤差校正后TPE-BP、TPE-RNN和TPE-LSTM三種模型的預(yù)測數(shù)據(jù)與工程預(yù)測數(shù)據(jù)之間的差異,對RMSE和MAPE以每4個數(shù)據(jù)為統(tǒng)計長度統(tǒng)計每次預(yù)測結(jié)果的RMSE和MAPE,統(tǒng)計后的RMSE分布情況如圖7所示,MAPE分布情況如圖8所示。
圖7 前40次預(yù)測結(jié)果的RMSE
圖7給出了誤差校正后TPE-LSTM、TPE-RNN、TPE-BP和工程預(yù)測數(shù)據(jù)在前40個預(yù)測點的RMSE對比。可以看出,TPE-LSTM的RMSE在四種模型中總體變化穩(wěn)定且幅值也更小,這同時也證明TPE-LSTM模型的預(yù)測結(jié)果變化趨勢與真實數(shù)據(jù)更接近。
圖8 MAPE分布情況
從圖8中可以看出,誤差校正后TPE-LSTM數(shù)據(jù)的誤差分布情況更集中。其上邊緣、上四分位數(shù)、中位數(shù)和下四分位數(shù)也都是4種模型中最低的,并且其異常值也并不大,因此可以推斷出誤差校正后TPE-LSTM的MAPE應(yīng)該也是最低的,表3中的數(shù)據(jù)也證明了這一點。因此相比之下,TPE-LSTM算法的預(yù)測效果具有更好的擬合效果和預(yù)測精度。
以上實驗結(jié)果表明,本文提出的TPE-LSTM模型預(yù)測結(jié)果精度更高,且預(yù)測結(jié)果波動小,誤差相對穩(wěn)定,驗證了該算法的有效性。
利用歷史風(fēng)電功率數(shù)據(jù),提出一種基于TPE算法和LSTM的區(qū)域超短期風(fēng)電功率預(yù)測方法,結(jié)果表明基于貝葉斯優(yōu)化方法中的TPE算法可以解決神經(jīng)網(wǎng)絡(luò)模型的超參數(shù)優(yōu)化問題,具有迭代次數(shù)少、用時短等優(yōu)勢。依據(jù)尋優(yōu)后的超參數(shù)組合搭建的LSTM網(wǎng)絡(luò)模型具有較強的泛化能力,在區(qū)域超短期風(fēng)電功率預(yù)測方面相較工程預(yù)測數(shù)據(jù)和其他模型具有較高的預(yù)測精度,是一種實際且可行的方法,在此領(lǐng)域中具有較好的應(yīng)用前景。