楊修德,王金梅,張麗娜
負(fù)荷預(yù)測(cè)作為電力系統(tǒng)拓展規(guī)劃、實(shí)時(shí)控制和調(diào)度規(guī)劃的重要依據(jù),預(yù)測(cè)的準(zhǔn)確性將直接影響電力系統(tǒng)的可靠性和智能程度。為了更好地預(yù)測(cè)負(fù)荷變化趨勢(shì),目前已有自回歸綜合移動(dòng)平均模型(ARIMA)[1,2]、人工神經(jīng)網(wǎng)絡(luò)(ANN)[3,4]、支持向量機(jī)(SVM)[5,6]、隨機(jī)森林回歸(RF)[7,8]和梯度增強(qiáng)回歸樹(shù)(GBRT)[9]等綜合方法被廣泛研究和使用。
文獻(xiàn)[10]對(duì) United Arab Emirates比賽的小時(shí)負(fù)荷數(shù)據(jù)進(jìn)行預(yù)測(cè)分析,結(jié)果表明雖然神經(jīng)網(wǎng)絡(luò)能夠在訓(xùn)練集取得較好的擬合效果,但在預(yù)測(cè)集中其表現(xiàn)比ARIMA差。文獻(xiàn)[11]進(jìn)行了GBRT、RF以及ARIMA的電荷預(yù)測(cè)比較,發(fā)現(xiàn)SARIMA和SARIMAX表現(xiàn)比GBRT與RF等集成樹(shù)模型表現(xiàn)差。綜上所述,根據(jù)現(xiàn)有的文獻(xiàn)及研究可以發(fā)現(xiàn)在大多數(shù)情況下,超短期負(fù)荷預(yù)測(cè)精準(zhǔn)度排序結(jié)果為:GBRT≥RF>ARIMA≥ANN。
隨著機(jī)器學(xué)習(xí)及計(jì)算機(jī)技術(shù)的發(fā)展,XGBoost應(yīng)運(yùn)而生,它是基于漸變Boosting的集成學(xué)習(xí)算法,在大多數(shù)問(wèn)題上比GBRT和RF有更快的運(yùn)算速率和準(zhǔn)確性[12]。該模型的優(yōu)勢(shì)在一些機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘競(jìng)賽中得到了廣泛認(rèn)可,表明XGBoost具較強(qiáng)的優(yōu)越性和較廣泛的適用性[13]。
隨著國(guó)家智能電網(wǎng)的發(fā)展,短期負(fù)荷預(yù)測(cè)具有以下特點(diǎn):①數(shù)據(jù)來(lái)源廣泛,數(shù)據(jù)可以從成千上萬(wàn)的電網(wǎng)監(jiān)控端獲得;②數(shù)據(jù)量巨大;③影響數(shù)據(jù)的因素眾多、關(guān)系復(fù)雜。為了滿足短期負(fù)荷預(yù)測(cè)快速且精準(zhǔn)額的要求,本文將符合當(dāng)前電網(wǎng)負(fù)荷預(yù)測(cè)發(fā)展趨勢(shì)的XGBoost應(yīng)用到實(shí)際預(yù)測(cè)中來(lái),為保證數(shù)據(jù)的可靠性和有效性本文選用第九屆電工數(shù)學(xué)建模A題數(shù)據(jù)[14]進(jìn)行超短期負(fù)荷模型訓(xùn)練和預(yù)測(cè),同時(shí)為驗(yàn)證XGBoost的有效性,將其預(yù)測(cè)結(jié)果與現(xiàn)有的GBRT、RF進(jìn)行對(duì)比分析。
隨機(jī)森林算法(Random Forest)是Bagging算法和隨機(jī)抽樣算法的組合,基本構(gòu)成單元是決策樹(shù),通過(guò)組合多棵決策樹(shù)提高分類的準(zhǔn)確性,此時(shí)得到隨機(jī)森林分類器,通過(guò)最終投票對(duì)未知的樣本進(jìn)行分類。
決策樹(shù)包含根節(jié)點(diǎn)、內(nèi)部節(jié)點(diǎn)、葉子節(jié)點(diǎn)3類節(jié)點(diǎn)。學(xué)習(xí)與訓(xùn)練數(shù)據(jù)從根節(jié)點(diǎn)開(kāi)始,經(jīng)過(guò)決策樹(shù)內(nèi)部節(jié)點(diǎn)并按某種特定的屬性將原始數(shù)據(jù)劃分為多個(gè)訓(xùn)練數(shù)據(jù)子集,終止于葉子節(jié)點(diǎn)處。每個(gè)葉子節(jié)點(diǎn)處表示1個(gè)學(xué)習(xí)訓(xùn)練數(shù)據(jù)子集,節(jié)點(diǎn)是唯一確定,即數(shù)值或者分類標(biāo)簽唯一,使得決策樹(shù)能進(jìn)行分類或者回歸。
隨機(jī)森林算法建模流程如圖1所示。
(1)對(duì)于給定的訓(xùn)練數(shù)據(jù)集,進(jìn)行隨機(jī)取樣,可重復(fù)取樣形成新的子樣本數(shù)據(jù);
(2)從新的子樣本數(shù)據(jù)中的M個(gè)特征變量隨機(jī)抽?。╩<M)個(gè)特征,構(gòu)成完整的決策樹(shù);
(3)重復(fù)(1)、(2)得到K個(gè)決策樹(shù),形成隨機(jī)森林;
(4)每個(gè)決策樹(shù)分別進(jìn)行投票,選出最優(yōu)分類[15]。
圖1 基于RF的電網(wǎng)超短期負(fù)荷預(yù)測(cè)流程
梯度增強(qiáng)回歸樹(shù)(GBRT)也可稱為漸進(jìn)梯度決策樹(shù)(GBDT),是一種迭代的決策樹(shù)算法,由多棵決策樹(shù)組成,所有樹(shù)的結(jié)論累加起來(lái)做最終答案[16]。
GBRT建模流程如圖2所示。
輸入:訓(xùn)練數(shù)據(jù)集
輸出:提升樹(shù) fM(x)。
(1)初始化 f0(x)=0;
(2)對(duì) m=1,2,…,M;
計(jì)算殘差:
擬合殘差 rmi學(xué)習(xí)一個(gè)回歸樹(shù),得到 T(x;θm);
更新 fM(x)=fm-1(x)+T(x;θm)。
(3)得到回歸問(wèn)題提升樹(shù):
圖2 基于GBRT的電網(wǎng)超短期負(fù)荷預(yù)測(cè)流程
XGBoost是一種集成學(xué)習(xí)算法。其原理是通過(guò)弱分類器的迭代計(jì)算來(lái)實(shí)現(xiàn)準(zhǔn)確分類。計(jì)算過(guò)程如下。
(1)首先對(duì)樣本權(quán)重和模型參數(shù)進(jìn)行初始化,即將所有訓(xùn)練集樣本賦予相同權(quán)重;
(2)進(jìn)行第m次迭代,每次迭代采用分類算法進(jìn)行分類,采用式(1)來(lái)計(jì)算分類的錯(cuò)誤率:
式中ωi代表第個(gè)樣本的權(quán)重,
Gm代表第m個(gè)分類器;
(3)計(jì)算
(4)對(duì)于第m+1次迭代,根據(jù)誤差更新權(quán)重。將第i個(gè)樣本的權(quán)重ωi重置為
(5)完成迭代后得到多棵樹(shù)分類器,采用投票方式得到每個(gè)樣本的最終分類結(jié)果。其核心思想在于每次迭代后,分類錯(cuò)誤的樣本都會(huì)被賦予更高的權(quán)重,而已經(jīng)分類正確的樣本權(quán)重會(huì)降低,從而提高分類正確率[17]。XGBoost建模流程如圖3所示。
圖3 基于XGBoost的電網(wǎng)超短期負(fù)荷預(yù)測(cè)流程
XGBoost與傳統(tǒng) RF、GBRT相比存在以下特點(diǎn)。
(1)RF模型每棵樹(shù)之間互相獨(dú)立,而GBRT和XGBoost均在上一棵樹(shù)學(xué)習(xí)的殘差上進(jìn)行學(xué)習(xí);
(2)傳統(tǒng)GBRT在優(yōu)化時(shí)只用到一階導(dǎo)數(shù)信息,XGBoost則對(duì)誤差函數(shù)進(jìn)行了二階泰勒展開(kāi),同時(shí)利用了一階和二階導(dǎo)數(shù);
(3)XGBoost和RF均對(duì)特征進(jìn)行列抽樣,來(lái)選擇訓(xùn)練使用的特征比例,有效地防止過(guò)擬合,而GBRT沒(méi)有;
(4)XGBoost將樹(shù)模型的復(fù)雜度作為正則項(xiàng)加在優(yōu)化目標(biāo)上;
(5)XGBoost的特征分裂增益計(jì)算的可并行以性及可并行的近似直方圖算法,能夠充分利用多核CPU進(jìn)行并行計(jì)算。
和大多數(shù)組合預(yù)測(cè)模型一樣,XGBoost和RF、GBRT的預(yù)測(cè)結(jié)果來(lái)自于分類樹(shù)和回歸樹(shù),確保其具有良好的擬合能力,還不會(huì)導(dǎo)致過(guò)度擬合。而XGBoost通過(guò)列采樣和兩階泰勒展開(kāi)以及正則項(xiàng),使XGBoost具有比RF和GBRT更好的性能。同時(shí)由于采用并行學(xué)習(xí)和優(yōu)秀的程序設(shè)計(jì),XGBoost的運(yùn)行速度比大多數(shù)模型都要快。
本文采用第九屆電工數(shù)學(xué)建模競(jìng)賽A試題的數(shù)據(jù)進(jìn)行電網(wǎng)超短期負(fù)荷預(yù)測(cè)研究,對(duì)比XGBoost、GBRT和RF。本文選用某地2009-01-01日至2015-01-09日的電力負(fù)荷數(shù)據(jù)(每15min采集一個(gè)點(diǎn),每日96個(gè),量綱為MW)為訓(xùn)練集訓(xùn)練模型,并利用2015-01-10日內(nèi)96個(gè)時(shí)刻的負(fù)荷為檢驗(yàn)集檢驗(yàn)?zāi)P汀?/p>
本文利用5折交叉驗(yàn)證及網(wǎng)格搜索的方法進(jìn)行參數(shù)尋優(yōu)得到以下數(shù)據(jù)。
RF模型訓(xùn)練集上得到最優(yōu)參數(shù)為:樹(shù)的最大深度為10;迭代計(jì)算次數(shù)100;最大特征數(shù)設(shè)置為auto;
GBRT模型訓(xùn)練集上得到最優(yōu)參數(shù)為:樹(shù)的最大深度為10;迭代計(jì)算次數(shù)100;收縮步長(zhǎng)為0.1;
XGBoost模型訓(xùn)練集上得到最優(yōu)參數(shù)為:樹(shù)的最大深度為15;最優(yōu)迭代次數(shù)50;收縮步長(zhǎng)為0.4。
三種模型分別利用上面3.1節(jié)中得到最優(yōu)參數(shù)進(jìn)行預(yù)測(cè)。
首先從整體數(shù)據(jù)來(lái)看,在整個(gè)預(yù)測(cè)周期內(nèi)RF、GBRT、XGBoost均能較好的預(yù)測(cè)電網(wǎng)超短期負(fù)荷的整體發(fā)展趨勢(shì)。在電荷量波動(dòng)明顯的區(qū)域(15:45至21:00),XGBoost預(yù)測(cè)結(jié)果更為貼近真實(shí)負(fù)荷。結(jié)合表1中平均相對(duì)誤差(MAE),可知XGBoost相對(duì)誤差離散程度最低;由均方根誤差(RMSE)來(lái)分析三者之間預(yù)測(cè)值的離散程度,RF的RMSE為7.614%,GBRT的 RMSE 為 3.531%,XGBoost的 RMSE 為1.951%,RMSE數(shù)值說(shuō)明XGBoost預(yù)測(cè)值偏差更小,預(yù)測(cè)精準(zhǔn)度更高。
表1 XGBoost和GBRT、RF誤差對(duì)比
其次,為更好地對(duì)比RF、GBRT、XGBoost的差異,本文選擇了3個(gè)具有差異性的局部數(shù)據(jù)段進(jìn)行分析。
如圖4所示,在3:00到8:00的這個(gè)時(shí)間段內(nèi),電網(wǎng)負(fù)荷量平穩(wěn)上升,波動(dòng)量小,故三種模型都相對(duì)較好的預(yù)測(cè)了電網(wǎng)超短期的負(fù)荷。
圖 4 XGBoost和 GBRT、RF 模型在 3:00至8:00時(shí)段內(nèi)預(yù)測(cè)與真實(shí)負(fù)荷對(duì)比
如圖5所示,在10:00到15:00的這個(gè)時(shí)間段內(nèi)電網(wǎng)負(fù)荷量由原來(lái)的平穩(wěn)上升,開(kāi)始出現(xiàn)低頻率的波動(dòng),RF預(yù)測(cè)出現(xiàn)較大偏差,XGBoost和GBRT預(yù)測(cè)誤差較小。
圖 5 XGBoost和 GBRT、RF 模型在 10:00至15:00時(shí)段內(nèi)預(yù)測(cè)與真實(shí)負(fù)荷對(duì)比
圖 6 XGBoost和 GBRT、RF 模型在 17:00至22:00時(shí)段內(nèi)預(yù)測(cè)與真實(shí)負(fù)荷對(duì)比
如圖6所示,在17:00到22:00的這個(gè)時(shí)間段內(nèi)電網(wǎng)負(fù)荷量變化頻繁。由于RF是由多棵樹(shù)投票輸出結(jié)果,因此沒(méi)能快速跟上電荷的復(fù)雜變化。與此同時(shí)二階泰勒展開(kāi)和正則項(xiàng)使得XGBoost展現(xiàn)出明顯優(yōu)于GBRT的擬合能力,所以在17:00到22:00這個(gè)電網(wǎng)負(fù)荷量變化頻繁的時(shí)間段內(nèi)只有XGBoost可以較好擬合電荷的變化趨勢(shì)。
結(jié)合圖4、圖5、圖6,無(wú)論電網(wǎng)負(fù)荷量波動(dòng)大小,以及波動(dòng)頻率高低,XGBoost均能進(jìn)行有效擬合,并且表現(xiàn)出優(yōu)于GBRT、RF的準(zhǔn)確性。
適用于大數(shù)據(jù)、可并行學(xué)習(xí)的XGBoost模型,在2015-01-10每隔15分鐘的96個(gè)實(shí)際電荷預(yù)測(cè)時(shí)刻中,XGBoost模型不但預(yù)測(cè)速度優(yōu)于傳統(tǒng)模型,而且預(yù)測(cè)精度更高于傳統(tǒng)模型,XGBoost以RMSE為1.95%的誤差率遠(yuǎn)低于 RF和 GBRT的 7.61%和3.51%。表明XGBoost是符合電網(wǎng)超短期負(fù)荷預(yù)測(cè)發(fā)展趨勢(shì)的,是具有實(shí)用性和應(yīng)用前景的預(yù)測(cè)方法。
參考文獻(xiàn):
[1]Moghram I,Rahman S.Analysis and evaluation of five short-term load forecasting techniques[J].IEEE Transactions on power systems,1989,4(4):1484-1491.
[2]李 妮,江岳春,黃 珊,等.基于累積式自回歸動(dòng)平均傳遞函數(shù)模型的短期負(fù)荷預(yù)測(cè)[J].電網(wǎng)技術(shù),2009,33(8):93-97.
[3]Hippert H S,Pedreira C E,Souza R C.Neural networks for short-term load forecasting:A review and evaluation[J].IEEE Transactions on power systems,2001,16(1):44-55.
[4]馬建偉,張國(guó)立.人工魚(yú)群神經(jīng)網(wǎng)絡(luò)在電力系統(tǒng)段期負(fù)荷預(yù)測(cè)中的應(yīng)用[J].電網(wǎng)技術(shù),2005,29(11):36-39.
[5]LI Y,F(xiàn)ANG T,YU E.Study of support vector machines for short-term load forecasting[J].Proceedings of the Csee,2003,6:010.
[6]Chen B J,Chang M W.Load forecasting using support vector machines:A study on EUNITE competition 2001[J].IEEE transactions on power systems,2004,19(4):1821-183.
[7]Dudek G.Short-term load forecasting using random forests[M].Intelligent Systems'2014.Springer International Publishing,2015:821-828.
[8]吳瀟雨,和敬涵,張沛等.基于灰色投影改進(jìn)隨機(jī)深林算法的電力系統(tǒng)短期負(fù)荷預(yù)測(cè)[J].電力系統(tǒng)自動(dòng)化,2015,39(12):50-55.
[9]Taieb S B,Hyndman R J.A gradient boosting approach to the Kaggle load forecasting competition [J].International Journal of Forecasting,2014,30(2):382-394.
[10]Liu N,Babushkin V,Afshari A.Short-term forecasting of temperature driven electricity load using time series and neural network model[J].Journal of Clean Energy Technologies,2014,2(4):2014.
[11]Papadopoulos S,Karakatsanis I.Short-term electricity load forecasting using time series and ensemble learning methods [C].Power and Energy Conference at Illinois(PECI),2015 IEEE.IEEE,2015:1-6.
[12]Chen T,Guestrin C.XGBoost:Reliable large-scale tree boosting system[C].Proceedings of the 22nd SIGKDD Conference on Knowledge Discovery and Data Mining,San Francisco,CA,USA.2016:13-17.
[13]Song R,Chen S,Deng B,et al.eXtreme gradient boosting for identifying individual users across different digital devices[C].nternational Conference on Web-Age Information Management. Springer International Publishing,2016:43-54.
[14]http://shumo.nedu.edu.cn/index.php/Home/Index/index.html
[15]許勇剛,張建業(yè),龔小剛,等.基于改進(jìn)隨機(jī)森林算法的電力業(yè)務(wù)實(shí)時(shí)流量分類方法[J].電力系統(tǒng)保護(hù)與控制,2016;44(24):82-89.
[16]孫克雷,鄧仙榮.一種改進(jìn)的基于梯度提升回歸算法的O2O電子商務(wù)推薦模型[J].安徽建筑大學(xué)學(xué)報(bào),2016,(4):87-91.
[17]張敬誼,張亞紅,李 靜.基于詞向量特征的文本分類模型研究[J].信息技術(shù)與標(biāo)準(zhǔn)化,2017,(5):71-75.