王詩涵 周法國



摘? 要:基于現有的電力負荷預測方法提高電力負荷預測的準確性,提出了一種基于支持向量機(SVM)的電力負荷預測模型。首先分析支持向量機的理論基礎,通過建立支持向量機預測模型,將經過預處理的真實電力數據輸入該模型進行學習預測,借助均方根誤差(RMSE)、平均絕對百分比誤差(MAPE)以及預測圖表對模型預測性能進行驗證分析。實驗結果表明,SVM預測模型能夠較為準確地對電力負荷預測進行刻畫。
關鍵詞:機器學習;電力負荷;支持向量機
中圖分類號:TP273.4? ? ? 文獻標識碼:A 文章編號:2096-4706(2020)24-0120-03
Load Forecasting of Power Grid Based on Support Vector Machine
WANG Shihan,ZHOU Faguo
(School of Mechanical Electronic & Information Engineering,China University of Mining and Technology-Beijing,
Beijing? 100083,China)
Abstract:Based on the existing power load forecasting methods to improve the accuracy of power load forecasting,a power load forecasting model based on support vector machine(SVM)is proposed. First,analyze the theoretical basis of support vector machines,and by establishing a support vector machine prediction model,input the pre-processed real power data into the model for learning prediction. The prediction performance of the model is verified and analyzed with the help of root mean square error(RMSE),mean absolute percentage error(MAPE)and prediction chart. The experimental results show that the SVM prediction model can describe the power load forecast more accurately.
Keywords:machine learning;electric load;support vector machine
0? 引? 言
電力負荷在電力管理系統中有著極為重要的地位。隨著電力事業的不斷發展,準確地對電力負荷進行預測[1,2],可以更加經濟且合理地對電網進行規劃、對內部發電機組進行啟停,實現供電的穩定性與合理性,充分滿足用戶需求,促進電力市場的進一步發展。
然而,由于電力負荷變化極其復雜,與天氣因素、時間因素、季節因素甚至是否為節假日等方面的因素都息息相關。目前常見的負荷預測方法主要有兩類:一類是基于數理統計的方法,另一類是智能預測方法?;跀道斫y計的方法有回歸分析、時間序列法以及趨勢外推法等;智能預測方法則主要是機器學習方法,比如支持向量機預測方法以及神經網絡方法等。
由于各個因素與電力負荷并非都是線型相關的,其中也存在大量的非線性因素。因此,想要通過數學方法去建立相應的顯式公式以及物理模型將會非常困難。正因為如此,數理統計方法往往存在很大的偏差,并且很難將許多因素綜合考慮在內。同時,電力公司在多年的運營中已經產生了海量用電數據,借助這些數據,使用機器學習的方法進行分析,構建基于機器學習方法的電力負荷預測模型,就能夠更好地解決非線性、局部值變化過大以及多維性等難題。其中深度學習作為一種嶄新的機器學習方法,借助內部構建的多層感知器創建非線性網絡,對目標預測進行函數逼近。對于海量的數據來說,基于機器學習的預測算法將會具備更優秀的數據處理能力,同時還能夠更好地提取有效數據。
1? 現狀分析
機器學習是一種致力于探究計算機如何通過算法來仿照或實現人類的學習能力,學習新的知識并根據自身經驗對新的難題進行求解,從而不斷提升自身性能的方法。通過學習不但可以靈活應對層出不窮的新問題,而且還可以對未來數據的特征和規律進行推演和預測。然而,通常情況下,現實生活中的樣本往往數量不足且質量一般,難以找到足夠多適用于機器學習的理想數據,因此Vapnik團隊提出了一項統計學習理論[3],這是一項專門研究在訓練集所含樣本數量有限的情況下如何進行機器學習的理論科學。統計學習理論一般從部分訓練樣本出發,通過一定的方式得到一些還無法用確切的理論或原理進行分析的規律,并通過這些規律來對需要進行預測的數據進行比較精確的分析預測。
基于統計學習理論,產生了一種新的機器學習方法:支持向量機[4-6](Support Vector Machine,SVM),SVM是機器學習方法中被廣泛研究和使用的一種方法。SVM是一類按監督學習方式對數據進行二元分類的廣義線性分類器,但是隨著SVM方面的研究越來越深入,在分類之外也得到了廣泛的應用,比如回歸、離散值分析以及排序等。為了改進現有負荷預測方法所存在的預測精確度不足等問題,本文通過構建基于支持向量機的電力負荷預測模型,將數據進行預處理后,將其作為訓練集輸入預測模型中,進行特征提取。通過逐層學習與參數調試,將所提取出來的數據特征作為訓練集進行測試,然后通過輸入預測集,利用電力負荷預測模型對其進行數據預測。
2? 支持向量機算法
在給定的訓練樣本集D={(x1,y1),(x2,y2),…,(xn,yn)},yi∈{-1,1}中,線性分類器將會根據訓練樣本D在二維空間中尋找到一個超平面來將二類樣本分離。
將該平面用函數f(x)=wTx+b表示,其中T為矩陣的轉置,因此如果當f(x)恰好等于0的時候,x便是位于超平面上的點,而當f(x)大于0的點對應y=1的數據點,f(x)小于0的點對應的是y=-1的點。
此時我們令:
通過簡單平面幾何知識可求得空間中任意樣本點x到超平面的距離為: 。
由于yi∈{-1,1},因此我們將兩個異類支持向量與超平面之間的距離之和表示為? 。我們需要找到一個符合條件的超平面來分開兩類數據:該超平面離兩類樣本都足夠遠,能夠使得距離之和達到最大,也就是說最終確定的參數w和b能夠使得r達到最大,即: ,s.t.yi(wTxi+b)≥
1,i=1,2,…,n。
以上便是基本線性可分情況下的SVM模型的基本思想。而對于回歸模型部分而言,優化目標函數部分與分類模型是一致的,但是區別在于約束條件有所不同?;貧w模型的目的是為了讓訓練集樣本中的所有樣本點都盡可能地擬合到同一個線性模型之上。SVM回歸算法采用ε-insensitive誤差函數,用Lε表示該函數,其定義為? ,其中ε為所能容忍的最大誤差。因此優化目標可以定為將誤差函數最小化:,其中C為正則化常數,n為平面中的樣本點總數。
由于在上述的目標函數中含有絕對值項而不可微。因此考慮將其轉化為約束優化問題,即為每一個樣本數據都設置兩個松弛變量ζi≥0, ≥0,將誤差函數改寫成一個凸二次優化問題: 。
通過引入拉格朗日乘子,將目標優化函數轉化成無約束的形式,其中α>0, >0,μ>0, >0是拉格朗日的系數:
在滿足約束條件時,,此時拉格朗日系數全部取0,。當不滿足約束 時,則? 無解。換言之? 在滿足約束條件時的解即? 的解,并且在約束外無解。因此求解? 即能得到滿足約束的的解。因此首先對w,b,ζi,分別求偏導數并將其帶回至拉格朗日函數中,化簡后能夠得到關于αi,的函數,將該函數最大化則為接下來的目標:
(1)
式(1)的約束條件為0≤αi≤C,0≤≤C。其中κ(xi,yi)=(xi)Txj為向量內積。接下來我們考慮KKT條件,KKT最優化條件一般用來判斷一個非線性最優化問題是否包含一個待確定的解。以下僅列出核心部分:
αi(ε+ζi+wTxi+b-)=0? ? ? ? ? ? ? ? ? ? ? ?(2)
(ε+-(wTxi+b)+)=0? ? ? ? ? ? ? ? ?(3)
由式(2)、式(3)可知當αi>0時,必定有ε+ζi+wT xi+b-=0,ζi≥0,此時預測值將會小于真實值;當? >0時,必定有(ε+-(wTxi+b)+)=0, ≥0,此時預測值將會大于真實值。而且對于每一個任意的數據點,由于ε>0,則αi和不會出現同時大于0的情況,并且為了得到在誤差范圍以內的點,必定有αi=0以及=0。
由上述計算可得知? ,接下來進一步對b值進行計算,由式(2)可知某點預測值大于真實值時,有:ζi=0且(ε+ζi+wT xi+b-)=0。
可推導得出預測函數,其中(xi,)為預測值大于真實值的某個點:
3? 預測實驗
3.1? 數據來源
為了驗證所構建的SVM預測模型的有效性與精確性,實驗將使用河北省某地區2017年6月1日到6月30日之間的真實電力數據,共包含17 279組電力負荷數據。數據中包含電壓、功率等數據的實時最高值、最低值以及平均值,在實驗中采用平均值進行計算。
3.2? 數據預處理
在將數據輸入模型之前,需要預處理原始電力負荷數據。由于數據按時間序列有部分缺失數據,直接將空值讀入模型會導致模型運行、計算出錯。因此需要將空值處理為有效值,將缺失值設置為上下時間序列按時間間隔的均值。
同時為了避免因數據范圍不同而導致計算時出現飽和現象,需要對實驗所用的數據進行歸一化處理。采用下列方式完成數據歸一化: 。
其中x為預處理數據的樣本,xmax和xmin分別為樣本數據中的最大值及最小值,ymax和ymin則為期望數據中每一行中的最大值及最小值。
3.3? 模型評價指標
均方根誤差RMSE,也被稱為標準誤差,一般被用來測量觀測值與實際值之間的誤差大小。計算公式為:。
平均絕對百分比誤差MAPE也是機器學習中常用的一個評價指標,可以用來衡量一個模型預測結果的好壞,計算公式為:。
其中,yi和? 分別為樣本的真實值及預測值,n則為測試集中的樣本數量。
3.4? 預測結果與分析
將17 279組電力負荷數據分為三組,首先對其進行預處理使其變為可操作的合理數據。其中8 000組數據作為訓練集,用以構建短期電力負荷預測模型,對模型進行學習訓練;5 000組數據作為測試集,用以對學習后的電力負荷預測模型的預測準確性進行檢驗;其余4 279組數據作為預測集,默認其為未來數據,即只有時間數據而無電力負荷數據,通過預測其電力負荷再與實際電力負荷值比對,進一步檢驗其預測性能。測試結果如圖1所示。
對應的模型輸出的評價指標如表1所示。
對圖1及表1中的結果進行分析,可以發現:
(1)SVM模型可以較好地對電力負荷進行預測,結果能比較準確地刻畫出電力負荷在一定時間內的變化趨勢。
(2)對于特定時段的電力負荷的峰值變化難以把握,模型在預測峰值負荷的時候往往趨于平穩,導致對極端情況下的電力負荷預測準確性不高。因為在實際用電環境下,電力負荷往往不不僅僅只與時間有一定關系,還有大量其他因子會影響電力負荷。
4? 結? 論
本文通過構建SVM模型實現對電力負荷數據特征的學習,并通過此數據特征對電力負荷數據進行預測。對實際數據進行測試調試后發現,本文所提出的電力負荷預測模型可較為精準地對電力負荷進行預測,與真實值接近,模型有效性良好。對于其他會影響電力負荷的因素,如何將其合理地融入模型以對電力負荷進行更加準確的預測,還需要進一步研究。
參考文獻:
[1] 韓禹.非侵入式低壓電力負荷構成識別與聚合建模的研究及應用 [D].鎮江:江蘇大學,2020.
[2] 鞠平,郭德正,曹路,等.含主動負荷的綜合電力負荷建模研究綜述與展望 [J].河海大學學報(自然科學版),2020,48(4):367-376.
[3] 林洪樺.測量誤差分析及數據處理若干要點系列論文(四) ——統計學習理論及支持向量機方法統用于形位誤差評定 [J].自動化與信息工程,2020,41(4):1-5.
[4] 陳衛東,梁朔,肖園園,等.基于模糊最小二乘支持向量機的微電網群狀態評估方法 [J].電力系統自動化,2019,43(2):76-82.
[5] 姜濤,王長江,陳厚合,等.基于正則化投影孿生支持向量機的電力系統暫態穩定評估 [J].電力系統自動化,2019,43(1):141-148.
[6] 胡天宇,郭慶來,孫宏斌.基于堆疊去相關自編碼器和支持向量機的竊電檢測 [J].電力系統自動化,2019,43(1):119-125.
作者簡介:王詩涵(1996—),男,漢族,廣東中山人,碩士研究生在讀,研究方向:計算機應用技術;周法國(1976—),男,漢
族,山東聊城人,副教授,博士,研究方向:數據挖掘、人工智能等。