王劍鋒,鄭 劍,王旭東,于建成
(國網天津市電力公司,天津 300010)
電力系統負荷的準確預測是實現高效管理的基礎,為電力企業運行調度等業務的實施提供支撐[1]。由于電力數據日益復雜,數據量呈指數級增長。基于智能預測算法的負荷預測具有較高的穩定性和預測精度,還有較強的復雜映射、容錯及泛化能力,廣泛應用于電力負荷預測領域。科研工作者在負荷預測領域的研究獲得諸多突破,支持向量機SVM(support vector machine)[2]、極限學習機ELM(extreme learning machine)[3]、隨機森林 RF(random forest)[4]、長短期記憶LSTM(long short-term memory)網絡[5]等預測算法被廣泛應用逐漸完善。文獻[6]提出使用支持向量機預測中期負荷,但在處理大量時間序列數據時速度較慢。文獻[7]提出了基于ELM算法的類分布不平衡數據處理技術,依據訓練樣本的重要性分配樣本權重系數。文獻[8]提出利用反向傳播BP(back propagation)網絡進行逐項預測,最終輸出為對應于預測模型的每個子數據輸出的綜合加權值。
在進行負荷預測時,通常有特征組合和預測模型兩個影響因素,即輸入和模型。上述文獻多側重于模型,通過構建高性能的預測模型,以提升負荷預測精度。然而由于模型很難捕捉到復雜數據之間的關系,需要引入預處理等技術提高預測性能[9]。深度信念網絡DBN(deep belief network)及其變種廣泛應用于圖像識別、機器翻譯和醫學診斷等各個領域,有效地解決了分類、預測和決策問題。文獻[10]提出一種基于雙向遞歸神經網絡Bi-RNN(bidirectional recurrent neural network)和DBN的混合模型,該模型采用無監督預訓練和監督調整訓練方法,在短期電力負荷預測中具有較高的精度。在文獻[11]中,利用Nadam動量優化算法對深信度網絡進行訓練,以獲得最佳的DBN參數。在Keras深度學習框架的基礎上,對DBN結構進行了調整,可獲得最佳的預測結果。
本文提出了一種基于改進DBN算法的電力系統負荷預測方法,在充分挖掘歷史負荷數據中的規律性的基礎上,數據特征向量輸入到多個用于兩層稀疏自編碼神經網絡中進行特征融合,利用DBN模型進行負荷預測,并進行無監督訓練對模型進行預訓練,最后通過BP算法進行微調到最終的預測結果。本文方法可充分利用歷史負荷數據的規律性,從而提高預測的效率,同時可充分考慮不同因素的影響,提高其預測精度。
短期負荷預測的輸入數據涉及多類,如天氣數據(溫度、濕度、降水量、風速等),日類型數據,電量數據及電價信息等,數據的選擇與聚合至關重要。其中氣象因素對負荷影響的多日累積效應,例如,對于某日的負荷而言,連續三天高溫與當日突然高溫,兩種情況對負荷的影響會有明顯差別。同時氣象是多個因素產生某種相合效果后才作用于電力負荷,分析影響時需要考慮氣象指數的耦合效果。氣象因素作用于電力負荷的影響如圖1所示[12]。

圖1 氣象因素作用于電力負荷的影響Fig.1 Influences of meteorological factors on power load
對于待預測日為非節假日,訓練樣本集為該日前一些天非節假日的數據;若為節假日,利用灰色關聯投影技術獲得預測日的相似日,并作為訓練樣本集。計算Y0j與Yij間的關聯度公式為

式中:λ為分辨系數;n為預測日的個數;m為關聯系數的位置序號;Y0j為待預測日特征向量的第j個影響因素值;Yij為第i個樣本的第j個影響因素值。
各影響因素所占權重計算公式為

式中:Wj為第j個影響因素的權重值;為第i個樣本的第j個因素對應的灰色關聯度值。
在上述基礎上進行數據歸一化處理,目標是把有量綱數據變為無量綱數據,并將數據映射到0~1范圍之內,以提升預測模型的收斂速度。

式中:Xi為樣本數據;為Xi的歸一化值;Xmax和Xmin分別為Xi的最大值和最小值。
本文提出采用三層的自編碼神經網絡SNN(self-coding neural network)進行,通過近似相同的函數使目標輸出值接近輸入值從而最小化預期的重建誤差。圖2給出了SNN基本架構,該網絡可以通過激活功能進行從前一層到下一層的非線性轉換。

圖2 本文所采用的SNN網絡基本架構Fig.2 Basic SNN network architecture adopted in this paper


將受限波爾茲曼機RBM(restricted Boltzmann machine)堆疊形成神經網絡,應用RBM訓練實現構建神經網絡已被證明是一種快速有效的方法[8]。其中如何建立確切的預測模型以及如何恰當地訓練所建立的預測模型是利用深度信念網絡解決繁雜因素影響下的負荷預測問題的關鍵。本文所采用的改進深度信念網絡模型如圖3所示,由一個高斯-伯努利RBM即GB-RBM(Gaussian-Bernoulli RBM)、多個隨機單元伯努利RBM即BB-RBM(Bernoulli-Bernoulli RBM)和一個回歸輸出層構成。輸入樣本為x={x1,x2,…,xn},輸出樣本為y。

圖3 改進深度信念網絡模型Fig.3 Improved DBN model
將GB-RBM作為堆疊組成DBN的第一個RBM,以便將輸入數據中的天氣數據和負荷數據等連續型實值數據有效的轉化成二進制數據。因為BB-RBM適用于處理二進制數據(如黑白圖像或編碼后的文本)的建模過程,所以其他RBM均采用BB-RBM,實現輸入信息的特征提取;最后的RBM隱藏層和輸出層組成線性回歸網絡,通過不同類型激活函數處理得到時間間隔為15 min,30 min或1 h的電力負荷時間序列。

式中,Z為與二進制向量(v,h)有關的配分函數[6]。
“限制”是指RBM模型的同類節點之間不存在連接,這代表隱藏層單元(或者可見單元)之間條件獨立性成立。在BB-RBM中,所有單位都是二進制隨機單元,這意味著輸入數據應該是二進制的,或者在0和1之間的實數值表示可見單元活躍或不活躍的概率。
每個單位的條件概率分布由其接收的輸入的sigmoid函數給出,即

式中,σ(x)=1/(1+exp(-x))為sigmoid激活函數。
在進行短期負荷預測時,需要將上述模型進行訓練,調整參數θ以擬和給定的訓練樣本。本文采用最大似然估計方法,尋找參數θ使得訓練數據x在該情景下概率最大。對于給定的訓練集,訓練樣本模型對數似然值可以表示為

式中,θ={b、a、W},D是訓練數據集。
其梯度可表示為

采用無監督學習對DBN進行預訓練,同時為下一步的參數微調提供更優的參數基礎。在混合預訓練的過程中,為保障預測模型的完整性,需在待訓練的RBM上堆疊一層臨時輸出層。
將無監督學習應用到深度信念網絡中。采用稀疏自動編碼器模型作為深度學習中數據的預處理工具具有定的代表性。稀疏自動編碼器模型為:對稀疏自編碼參數進行訓練,在稀疏自編碼模型中,尋找重構數據a?使其接近原始數據a,即:

在逐層混合預訓練后,本文采用BP算法進行全局參數微調。BP神經網絡具有很好的信息順向傳輸與誤差反向傳播特點。通過不斷地重復周期以達到所期望的誤差,最后經過訓練得到符合期望的模型。但由于BP神經網絡存在學習速度較慢、精度不高等問題,故采用改進反向傳播算法收斂速度的措施,即附加沖量項為

為了加速RBM的訓練過程,采用對比散度CD-k算法進行無監督學習。由于CD-k算法中,當k=1時,就能達到較好的擬合效果(一步吉布斯采樣)。故一般采用CD-1算法。

式中:v*為可視層v的重構,根據v*所得隱藏層為h*;設學習效率為ε,經過對比散度算法對RBM進行訓練后,權重矩陣W、可視層的偏置向量b、隱藏層的偏置向量c。
應用誤差反向傳播訓練過程,包括計算每一層的凈輸入和激活值,直到最后一層,然后反向傳播計算每一層的誤差項,獲得每一層參數的偏導數,并更新參數。具體訓練過程如下:

算法:基于隨機梯度下降的反向傳播求解過程偽代碼輸入:IDBN網絡參數L,神經元數量ml,1≤l≤L,設定訓練集D,驗證集V,參數 θ ={b、a、W}.1:初始化W,b 2:repeat 3:對訓練集D中的樣本隨重新排序4:for n=1,…,N,do 5: 從訓練集D中選取樣本(x,y);6: 前饋計算每一層的凈輸入z(l)和激活值a(l),直到最后一層;7: 反向傳播計算每一層誤差δ(l);8: 基于式(16)計算每一層參數的導數9: 基于式(17)更新參數 θ={b、a、W}.10:end 11:IDBN網絡在驗證集V上的錯誤率不再下降輸出:W,b
傳統的處理方法一般通過負荷預測模型直接獲得負荷的預測值,本文利用神經網絡模型進行負荷預測,并進行無監督訓練對模型進行預訓練,獲得短期負荷預測結果,具體流程如圖4所示。

圖4 基于改進DBN的負荷預測流程Fig.4 Load forecasting process based on improved DBN
負荷測試選取中國某區域的實際電力負荷數據,時間跨度為2018年1月至2019年12月,選取的數據包括4組主要的測量變量:天氣數據(溫度,降水量,風速和太陽輻射)、日類型數據、電量數據和分時電價數據(高峰時段為7:00—11:00,19:00—23:00;平常時段為11:00—19:00;低谷時段為23:00—次日7:00)。從當地的氣象網站采集天氣數據,并將同一時間下的氣象和負荷數據一一對應進行匹配。
模型的評估和比較采用平均絕對百分比誤差MAPE(mean absolute percentage error)來衡量,由于MAPE的穩定性好,可以將其作為多種評估標準的基準,即

式中:N為測量負荷的樣本數;yl(k)和y?l(k)分別為第k天的第1小時的量測負荷和預測負荷。
對構建的G-DBN模型進行短期電力負荷預測。圖5為G-DBN模型與采用BB-RBM的DBN(BDBN)模型的對比結果。兩種模型均進行預訓練和BP微調進行模型參數尋優。

圖5 G-DBN與B-DBN的預測對比Fig.5 Comparison of prediction between G-DBN and B-DBN
通過比較可得,G-DBN的預測精度更高,BDBN預測效果的不穩定性是由于BB-RBM在處理實值數據時易于產生噪聲。
為了進一步驗證G-DBN的可行性,對某地區2020年全年負荷值按季節進行分別預測,得到春、夏、秋、冬4個季節場景下的負荷預測值。采用待測日前十個月的實際負荷數據作為訓練樣本集和測試樣本集。選擇常用的人工智能預測方法:BP神經網絡、SVM方法和傳統DBN方法(無監督學習預訓練和S-BP算法微調)形成對照。為確保實驗結果的真實性,實驗結果均為執行100次得到的平均值。4個季節下不同類型預測方法的比較如圖6所示。由圖6可知,G-DBN模型預測下四季的MAPE為3.59%,小于其他方法。考慮到溫度,光照強度和使用時間電價的影響,G-DBN可以更充分地利用多種影響因素和電力負荷之間的復雜關系。

圖6 4個季節下的負荷預測方法性能比較Fig.6 Comparison of performance among load forecasting methods in four seasonal scenes
為了驗證本文方法的泛化性能,獲取可再生能源發電出力占比為30%左右、20%左右、10%左右的3個不同地區的負荷作為對比試驗的輸入樣本,并以MAPE作為評價指標,如圖7所示。由圖7可知,當可再生能源出力占比提高時,各方法的預測誤差均會變大,BP和SVM變化較為明顯,而DBN和GDBN略有變化。原因是隨著可再生能源出力占比提高,電力系統運行更加不穩定,非線性負荷曲線更加復雜,深層網絡擬合復雜非線性曲線的優勢更加明顯。

圖7 不同地區的負荷預測方法性能對比Fig.7 Comparison of performance among load forecasting methods in different regions
本文提出的改進深度信念網絡的負荷預測算法,通過引入高斯-伯努利受限玻爾茲曼機,改進了現有神經網絡算法學習對歷史數據利用的問題,提高了學習效率。仿真結果顯示,相比于傳統神經網絡算法,基于改進深度信念網絡算法的電力負荷預測預測準確性得到有效提升。