許言路, 武志鍇, 朱赫炎, 王斌斌, 鄧卓夫
(1. 國網(wǎng)遼寧省電力有限公司 經(jīng)濟技術(shù)研究院, 沈陽 110015; 2. 東北大學 軟件學院, 沈陽 110819)
當前電力行業(yè)在開放售電環(huán)境下需要精確的短期負荷預測(STLF),以實現(xiàn)電力負荷的規(guī)劃和管理策略的實施.為了提高預測精度,在過去的幾十年中已經(jīng)提出了各種新的電力負荷預測技術(shù).由于電力負荷及其影響因素的非線性和隨機性,電力負荷預測已成為電力市場實體面臨的最具挑戰(zhàn)性的任務之一.用于電力負荷預測的模型大致可以分為:統(tǒng)計模型、基于知識的專家系統(tǒng)模型、混合模型及基于人工智能的模型.
傳統(tǒng)統(tǒng)計模型[1](如自回歸模型)研究了電力負荷及其影響因素之間的定性關(guān)系,并且易于實現(xiàn).然而,這些統(tǒng)計模型在很大程度上依賴于當前負荷與歷史負荷之間的相關(guān)性,在選擇適當?shù)姆蔷€性函數(shù)時面臨很大困難并且計算成本高.
在所有可用的預測模型中,基于人工神經(jīng)網(wǎng)絡(luò)(ANN)的模型在解決STLF問題方面吸引力最大.文獻[2]使用多層感知機(MLP)結(jié)合氣候數(shù)據(jù)進行每日負荷預測;文獻[3]對影響電力負荷的因素進行PCA及ICA分析,降低數(shù)據(jù)維度和BP神經(jīng)網(wǎng)絡(luò)的搜索空間;文獻[4]廣泛討論了神經(jīng)網(wǎng)絡(luò)的應用,并深入分析了其短期負荷預測的性能.傳統(tǒng)ANN算法需要搜索龐大的函數(shù)空間,且函數(shù)空間中有很多代價很大的局部極小值,這使得模型的求解速度和精度都受到影響.
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是可以適應連續(xù)時間步驟之間依賴性的一類算法,然而,普通RNN易產(chǎn)生梯度消失/爆炸的問題,這使得學習長期依賴性變得困難.具有長期短期記憶單元(LSTM)的循環(huán)神經(jīng)網(wǎng)絡(luò)作為梯度消失問題的解決方案,能夠模擬時間序列數(shù)據(jù)中的短期和長期時間相關(guān)性,使其在序列處理方面表現(xiàn)出良好的效果[5];文獻[6]基于設(shè)備級電量數(shù)據(jù),使用LSTM模型來預測建筑電力負荷;文獻[7]展示了基于序列到序列的LSTM模型在預測短期電力負荷方面的性能;文獻[8]提出了一種聚合LSTM和CNN的模型,用于小時級的電力負荷預測.LSTM的缺點是它的復雜性,2014年首次提出的門控循環(huán)單元(GRU)是最成功的LSTM變體之一,然而,即使經(jīng)過優(yōu)化,LSTM和GRU模型在面對很長的(如長度超過100)輸入序列時,依然會丟失長期數(shù)據(jù)中的關(guān)鍵信息,從而限制了精度的提升.
最近的研究結(jié)果表明,具有卷積架構(gòu)的神經(jīng)網(wǎng)絡(luò)在語音合成、語言建模及機器翻譯等序列任務中表現(xiàn)良好,進而提出了一個課題:基于卷積的網(wǎng)絡(luò)能否解決上述問題,并在具有時間序列特征的電力負荷預測方面也有更佳的表現(xiàn)?本文首先將電力負荷數(shù)據(jù)及相關(guān)影響因素建模為時間序列問題,隨后提出一種多尺度信息融合卷積神經(jīng)網(wǎng)絡(luò)(MS-ConvNet)來預測6 h電力負荷.MS-ConvNet引入因果邏輯約束增強時間序列特征表達,利用多尺度卷積描述不同長度時域數(shù)據(jù)相互關(guān)系,并設(shè)計殘差網(wǎng)絡(luò)結(jié)構(gòu)提升了網(wǎng)絡(luò)深度和預測精度,實驗結(jié)果表明,MS-ConvNet模型的精度優(yōu)于MLP、LSTM和GRU等模型.
電力負荷預測根據(jù)預測時間長短分為4類:1)非常短期的負荷預測,用于預測1 h內(nèi)的負荷需求;2)短期負荷預測,預測一天至一周的負荷需求;3)中期負荷預測,預測一周至幾個月的負荷需求;4)長期負荷預測,預測的時間段在幾個月至幾年之間[9].其中,STLF為電力系統(tǒng)的控制和調(diào)度提供精確的負載需求,同時要求較高的實時性.本文關(guān)注于STLF,目標是通過對電力負荷數(shù)據(jù)及相關(guān)影響因素進行時間序列建模,再通過提出的網(wǎng)絡(luò)模型預測未來6 h的電力負荷.
假設(shè)xt是包含時刻t數(shù)據(jù)的一個向量(包含電量負荷、最高溫度、最低溫度及節(jié)假日等),用一個輸入序列(x0,x1,…,xT)來預測相應的輸出(y0,y1,…,yT).

(1)
代入后得到的待優(yōu)化代價函數(shù)為
(2)
如問題定義中所述,模型基于兩個原則:一是網(wǎng)絡(luò)的輸入與輸出長度相等;二是網(wǎng)絡(luò)中任意時刻t對應的節(jié)點只接受t時刻之前的信息.針對第一點,本文使用了一個一維的全卷積網(wǎng)絡(luò)(FCN);為了實現(xiàn)第二點,使用了具有因果關(guān)系的卷積保證任何時刻網(wǎng)絡(luò)中某一節(jié)點都只獲取了過去時刻的信息.這個設(shè)計的主要缺點是:為了實現(xiàn)對較長歷史規(guī)模的有效性,需要一個非常深的網(wǎng)絡(luò)或者非常大的過濾器,而這兩種方法都需要占用大量的計算資源,因此,提出了多尺度信息融合優(yōu)化技術(shù),使得模型可以在較小的過濾器下覆蓋更大的范圍.
一個簡單的因果卷積只能回顧線性尺度的網(wǎng)絡(luò)寬度,因此本文使用了多尺度信息融合的因果卷積,可以融合指數(shù)級大小的接受域.普通一維卷積的定義為:設(shè)F∶Z→R是一個離散函數(shù),若Ωr=[0,r]∩Z,且k∶Ωr→R是一個尺寸大小為r的過濾器,則卷積操作可以被定義為
(3)
設(shè)l是一個尺度因子,則多尺度信息融合的一維卷積操作被定義為
(4)
式中:s為卷積的起始位置;p為過濾器中位置值,lp為向前跨越的尺度.因此,尺度卷積相當于在過濾器相鄰的點之間引入了固定的間隔,當l=1時,多尺度的卷積就變成了一個常規(guī)的卷積,使用更大的尺度因子可以使上層節(jié)點融合更大范圍的輸入,能夠有效地提取更大范圍的信息.
本文提出了兩種方式來擴大接受域:選擇更大的過濾器尺寸r或者增大尺度因子l,其中一層的有效范圍是(r-1)l+1.增加深度也會給尺度的大小帶來指數(shù)級的增長,這確保了在有效的輸入長度中,模型總是能夠提取每一個輸入的信息.圖1為帶有因果卷積的多尺度信息融合示意圖.

圖1 多尺度信息融合示意圖Fig.1 Schematic diagram of multi-scale information fusion
殘差網(wǎng)絡(luò)(ResNet)的提出使神經(jīng)網(wǎng)絡(luò)模型開始向深度發(fā)展.在傳統(tǒng)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中,如果單純地增加網(wǎng)絡(luò)的深度會引起梯度消失、爆炸或準確率退化的問題.
對于梯度消失、爆炸問題,ResNet通過標準化得以解決;對于準確率問題,ResNet通過殘差學習來解決.殘差塊是包含一系列變換Z的一個分支,殘差連接是將殘差塊的輸出和一個恒等映射的輸出相加并激活,即
Y=Z(X,Wi)+X
(5)
式中:Z(X,Wi)為需要學習的殘差映射;Wi為過濾器參數(shù).殘差連接允許層有效地學習對恒等映射的修改,而不是學習整個變換,這已經(jīng)被證明對于深度網(wǎng)絡(luò)非常有用.
ResNet最初被設(shè)計用來解決圖像識別問題,但是其中采用的殘差學習和標準化的思想可以被應用到任意的模型中用來解決相似的問題.
MS-ConvNet中的一個殘差塊如圖2所示.在一個殘差塊里,包含多尺度信息融合、標準化和激活函數(shù),激活函數(shù)采用整流線性單元(ReLU),此外,為了防止過擬合及增加模型抗噪能力,在模型最后加入了一層Dropout[10].

圖2 MS-ConvNet模型中的殘差塊Fig.2 Residual block in MS-ConvNet model

(6)
在MS-ConvNet模型中,對卷積輸出使用了參數(shù)標準化,參數(shù)標準化是對過濾器參數(shù)W進行標準化,是通過一個標量g和一個矩陣V對參數(shù)矩陣W進行尺度變換,其變換公式為
(7)

(8)
(9)

總的來說,權(quán)重標準化解耦了參數(shù)矩陣的范數(shù)和方向,加速了收斂,保證了梯度的穩(wěn)定,不會爆炸或者消失;同時又解決了批標準化的數(shù)據(jù)依賴性,計算開銷也降低了許多;相比于批標準化,該方法無法將每一層特征尺度固定住,因此本文設(shè)計了一種初始化方法,在初始化時利用了最小批的信息,保證了輸入特征在初始化時均值為0,方差為1.
本文使用某地電網(wǎng)2014~2018年負荷數(shù)據(jù)對模型進行評估,同時也從互聯(lián)網(wǎng)搜集了此地區(qū)每日最高氣溫、每日最低氣溫以及節(jié)假日數(shù)據(jù).圖3顯示了一天24 h電力負荷分布的箱形圖,從圖3中可以看出,每個小時的數(shù)據(jù)服從單獨分布,有不同的均值和方差.在神經(jīng)網(wǎng)絡(luò)中,這種輸入數(shù)據(jù)的不均勻分布會造成梯度信息的爆炸或消失.為了解決該問題,本文對數(shù)據(jù)進行標準化預處理,同時在模型中使用權(quán)重標準化提升模型的魯棒性.

圖3 一天24 h電力負荷分布箱形圖Fig.3 Box diagram of electric load distribution in 24 h
首先對數(shù)據(jù)進行最大絕對值歸一化,即所有數(shù)據(jù)除以數(shù)據(jù)集中的最大值,一共得到了31 128條數(shù)據(jù),其中前80%作為訓練集,后20%作為測試集.眾所周知,更寬和更深的網(wǎng)絡(luò)可以為深度模型帶來更加精確的結(jié)果,受實驗條件所限,模型基于相似的參數(shù)總量來選取參數(shù),最終選擇最優(yōu)表現(xiàn)的參數(shù)進行分析.使用10天總計240 h的數(shù)據(jù)作為輸入序列.模型使用了如2.4節(jié)中描述的殘差塊,每個殘差塊中包含4層卷積層,與其對應的尺度因子l設(shè)置為[1,2,4,8],共堆疊了8層殘差塊,批次大小為128.每層中過濾器的數(shù)量為32,過濾器大小為8.訓練采用TensorFlow后端的Keras框架,使用學習率衰減和Adam優(yōu)化,硬件則采用了兩塊英偉達P4計算卡的云服務器.
本文對比了MLP,LSTM,GRU和MS-ConvNet幾種神經(jīng)網(wǎng)絡(luò)的測試結(jié)果,測試中都使用相同的240輸入步長以及相同的Adam優(yōu)化器,LSTM和GRU都采用了效果最好的三層結(jié)構(gòu).性能對比評估采用三種指標:平均絕對百分比誤差(MAPE)、平均絕對誤差(MAE)和判定系數(shù)(R2).
訓練過程中測試集MAPE曲線如圖4所示,可以看出這4種模型經(jīng)過Adam優(yōu)化后,都可以在較短訓練步數(shù)內(nèi)迅速收斂.但是需要注意的是,GRU和LSTM由于RNN模型的特殊性(每個單元的訓練都需要等待上一個單元的輸出),單步訓練消耗的時間是MS-ConvNet的數(shù)倍,因此MS-ConvNet實際收斂耗時遠低于GRU和LSTM.

圖4 模型訓練過程中測試集MAPE曲線Fig.4 MAPE curves of test set during model training
圖5顯示了4種模型對應測試集結(jié)果的散點圖.每個點代表一個測試樣本,中間是一條Y=X的斜線.點距離中間線的距離越近,結(jié)果越準確.從圖5中可以看出,MLP子圖中點分布偏下,說明MLP更傾向于預測更低的結(jié)果,這會造成頻繁的計劃供電量不足;相較于前三個子圖,MS-ConvNet子圖中的點更緊密地聚集在斜線周圍,這說明MS-ConvNet在較大的比例測試樣本上做出了更準確的判斷.
通過多次實驗得出的測試結(jié)果對比如表1所示.以過去多年國內(nèi)外廣泛采用的模型作為測試基準,可以看出在多種評估手段下,各種神經(jīng)網(wǎng)絡(luò)都表現(xiàn)出了一定的預測能力.LSTM和GRU的表現(xiàn)優(yōu)于MLP,MS-ConvNet取得了這次實驗中最優(yōu)結(jié)果,相較于MLP模型,MAPE降低了63%,MAE降低了65%,而R2從0.884提升到0.976.相對于LSTM和GRU,MS-ConvNet的結(jié)果也顯示了明顯的進步,說明模型中各種設(shè)計的結(jié)構(gòu)能夠很好地適應負荷序列數(shù)據(jù).

圖5 四種模型測試結(jié)果散點圖Fig.5 Scatter diagrams of test results with four models
負荷數(shù)據(jù)常常由于采集設(shè)備故障和通信異常而造成數(shù)據(jù)缺失或數(shù)據(jù)異常,健壯性較差的模型容易因此產(chǎn)生不可靠的預測.為了測試MS-ConvNet的魯棒性,在一定比例的歸一化負荷數(shù)據(jù)上隨機加入了標準差為0.2的白噪聲,加入噪聲數(shù)據(jù)的比例分別為5%、10%、20%,然后進行訓練和測試,測試結(jié)果如表2所示.

表1 測試結(jié)果性能對比Tab.1 Performance comparison of test results

表2 加入白噪聲的魯棒性測試Tab.2 Robustness test with white noise addition
從表2中可以看出,添加一定量的白噪聲對測量結(jié)果影響很小,這說明提出的模型在面對噪聲時具有優(yōu)良的魯棒性.同時本文對比了幾種模型的訓練和預測時間,結(jié)果如表3所示.

表3 模型效率對比Tab.3 Model efficiency comparison s
得益于基于GPU的大規(guī)模并行運算技術(shù)的成熟,神經(jīng)網(wǎng)絡(luò)繁重計算可以在較短的時間內(nèi)完成.從表3中可以看出,MLP由于其簡單的結(jié)構(gòu)和較少的參數(shù)量,因此擁有最少的訓練和測試耗時.LSTM和GRU因為其循環(huán)運算的結(jié)構(gòu),每一步預算必須基于上一步的輸出,所有耗時較大.其中GRU由于簡化了內(nèi)部結(jié)構(gòu),因此一定程度降低了運算量.MS-ConvNet的整體網(wǎng)絡(luò)可以并行運算,因此耗時較LSTM和GRU大幅降低,其中對測試集的6 168條數(shù)據(jù)進行測試僅耗時5.8 s,說明MS-ConvNet在工業(yè)級別的大數(shù)據(jù)并行預測方面具有良好前景.
本文通過實驗證明了MS-ConvNet在短期電力負荷預測方面具有良好的精確度、魯棒性和運行效率.MS-ConvNet相較于LSTM和GRU表現(xiàn)出良好的并行能力,這一點在短期電力負荷預測時對實時性要求較高的情況下尤其重要.過去十幾年,神經(jīng)網(wǎng)絡(luò)在圖像分類、序列處理等許多方面都展示出了優(yōu)秀的性能和健壯性.在電力負荷預測方向,基于神經(jīng)網(wǎng)絡(luò)的模型也得到了更多的應用,相信隨著研究的深入,基于卷積的神經(jīng)網(wǎng)絡(luò)模型也可以推動電力負荷預測的進一步發(fā)展.