方 娜,余俊杰,李俊曉,萬 暢
(1.湖北工業(yè)大學(xué)太陽能高效利用及儲能運(yùn)行控制湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430068;2.湖北工業(yè)大學(xué)湖北省電網(wǎng)智能控制與裝備工程技術(shù)研究中心,湖北 武漢 430068)
短期負(fù)荷預(yù)測是維持電力系統(tǒng)經(jīng)濟(jì)運(yùn)行以及實(shí)現(xiàn)安全穩(wěn)定控制不可或缺的基礎(chǔ)[1],作為電力調(diào)度的重要環(huán)節(jié)之一,其結(jié)果直接影響決策部門的行為,預(yù)測偏差過大將導(dǎo)致能源浪費(fèi)和供需失衡,提高短期電力負(fù)荷預(yù)測的準(zhǔn)確性和預(yù)測模型的穩(wěn)定性尤為重要[2]。
電力負(fù)荷預(yù)測的模型大致可以分為四類:統(tǒng)計模型、基于知識的專家系統(tǒng)、混合模型和基于人工智能的模型[3],其中統(tǒng)計模型和人工智能模型逐漸成為負(fù)荷預(yù)測的主流。傳統(tǒng)統(tǒng)計模型包括指數(shù)平滑法(Exponential Smoothing)[4]、自回歸移動平均值(Auto Regressive Moving Average,ARMA)[5]和隱馬爾可夫模型(Hidden Markov Model,HMM)[6]等,通過分析數(shù)據(jù)之間的相關(guān)性進(jìn)行負(fù)荷預(yù)測,這些統(tǒng)計方法簡單速度快,但存在局限性;另一類是基于人工智能的模型,包括人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)[7]、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)[8]、長短期記憶網(wǎng)絡(luò)(Long Short-term Memory,LSTM)[9-10]和門控循環(huán)單元(Gated Recurrent Unit,GRU)[11]等,其中ANN具有自學(xué)習(xí)能力,可逼近任何非線性函數(shù),但其無法學(xué)習(xí)序列數(shù)據(jù)相關(guān)性,需人為選擇時間特征,可能會導(dǎo)致預(yù)測結(jié)果不理想。LSTM網(wǎng)絡(luò)是一種特殊的RNN,相比ANN和傳統(tǒng)RNN能更準(zhǔn)確地學(xué)習(xí)時間序列中長期依賴性關(guān)系,解決了需要人工提取時序特征的問題,現(xiàn)階段已有一些基于LSTM網(wǎng)絡(luò)的短期負(fù)荷預(yù)測研究,但其存在收斂速度較慢的問題。GRU在LSTM的基礎(chǔ)上進(jìn)行改進(jìn),優(yōu)化神經(jīng)網(wǎng)絡(luò),具有更快的收斂速度,并保持與LSTM接近的準(zhǔn)確率,十分適合處理時間序列數(shù)據(jù)。BIGRU[12]由雙向的GRU層構(gòu)成,將前后輸入同時兼顧,能夠充分提取數(shù)據(jù)的所有信息,在GRU的基礎(chǔ)上提升特征提取的準(zhǔn)確率。
因此為提高負(fù)荷預(yù)測精度,本文構(gòu)建了一種基于注意力(ATTENTION)機(jī)制[13-14]的卷積神經(jīng)網(wǎng)絡(luò)(CNN)[15-16]和BIGRU網(wǎng)絡(luò)的混合預(yù)測模型,簡稱CNN-BIGRU-ATTENTION網(wǎng)絡(luò)混合模型。該模型整合了CNN、BIGRU和ATTENTION模塊的各自特點(diǎn),通過負(fù)荷預(yù)測的先驗(yàn)知識,輸入負(fù)荷數(shù)據(jù)和電價數(shù)據(jù),構(gòu)造連續(xù)特征圖;然后利用CNN提取特征圖中時序數(shù)據(jù)之間的潛在關(guān)系,將處理后的特征向量作為BIGRU網(wǎng)絡(luò)的輸入;最后結(jié)合ATTENTION機(jī)制,進(jìn)行動態(tài)時序建模,完成短期電力負(fù)荷預(yù)測。與僅使用BIGRU網(wǎng)絡(luò)模型相比,CNN-BIGRU-ATTENTION混合模型中使用CNN模型提取出較為重要的特征,且在BIGRU模型后加上ATTENTION模塊,突出經(jīng)BIGRU分析后的重要時序特征,從而將模型中非重要特征的影響力削弱,解決了BIGRU模型未能較好區(qū)分時序特征重要程度的問題,進(jìn)而提高了預(yù)測精度。
傳統(tǒng)方法將短期負(fù)荷預(yù)測影響因素主要?dú)w納為三類:最近負(fù)荷或相似日負(fù)荷、氣象信息、日期類型。但除了這些,也不可忽視實(shí)時波動的電價,用戶的用電行為會被電價的波動影響。同時,歷史負(fù)荷因其具有一定的周期性和規(guī)律性,在預(yù)測當(dāng)前負(fù)荷值時,具有很好的參考價值。因此,本文選取電價及歷史負(fù)荷作為負(fù)荷預(yù)測的影響因素。
圖1是2016年丹麥西部兩日的負(fù)荷和電價曲線,其中負(fù)荷與電價數(shù)值差異過大,為此將負(fù)荷數(shù)據(jù)通過標(biāo)準(zhǔn)化轉(zhuǎn)為與電價數(shù)據(jù)的同樣數(shù)量等級,具體方式如下:
1)用成倍縮小法即將該特征的所有取值都同時除以某個數(shù)η
(1)
本文負(fù)荷數(shù)據(jù)均為千位,因此將η取100。
2)計算特征的均值(mean)與標(biāo)準(zhǔn)差(std)。
3)特征的標(biāo)準(zhǔn)化
(2)
從圖1可以看出,電價和負(fù)荷走勢大致相似,隨著負(fù)荷增加,電價也隨之增長;隨著負(fù)荷減少,電價也有減少的趨勢。由此可知,用戶在電價達(dá)到峰值時,會減少用電量,從而致使負(fù)荷減少;當(dāng)負(fù)荷達(dá)到低谷時,也會通過降低電價的方式鼓勵用戶增加用電量。因此,在電力市場中電價和負(fù)荷存在著相互影響的關(guān)系。
圖1 電價與負(fù)荷曲線
同時,預(yù)測效果的提高和處理效率的提升與采用合理的階數(shù)有關(guān)。由于輸入序列的長短不能隨機(jī)選取,本文通過計算歷史負(fù)荷數(shù)據(jù)集的自相關(guān)系數(shù)來確定,歷史負(fù)荷數(shù)據(jù)為1小時取1負(fù)荷點(diǎn)。各階自相關(guān)系數(shù)(Autocorrelation Coefficient,AC)的大小可反映各滯后階狀態(tài)間的相關(guān)關(guān)系。AC越大,相關(guān)性越好;AC越小,相關(guān)性越差,其計算公式為
(3)
圖2是歷史負(fù)荷數(shù)據(jù)集自相關(guān)系數(shù)曲線圖,分別計算負(fù)荷序列滯后數(shù)為0階到500階的自相關(guān)系數(shù)??煽闯鰯?shù)據(jù)集的自相關(guān)系數(shù)處于一種不斷震蕩的狀態(tài),具有一定周期性,同時也可看出每段波形的波峰與波谷之間的相差滯后階數(shù)都十分接近,可知在這個滯后階數(shù)內(nèi),序列之間的自相關(guān)系數(shù)較高。因此,為保證模型輸入序列的整體的相關(guān)性較高,提升預(yù)測效果和處理效率,將輸入序列設(shè)定在此間隔階數(shù)以內(nèi)。
圖2 歷史負(fù)荷數(shù)據(jù)集自相關(guān)系數(shù)曲線圖
CNN模型主要由卷積層、池化層組成,文中根據(jù)序列長短和序列中特征位置,采用了一維卷積(1D-CNN),簡稱Convd1。這種結(jié)構(gòu)網(wǎng)絡(luò)模型簡單,可以減少權(quán)值數(shù)量。同時,可以直接將時間序列數(shù)據(jù)作為模型的輸入,因此特征提取和數(shù)據(jù)重構(gòu)的復(fù)雜程度會有效降低。本文通過此模型來學(xué)習(xí)時序序列的特征,挖掘輸入數(shù)據(jù)之間的關(guān)系并從中消除噪聲及不穩(wěn)定因素,最終將特征處理后傳入BIGRU網(wǎng)絡(luò)。
本文選擇的負(fù)荷影響因素為歷史數(shù)據(jù)和電價,這兩者之間互為關(guān)聯(lián),且在同一時刻,歷史數(shù)據(jù)與電價對預(yù)測效果都有影響,同時BIGRU模型是由兩個GRU隱藏層共同組成的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),但這兩個隱藏層方向相反,在每一時刻都能接收到同一個輸入,因此為將特征向量提取的準(zhǔn)確率提高,充分分析歷史數(shù)據(jù)和電價,本文選擇BIGRU網(wǎng)絡(luò)模型,其示意圖如圖3所示。
圖3 BIGRU示意圖
BIGRU網(wǎng)絡(luò)由以下公式定義得出
(4)
(5)
(6)
ATTENTION機(jī)制是通過對特征向量分配不同的權(quán)重,對重要特征給予足夠的關(guān)注,忽略無關(guān)信息,從而來突出關(guān)鍵特征。在CNN和BIGRU對輸入數(shù)據(jù)分別進(jìn)行特征提取和時序分析后,與之進(jìn)行結(jié)合,其示意圖如圖4所示。
圖4 ATTENTION機(jī)制示意圖
計算公式如下:
C=Tanh(ht)
(7)
?=Softmax(wT·C)
(8)
α=ht·?T
(9)
式中,ht為BIGRU層輸出,wT為權(quán)重矩陣,α為ATTENTION層的輸出,最后結(jié)果由全連接層映射,得到預(yù)測結(jié)果。
CNN-BIGRU-ATTENTION模型如圖5所示,模型分三部分,第一部分為CNN用于挖掘數(shù)據(jù)特征和消除噪聲及不穩(wěn)定因素;第二部分為BIGRU,此網(wǎng)絡(luò)在GRU能捕獲時間序列長短期之間的依賴關(guān)系且收斂快、預(yù)測精度高的基礎(chǔ)上,通過正反兩個方向?qū)μ卣飨蛄窟M(jìn)行提取,充分分析電價和負(fù)荷數(shù)據(jù),進(jìn)一步提高特征提取的準(zhǔn)確率;第三部分為Attention機(jī)制,通過計算對BIGRU處理后的特征向量分配不同的權(quán)重,突出關(guān)鍵特征;最后由全連接層輸出最終預(yù)測結(jié)果。
圖5 CNN-BIGRU-ATTENTION模型結(jié)構(gòu)圖
設(shè)計2層的CNN,內(nèi)核大小均為4,第一層卷積核數(shù)目取64,補(bǔ)零策略為same,激活函數(shù)為指數(shù)線性單元(elu),第二層卷積核數(shù)目取128,其余參數(shù)同上。選用最大值池化(MaxPooling,MP),池化大小為2,步長為1,把變長的輸入整理成固定長度的輸入,保證特征的位置與旋轉(zhuǎn)的不變性,同時也減少模型參數(shù)數(shù)量和過擬合問題。
設(shè)置1層BIGRU能用較少的時間得到很好的效果,單元數(shù)設(shè)置為128,返回所有的隱藏狀態(tài),再將其輸入Python語言編寫完成的Attention機(jī)制,進(jìn)行計算,通過分配不同權(quán)重,將其中重要特征突顯出來,最后通過全連接層(Dense),單元數(shù)為64,激活函數(shù)為Tanh,輸出指定時間預(yù)測值。
通過上述數(shù)據(jù)組合方式,即在訓(xùn)練集中每n×2的輸入數(shù)據(jù)結(jié)構(gòu)對應(yīng)一個點(diǎn),通過調(diào)用上述構(gòu)建的模型預(yù)測對應(yīng)點(diǎn)負(fù)荷值大小,采用損失函數(shù)為均方誤差函數(shù),用Adam優(yōu)化算法對模型參數(shù)進(jìn)行優(yōu)化,批次大小取512,訓(xùn)練輪數(shù)為200,進(jìn)而對模型整體進(jìn)行訓(xùn)練確定,最后在測試集中以同樣的數(shù)據(jù)組合方式通過訓(xùn)練后的模型得到預(yù)測值,通過誤差指標(biāo)評估模型?;赥ensorFlow-GPU框架下設(shè)計網(wǎng)絡(luò)結(jié)構(gòu),調(diào)用Keras中的函數(shù)式模型,根據(jù)上述具體參數(shù)編寫代碼,進(jìn)行仿真。
數(shù)據(jù)集為2016年丹麥西部的電價與用電負(fù)荷,從2016年1月1日至2016年12月31日,一小時取1負(fù)荷點(diǎn)和電價,各8784條數(shù)據(jù),取前90%作訓(xùn)練,后10%做測試,在訓(xùn)練集中取前n個點(diǎn)對應(yīng)第n+1的點(diǎn),即[x1,x2,…,xn]對應(yīng)xn+1,[x2,x3,x4,…,xn+1]對應(yīng)xn+2,依次對訓(xùn)練集進(jìn)行分割,測試集也做同樣處理。數(shù)據(jù)部分特征如圖1所示,構(gòu)建的模型如圖5示。通過與BP模型,GRU模型,CNN-GRU模型,CNN-BIGRU模型和CNN-GRU-ATTENTION模型的仿真結(jié)果對比,驗(yàn)證本文提出的CNN-BIGRU-ATTENTION模型的預(yù)測效果。
CNN-BIGRU-ATTENTION模型的輸入數(shù)據(jù)采用歷史負(fù)荷與電價構(gòu)成的多維向量,歷史負(fù)荷與電價都是相互獨(dú)立的時間序列,為了表示這些影響負(fù)荷的特征信息,歷史負(fù)荷和電價在時間t1,t2,…,tn時兩兩串聯(lián)成向量,根據(jù)所取序列長度n,將其組合成n×2的向量矩陣,形成一組全新的數(shù)據(jù)結(jié)構(gòu),具體組合方式如圖6所示。
圖6 輸入數(shù)據(jù)結(jié)構(gòu)
由于負(fù)荷與電價數(shù)據(jù)大小差異過大,為便于模型的訓(xùn)練,均對其歸一化處理,方式如下
(10)
式中,x為原始值,xmax為極大值,xmin為極小值。
平均絕對百分誤差和均方根誤差分別表示為MAPE和RMSE,來評估預(yù)測結(jié)果,公式如下
(11)
(12)
式中,yl為預(yù)測值,yi為實(shí)際值,n為樣本數(shù)量。
4.3.1 CNN和BIGRU模型參數(shù)選取
根據(jù)本文提出的CNN-BIGRU-ATTENTION混合模型,利用2016年丹麥西部的電價與用電負(fù)荷數(shù)據(jù)進(jìn)行仿真。分別固定CNN和BIGRU參數(shù),對CNN和BIGRU網(wǎng)絡(luò)層數(shù)的選取做出調(diào)整,通過MAPE的大小來判斷預(yù)測精度,仿真結(jié)果如表1、表2所示。從表中可以看出,適當(dāng)增加CNN和BIGRU層數(shù)可提高預(yù)測精度,發(fā)現(xiàn)CNN層數(shù)在超過2層和BIGRU層數(shù)超過1層時,出現(xiàn)了過擬合的情況。因此,本文將CNN層數(shù)定為2層,BIGRU層數(shù)定為1層。
表1 CNN層數(shù)調(diào)整結(jié)果
表2 BIGRU層數(shù)調(diào)整結(jié)果
4.3.2 仿真結(jié)果對比
本文使用同樣的數(shù)據(jù)集,運(yùn)用各種模型進(jìn)行仿真,計算一天及一個月的平均百分誤差和均方差,結(jié)果如表3所示。表3中C代表CNN,B代表BIGRU,G代表GRU,A代表ATTENTION。在所有模型中,CNN-BIGRU-ATTENTION模型在12月27日這一天中平均百分誤差和均方差最低,分別為1.62%和55.3MWh;在一個月里CNN-BIGRU-ATTENTION模型取得最好的預(yù)測效果,其平均百分誤差比CNN-GRU-ATTENTION模型降低了0.31個百分點(diǎn),均方差也最低,為50.9MWh??芍疚奶岢龅姆椒ǎ诰戎笜?biāo)相較于其它方法均有明顯的提升,預(yù)測精度更高,也更穩(wěn)定。
表3 不同網(wǎng)絡(luò)模型的平均百分誤差和均方差
圖7為不同模型由同一測試集滾動預(yù)測所得到兩天(2016年11月27日、2016年11月28日)的負(fù)荷預(yù)測結(jié)果,從表3可明顯看出BP模型、GRU模型在某些時間段與真實(shí)值數(shù)值偏離過大,CNN-GRU、CNN-BIGRU、CNN-GRU-ATTENTION與CNN-BIGRU-ATTENTION模型的預(yù)測效果較好,與真實(shí)值的重合度較高。
圖7 不同網(wǎng)絡(luò)模型預(yù)測結(jié)果對比
由圖8可明顯看出,在部分時段,CNN-BIGRU模型在結(jié)合ATTENTION機(jī)制后預(yù)測效果得到提升。由圖9可看出,將CNN-GRU-ATTENTION模型中GRU網(wǎng)絡(luò)替換為BIGRU后,波峰和波谷位置均能更好地擬合真實(shí)曲線。
圖8 結(jié)合ATTENTION前后CNN-BIGRU模型預(yù)測結(jié)果對比
圖9 基于CNN-GRU-ATTENTION和CNN-BIGRU-ATTENTION模型預(yù)測結(jié)果對比
本文提出了一種基于CNN-BIGRU-ATTENTION混合模型的短期電力負(fù)荷預(yù)測方法。先利用CNN處理多維數(shù)據(jù)進(jìn)行特征提取,再通過BIGRU網(wǎng)絡(luò)分析時序數(shù)據(jù),最后結(jié)合ATTENTION機(jī)制賦予不同權(quán)值,通過建模完成短期電力負(fù)荷預(yù)測。該模型特點(diǎn)如下:
1)按時間滑動窗口構(gòu)造連續(xù)特征圖作為輸入,充分發(fā)揮CNN模型對潛在特征向量的提取優(yōu)勢,有效的挖掘數(shù)據(jù)中蘊(yùn)含的更多信息。
2)將CNN處理后的特征向量,作為BIGRU網(wǎng)絡(luò)模型的輸入,通過BIGRU,負(fù)荷數(shù)據(jù)的時序性和復(fù)雜非線性關(guān)系可被較好地分析。
3)結(jié)合ATTENTION機(jī)制,計算BIGRU處理后的特征向量,給予不同權(quán)值,突出關(guān)鍵特征,進(jìn)一步提高負(fù)荷預(yù)測精度。
4)CNN-BIGRU-ATTENTION網(wǎng)絡(luò)混合模型兼顧C(jī)NN模型和BIGRU網(wǎng)絡(luò)模型的特點(diǎn),同時發(fā)揮了ATTENTION機(jī)制的作用。同傳統(tǒng)負(fù)荷預(yù)測方法相比,本文提出的CNN-BIGRU-ATTENTION網(wǎng)絡(luò)混合模型提高了短期負(fù)荷預(yù)測精度。