?

基于改進深度森林的短期電力負荷預測模型

2022-06-21 06:11張曉華鄧文琛陳志奎
重慶大學學報 2022年5期
關鍵詞:向量負荷深度

彭 飛,馬 煜,張曉華,吳 奕,鄧文琛,陳志奎

(1. 國家電網公司東北分部,沈陽 110180;2.國網遼寧沈陽供電公司,沈陽 110811;3.中國科學院 沈陽計算技術研究所有限公司,沈陽 110168;4.大連理工大學 軟件學院,遼寧 大連 116024)

電力負荷預測主要是指結合歷史數據和經濟社會發展因素等對未來某一個時段的電力運行負荷、用電市場需求、用電發展形勢、用電量等因素進行綜合的預測及數值推算。負荷預測的研究對象是不確定事件,雖然整體上隨著居民和企業的生產活動顯現周期性變化,但同時也受到氣溫、降水、濕度、節假日、市場交易等各種環境因素的制約顯現隨機性變化。這種不確定性對負荷預測研究和技術提出了精細化、綜合化和多元化發展的需求。因此,添加環境因素、引入新的算法、優化模型結構進而提高負荷預測精度是電力系統穩定、安全、經濟運行的關鍵。

近年來,隨著算法的優化更新和機器學習方法的應用,電力負荷預測技術也進一步提升。但傳統的統計學方法和機器學習中的經典算法多屬于淺層學習方法,能夠擬合的數據量較小,學習能力較差,導致預測結果的誤差較大,難以滿足越來越高的預測精度需求。隨著深度學習模型的不斷發展,采用深度模型進行電力負荷預測的研究也越來越多,在短期電力負荷預測方面取得了許多突破。但深度模型往往需要使用大量的超參數,算法參數設定多為長期嘗試結果或長期累積經驗,人為干預較大,收斂速度較慢。因此,文中將深度森林算法引入電力負荷預測領域,解決深度模型參數多、收斂速度較慢等問題;針對電力預測數據的特點對模型進行改進,提出改進后的深度森林算法(DF, deep forest),以此提升預測效果;并采用中國東三省及內蒙東部電網的實際運行的數據進行驗證,證明該方法的可行性。

1 研究現狀

電力負荷預測的目標可分為三類:超短期預測、短期預測與中長期預測,文中主要研究其中的短期預測方法。傳統的短期預測方法主要是回歸分析法,該方法利用大量歷史數據分析電力負荷的波動規律,建立擬合函數,從而進行歷史、現在、未來電力負荷發展方式的一致性預測[1-2]。孫建梅等[3]在大量使用灰色模型的基礎上增加數據預處理工作,并對電力負荷進行了中長期預測,擴展了模型的應用范圍。張志等[4]通過關聯矩陣篩選得到影響負荷變化的強相關因素并對其按季節進行分解,在此基礎上利用時滯效應檢驗和主成分分析法提升數據質量,取得了較高的預測精度。但回歸分析法難以確定回歸線類型、回歸變量,難以達到理論上的最佳預測值[5]。

隨著機器學習的發展,大量機器學習方法也被應用于短期負荷預測領域,包括支持向量機(SVM, support vector machine)、灰色模型、指數平滑法等。研究發現,神經網絡法對短期的電力負荷預測更準確[6]。簡獻忠等[7]構建了一種全過程優化的支持向量機模型進行短期負荷預測,較之前的局部優化模型能夠取得更高的預測準確度。

但這些機器學習方法大多還停留在淺層學習,對于數據特征學習能力較差,能夠擬合的數據量較小。因此,隨著算法技術的發展,大量深度學習模型也被應用于電力負荷短期預測。張靜等[8]采用了基于擁擠距離法改進的多目標粒子群優化算法和BP神經網絡算法對電力負荷預測研究,得到的預測精度更高、相對誤差較小。文獻[9-10]利用長短記憶網絡(long-short term memory)來解決深度學習模型中常見的梯度消失的問題,并在此基礎上對個人住宅的負荷進行預測,取得了較好的效果。Chen等[11]將數值預測問題轉化為圖像處理任務,使用卷積神經網絡(convolutional neural networks)模型輸入數據執行精確的聚類,考慮了溫度、濕度、風速等外部影響因素,具有很高的精度。

但是深度模型也受限于較大的數據需求,在數據量較小時難以使用。此外,深度學習模型的“黑箱”性質使得其可解釋性較差,超參數設置較多,在許多領域并不被廣泛認可。針對這些問題,文章將深度森林模型引入短期電力負荷預測領域。深度森林模型[12]是一種2017年提出來的深度學習模型,它的核心思想是對隨機森林進行集成。相較于其他深度學習模型,深度森林方法在每一層自主訓練參數,不需要反向傳播過程,因此對于訓練集的樣本數量要求較低,并且極大地減少了訓練時間,拓寬了深度模型的應用領域。另外,由于決策樹構成了深度森林的基本單元,使得該模型具有較好的可解釋性,需要人工設置的超參數數量也非常少,在許多缺少歷史經驗的領域也取得了較好的效果。目前,深度森林模型已經在醫療、交通、金融等多個領域得到了應用[13-15]。

2 電力負荷預測模型

2.1 多粒度級聯森林

文中基于多粒度級聯森林(gcForest, multi-Grained Cascade Forest)模型構建電力負荷預測模型。gcForest主要由兩個結構組成:多粒度掃描窗口和級聯森林。多粒度掃描窗口類似于卷積神經網絡中的滑動窗口,對輸入的數據進行不同粒度的采樣,獲取輸入特征,增強學習效果。級聯森林的作用是對輸入特征進行表征學習,它由多種隨機森林構成。如圖1所示,每一層都包括2個隨機森林和2個完全隨機森林,每個隨機森林包含若干棵樹,而每個森林都會輸出一個類向量結果。將多個森林得到的類向量進行串聯,即為這一層的輸出。將其與最初的輸入特征連接作為下一層的輸入,這樣,每一層都會接收到前一層的特征信息和最初始的特征信息。模型會一直加深層數直到收斂或者到達指定的層數上限為止,最后一層的輸出類向量就是分類的最終結果。

圖1 級聯森林結構圖Fig.1 Structure of the cascade forest

2.2 改進的深度森林算法的負荷預測模型

根據上述介紹可知,深度森林的輸入特征依賴于多粒度掃描窗口的設計。不同于圖像識別領域,負荷預測模型的輸入通常是一個一維向量,因此需要根據負荷數據的特點來設計有效的多粒度掃描窗口。

電力負荷預測具有周期性和時變性的特點,因此,負荷預測需要以歷史數據和客觀因素為參考開展預測,需要在預測前就明確采用歷史數據的時間段和未來預測的時間范圍。由于負荷數據是具有時間連續性的一維向量,選擇合適的窗口才能有效利用歷史數據的周期性。在文中,歷史數據為預測節點前18個月的電力負荷值,預測目標設定為短期預測,未來預測時間從一小時到一周不等。

針對電力負荷數據的特性,對深度森林算法進行改進。原gcForest模型通過調整窗口的大小來提取數據特征,而文中將在改變窗口大小的同時,通過調整窗口滑動的步長來提取數據的周期性。由于電力負荷數據的周期性與人類的生產生活規律密切相關,在天、周、月、年等不同的時間跨度中都表現出一定的周期性。為了提取不同粒度的周期性,參照人類對于時間的劃分方式,設定不同的步長,包括一小時、一天、一周、一月、一季以及一年,并對不同的滑動步長設定對應的窗口大小。

由于輸入向量的長度較長,365 d×24 h×4=35 040 h。當掃描步長較小時,產生的特征將特別巨大。以三分類為例,以步長4(一小時)為例,設窗口大小為96,則最終生成的輸入特征為((35 040-96)÷4+1)×3=26 211維。若將其作為級聯森林的輸入特征,會極大地增加時間復雜度和空間復雜度,甚至出現內存溢出的情況。針對這一問題,文中通過設定滑動次數上限的方式來解決。文中的窗口大小、步長以及滑動次數上限設定如表1所示。

表1 多粒度窗口滑動步長與滑動次數

如圖2所示,以窗口大小為24和672為例,分別得到1 344m維和96m維的特征,其中m是類向量長度,即分類的類別數量。串聯組合得到級聯森林部分的輸入特征。

圖2 多粒度滑動窗口掃描方法Fig.2 Illustration of multi-granularity sliding window scan

此外,若是直接以類別中間值為最后的預測結果,則會人為造成大量的誤差。針對這一問題,文章改進了最后一層的輸出。深度森林中每一個隨機森林的輸出是根據其中每一棵樹得到的類向量求均值,將離散的模型輸出變為連續值,進而能夠提供更為精確的預測結果。文中最后一層的樹不會輸出類向量,而是通過計算對應葉子節點中的具體數值來得到最終的預測值。如圖3所示,其中紅色線段代表測試樣本落入葉子節點的路徑。在多粒度窗口掃描的過程中,按照類向量的生成方法得到最初的數據特征。在預測過程中,按照均值的方法得到最終的預測值。

圖3 類向量生成方法及改進后的預測值計算方法Fig.3 Illustration of class vector generation and predicted value calculation

3 實 驗

3.1 實驗數據

文中數據來源于國家電網公司東北分部,包括了從2016年到2019年上半年的電力負荷數據,涵蓋了遼寧、吉林、黑龍江和內蒙古東部地區。數據具有較強的時間連續性,每過15 min記錄一次當前電網的功率值,總計應該有612 960條數據,實際測得567 168條數據,數據較為完整、質量較高,能夠用于驗證模型的可行性。

3.1.1 數據預處理

由于傳感器故障和異常工況等原因,原始數據包含一些錯誤信息和數據缺失的情況,必須對原始數據進行數據清洗以減小錯漏數據的影響。由于歷史數據具有時間連續性,對錯誤數據并不能單純地剔除處理,因此文中針對錯漏數據采用線性插值的方法進行數據填充。在處理數據時,沒有出現連續大段的錯漏數據,因此用插值法是可行的。

3.1.2 數據分段

為方便構建決策樹,減少計算量,通過將不同的負荷狀態進行分段,將負荷預測問題轉化為分類問題。例如,以功率1 000為區間單位長度,對于遼寧省則分為10 000~30 000共計31個區間,也就是31類;黑龍江省為1 000~20 000共21個類別;內蒙東部和吉林分為1 000~15 000共計16個類別;總負荷分為20 000~60 000共計41個類別。分類區間越短,預測精度越高,但準確率也會下降。

3.2 實驗設計

實驗將分別對4個地區的電力負荷數據與東北電網總負荷數據集進行驗證,預測目標為2019年上半年的電力負荷數據,輸入數據包括2018年全年的電力負荷數據,預測時間設為一天。對于改進后的深度森林算法,若預測值與真實值的誤差絕對值小于分段區間的一半,則認為預測結果正確,通過這種方法,可以統一以分類的準確率為標準進行比較。

對照實驗設計如下:

1)k近鄰方法(KNN, k-nearest neighbor):該方法是一種簡單有效的分類聚類方法,能夠有效應用于具有大量訓練集的任務中并能夠取得不錯的結果,在許多領域都有應用,因此文中選擇該方法作為傳統機器學習的典型算法之一。

2)支持向量機(SVM):支持向量機作為最常用的分類模型,在許多領域都驗證了它的有效性和可靠性,其中的參數都使用交叉驗證的方法調至最優。通過與該方法進行對比可以驗證文中所提出方法的有效性。

3)隨機森林(RF, random forest):深度森林的基礎模型,對于一些較為簡單的問題往往能取得較好的分類效果。實驗中隨機森林的參數設定與深度森林中單一森林的參數設定相同,可以驗證深度森林這一集成思想的有效性。

4)棧式自動編碼機(SAE, stacked autoencoder):該方法是一種典型的深度特征學習方法,能夠有效提取數據特征。與該方法進行對比,可以驗證文中所提方法相對于傳統深度學習模型的優勢。

5)多粒度級聯森林(gcForest):針對電力負荷數據特點對改進后的深度森林模型進行有效性驗證,將所提出方法與基本的gcForest模型進行對比。參數設定與文中提出方法一致,只是窗口大小固定為192,步長固定為48。

3.3 參數設置

文章對改進的深度森林方法(DF)主要采用默認的超參數設置,具體參數設置如表2所示。

表2 改進的深度森林方法的超參數設置

3.4 實驗結果

應用深度森林算法對東北總電網的功率進行預測,并于多種機器學習方法進行對比,結果如表3所示。在分段區間大小為9 000時,改進的深度森林方法取得了較好的預測結果。在縮小分段區間大小即提高預測精度要求的過程中,對比實驗的準確率會快速下降,而文章所提出的方法卻仍然能夠維持較高的準確率,說明改進的深度森林方法能夠有效提升電力負荷預測的精度,驗證了模型的有效性。

表3 東北總電網負荷預測結果

圖4為其他地區的電網數據上的實驗結果。從圖中可以更加明顯地看出,當預測精度要求不高時,傳統的機器學習方法與深度學習方法都能取得較高的準確率,但是當逐漸提高精度要求,傳統學習方法的準確率會快速下降,難以取得較為準確的預測結果。深度學習方法較傳統學習方法能夠獲得更好的特征,進而能夠滿足更高的精度要求。而改進的深度森林算法在分段區間較小時,能夠取得較為明顯的優勢。當預測精度范圍小于波動范圍20%時,傳統的深度學習方法的準確率已經出現明顯下降,而文中所提出的方法在波動范圍10%的精度要求下仍能維持較高的準確率。

圖4 各地區電網負荷預測結果Fig.4 The accuracy of load forecasting

表4為深度算法模型的層數。相比于傳統的深度學習方法,深度森林由于不需要預設模型結構,減少了超參數的設定,訓練得到的模型能夠更加適合數據集,提升算法的效率與準確度。而文中改進了深度森林的多粒度窗口掃描方法,利用電力負荷預測方面的背景知識,在模型的第一層消除了大量信息密度較低的數據,進一步提升了模型運行的效率,加快模型收斂速度,減少時間開銷的同時也降低了對硬件的需求,在此驗證了文中所提出的改進的深度森林方法在電力負荷預測方面的有效性。

表4 深度模型層數對比

4 結束語

文章進行了電力負荷預測技術的研究,針對深度學習算法參數多、收斂慢、數據量要求大的問題,將深度森林方法引入了電力短期負荷預測領域,并針對gcForest模型在電力負荷預測領域的不足對模型進行改進。選取中國東北三省以及內蒙古東部的實際電網數據進行驗證,并與傳統機器學習模型進行了對比,通過實驗驗證了所提出的負荷預測算法在短期電力預測方面的優異性。

猜你喜歡
向量負荷深度
人造革合成革拉伸負荷測量不確定度評定
3項標準中維持熱負荷要求對比分析
四增四減 深度推進
深度思考之不等式
向量的分解
MIV-PSO-BP神經網絡用戶熱負荷預測
簡約教學 深度學習
生如夏花
向量垂直在解析幾何中的應用
向量五種“變身” 玩轉圓錐曲線
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合