劉科 王玲霞 苗伊 王梓霽 尚虹霖



DOI:10.19850/j.cnki.2096-4706.2024.01.035
收稿日期:2023-07-13
摘? 要:文章介紹一種解決電力市場價格波動的電價預測方法。該方法利用卷積神經網絡提取輸入序列的局部特征,并降維處理。同時,應用時序模式注意力機制,考慮不同時間步之間的依賴關系,為每個時間步分配權重,優化門控循環單元的輸入特征。該模型在TGE數據集上進行了驗證,并與其他算法進行了比較,結果在各項評價指標上均達到最優,證實了其適應性和在電力現貨市場中的可行性。
關鍵詞:時序模式注意力;循環神經網絡;電價預測;卷積神經網絡;GRU
中圖分類號:TP18;TM715? ? ? 文獻標識碼:A? ? ? 文章編號:2096-4706(2024)01-0165-06
Research and Application of Electricity Price Prediction Model Based on CNN-TPA-GRU
LIU Ke1, WANG Lingxia1, MIAO Yi1, WANG Ziji2, SHANG Honglin2
(1.Inner Mongolia Longyuan New Energy Development Co., Ltd., Hohhot? 010000, China;
2.North China Electric Power University (Baoding), Baoding? 071003, China)
Abstract: This paper introduces a method of electricity price prediction to solve the fluctuation of electricity market price. In this method, Convolution Neural Networks are used to extract local features of input sequences and reduce dimensionality. At the same time, the Temporal Pattern Attention mechanism is applied to consider the dependencies between different time steps, assign weights to each time step, and optimize input characteristics of the Gate Recurrent Unit. The model is verified on TGE dataset, and compares with other algorithms, and reaches the optimal in each evaluation index, which confirmed its adaptability and feasibility in the power spot market.
Keywords: temporal pattern attention; Recurrent Neural Network; electricity price prediction; Convolutional Neural Network; GRU
0? 引? 言
近年來,許多國家紛紛實行了電力市場自由化,這意味著電力市場的參與者不再受限于單一供應商,而可以自由選擇電力供應商和購買方式。在電力市場自由化建立以來,準確預測電力價格一直是一個關鍵的目標,因為它直接影響到能源公司的發電成本和利潤優化,尤其在能源公司的決策和戰略制定中,價格預測已經成為一項必不可少的投入。準確的價格預測有助于電力企業制定更有效的發電計劃,優化能源資源的利用,提高電力供應的穩定性和可靠性,從而實現企業的盈利最大化。
目前,針對電價預測的方法主要包括兩類,分別為基于統計學的方法和基于機器學習的方法。統計學的方法包括歸條件異方差[1]和隱馬爾科夫模型[2]等,通過學習不同時刻的電價遞歸關系實現電價預測,但是由于電價序列的復雜特征,如高波動性和非平穩性,預測效果并不佳。而在機器學習中采用支持向量機回歸[3]等算法,通過引入用電負荷、天氣、二氧化碳排放限額等相關信息,訓練大量電力數據,可以在一定程度上提高預測精度,發現輸出和輸入之間的映射關系,但這類方法難以挖掘特征在非線性時間序列上的規律,預測精度還有提高的空間。
近年來,隨著深度學習的廣泛應用,許多學者將其應用在電價預測中,針對電價序列的非線性等特點,早期研究者們使用循環神經網絡(Recurrent Neural Network, RNN)[4]進行預測,但是在處理較長的時間序列時,容易出現梯度爆炸或者梯度消失的問題,導致時間序列預測不準確。文獻[5]提出基于FBM驅動的隨機微分方程,其被離散化為一個離散增量模型,用于預測電價。但是這種傳統方法仍然不能很好地歸納輸入與輸出二者直接的內在聯系。為了解決上述問題,研究學者們又提出了長短時記憶網絡(Long Short Term Memory, LSTM)[6-8],循環神經網絡中的門控循環單元網絡(Gate Recurrent Unit, GRU)[9]等算法。深度學習方法在不同尺度的時間序列預測中具有更大的適應性和準確性。
卷積神經網絡 (Convolution Neural Networks, CNN)[10]對輸入的時序數據只能捕捉局部信息,必須通過層疊來獲取全局的聯系增強視野,而注意力機制可以靈活地捕捉全局與局部的聯系,補齊CNN的短板。基于此,本文提出基于時序注意力機制的CNN-GRU短期電價預測模型,通過對序列數據中不同時間步的重要性進行建模,以解決傳統電價預測模型存在的計算效率低、在電價跳躍點與尖峰點預測精度不高的問題。
1? 相關工作
1.1? 時序注意力機制
時序注意力機制[11]是一種用于序列數據的注意力機制,主要在處理序列數據時提取有用的信息。如圖1所示,時序注意力模型會學習一個權重向量,用于給輸入序列中不同的時間步分配不同的權重,以強調重要的時間步和抑制不重要的時間步。
在電價預測任務中時序注意力機制用于從歷史電價時間序列中提取有用的信息。時序注意力可以將歷史電價序列和其他特征輸入到帶有時序注意力機制的深度學習模型中,模型會學習歷史時間步之間的關系,并為不同時間步分配不同的權重,以強調重要的時間步并抑制不重要的時間步。具體來說,時序注意力機制可以在每個歷史時間步上計算出一個注意力權重向量,將其與歷史電價序列相乘并求和,得到加權后的歷史電價向量。然后,將加權后的歷史電價向量和其他特征一起輸入到預測模型中進行預測。在訓練過程中,模型會通過最小化預測誤差來優化注意力權重向量的學習。綜上所述,時序注意力機制可以幫助電價預測模型更好地處理歷史電價序列中的信息,提高模型的預測性能和泛化能力。
1.2? 卷積神經網絡
CNN是一種廣泛應用于圖像和視頻等數據上的深度學習模型。在電價預測中,通常將時間序列數據轉換成二維圖像輸入CNN卷積神經網絡中,以學習輸入數據中的模式和趨勢。具體地說,可以將時間序列數據按照一定時間間隔進行切割,將每個時間段內的數據作為一行像素值,將多個時間段拼接成一個二維圖像。二維圖像可以看作圖像的輸入數據,再使用CNN對這些圖像進行卷積和池化操作,同時對電價時間序列進行降維處理以及二次特征提取,最后通過全連接層匯總所有卷積單元提取的局部特征,輸出預測結果。CNN不僅可以降低模型的復雜度,還采用梯度下降優化方法,有效減少過擬合現象,提高模型泛化能力。在電價預測中,CNN可以學習到不同時間段內電價的趨勢和變化規律,進而預測未來電價的變化趨勢,提高電力市場參與者的決策效果和利潤水平。
1.3? GRU神經網絡
LSTM的記憶單元可以選擇性地保留和遺忘過去的信息有效地避免了梯度消失問題,同時可以處理更長的時間序列。然而由于其內部結構較為復雜,LSTM網絡的訓練較長。因此,在RNN的基礎上相關學者提出一種門控循環單元(GRU)神經網絡模型,GRU神經網絡的結構單元如圖2所示。
如圖2所示,在GRU中,每個單元包含兩個門:更新門(Update Gate)和重置門(Reset Gate),以及一個隱藏狀態,其內部單元與LSTM的內部單元相似。在每個時間步,輸入向量和前一個隱藏狀態會經過一定的線性變換,然后會被送入到兩個門控制的記憶細胞中。重置門控制著過去記憶對當前輸入有多少影響,而更新門則控制著保留多少過去的記憶,并與當前輸入相結合,并采用sigmoid激活函數控制二者。通過這種方式,GRU網絡可以選擇性地忘記和記憶過去的信息,并將當前的輸入與過去的信息相結合,其內部關系[12]如下:
(1)
(2)
(3)
(4)
式中zt為更新門,rt為重置門,輸入x與隱藏層輸出結果ht-1相加得到ht,σ為sigmoid函數,Wz、Wr、Wh、Uz、Ur、Uh、bz、br、bh為單元的權重矩陣。相比于LSTM,GRU參數量更少,在計算效率和速度方面具有很大優勢;同時由于GRU的結構簡單,使得其模型更容易優化;最后,GRU通過門控制著過去的記憶對當前的輸入有多少影響,同時控制著保留多少過去的記憶,并與當前輸入相結合,可以更好地控制信息流動。
GRU通過其門控機制來捕捉序列數據中的長期依賴關系,從而經常被用于分析歷史電價數據并預測未來的價格趨勢,廣泛應用在電價預測任務中。此外,對于電價預測而言,歷史價格數據通常存在一定的時間相關性和趨勢,GRU可以從歷史價格序列中提取出相關的特征,如季節性變化等。因此,本文設計了基于CNN-TPA-GRU短期電價預測模型,通過一維卷積提取局部特征,TPA層處理時間依賴關系,GRU層增強表達和記憶能力。綜合多模態數據和神經網絡融合,有效提高電價預測準確性。
2? ?CNN-TPA-GRU預測模型
2.1? 數據歸一化
數據歸一化可以將所有特征的取值范圍都縮放到相同的區間內,使得不同特征的權重更加平衡,提高了模型訓練的穩定性和準確性。同時,進行數據歸一化還可以加速模型訓練的收斂速度,提高算法的收斂精度,從而更好地實現數據預處理的目標。因此本文將所有數據縮放到[0,1]:
(5)
式中Xi為原始數據中的第i個特征,Xi,min和Xi,max分別為該特征的最大值和最小值,Xi,norm為歸一化后得到的值。在預測模型輸出結果時,為了使預測結果具有實際意義,對輸出的數據進行反歸一化,得到預測電價值,計算方法如式(6)所示:
(6)
2.2? 模型結構
CNN-TPA-GRU模型的整體結構如圖3所示。輸入層接收形狀為“時間步長,特征維度”的輸入。CNN層接收輸入層的輸入,使用了一維卷積層和ReLU激活函數,一維卷積層的作用是從輸入序列中提取局部特征并降維處理,這些特征可以用于后續的模型層進行進一步的特征提取和預測。之后再通過專門用于處理時間序列數據的TPA層。通過考慮不同時間步之間的依賴關系來為每個時間步分配權重,從而實現對時間序列數據的特征提取,將注意力權重與輸入數據逐元素相乘,以實現類似的加權特征表示,并輸出至GRU層。兩個GRU層由門控循環單元組成,用于控制信息的流動和過濾,從而增強模型的表達能力和記憶能力。在本模型中,第一個GRU層的輸出將作為第二個GRU層的輸入,用于傳遞前一層提取的時間依賴關系信息和長期依賴關系信息,之后進入扁平化層。扁平化層將GRU層的輸出展平為一個1D張量,以便連接到全連接層,而全連接層具有100個神經元,用于學習更高級別的特征表示。最后進入丟棄層,用于隨機丟棄一定比例的神經元,以防止模型過擬合,丟棄完成后輸出至輸出層,后續經過反歸一化,得到最終的預測結果。
電價預測任務中,除了歷史價格序列外,本文通過考慮其他相關的多模態數據,如二氧化碳排放量、風發電量等。CNN具有強大的非線性建模能力,可以學習到更高階、更復雜的特征表示,從而提高電價預測的準確性;同時TPA可以在序列數據中對不同時間步的特征進行加權和選擇。通過將CNN、TPA和GRU融合,可以有效地融合這些多模態特征,在大量的歷史電價數據上進行訓練,可以學習到模型的參數和權重,使其能夠更好地適應電價預測任務,并提高預測精度。
3? 實驗驗證
3.1? 數據集
本文實驗選取來自波蘭能源交易所(TGE)自2018年1月1日至2020年12月27日的日前市場(Day Ahead Market, DAM)電力交易數據作為仿真數據集[13]。數據集原始數據包含實時的時間、電價(波蘭茲羅提/兆瓦時)、二氧化碳排放限額、用電負荷、風電出力量的序列,每條記錄之間的時間間隔為一小時,總計26 207條記錄。
3.2? 實驗設置
本文實驗選擇Ubuntu操作系統20.04.4 LTS,采用Nvidia RTX A5000(24 GB)GPU加速網絡訓練,Python版本為3.8,CUDA版本為11.7,深度學習框架選用Keras 2.9.0。在模型訓練過程中,時間步長為30,數據特征維度為30,訓練輪數為200,批處理大小為128。一維卷積層的卷積核大小為3×3,過濾器數為16。丟棄層丟棄率為0.2。模型使用Adam作為優化器,學習率為0.01。
3.3? 評價指標
本文選取均方根誤差(Root Mean Squared Error, RMSE)、平均絕對誤差(Mean Absolute Error, MAE),平均絕對百分比誤差(Mean Absolute Percentage Error, MAPE)和準確率(Accuracy, ACC)作為模型評價指標,計算公式如下:
(7)
(8)
(9)
(10)
式中,yi為第i個觀測值的真實值, 為對應的預測值,n為樣本數量。
3.4? DAM電價特征分析
電價具有影響因素多、波動性強的特點。由于波蘭電力市場風電占比較高,DAM電價波動性強,常出現電價跳躍的情況,價格跳躍和價格尖峰給電價預測帶來了巨大的困難,現有的方法很難預測出價格跳躍的準確時間和跳躍高度。2018年1月至2020年12月期間DAM的電價變化曲線如圖4所示,可以看出電價出現較多尖峰,波動較大。
為了體現本文實現的算法在跳躍點預測結果的優越性,選用DAM的電力市場數據集進行實驗驗證。對電價時間序列的分析證實了電價的周期性變化性質[14]。圖5說明了電價時間序列的自相關函數,從中可以看出,給定時間的電價受24小時的倍數延遲對應的歷史電價值的顯著影響。
3.5? 數據預處理
本文按照約為6:2:2的比例將數據集劃分為訓練集、驗證集、測試集,具體劃分的時間段如表1所示。
在本文選用的DAM電力市場數據集中,包含實時的時間、電價(波蘭茲羅提/兆瓦時)、二氧化碳排放限額、用電負荷、風電出力量的序列。電價和實時負荷相互關聯,需求變動會直接影響電價,電價變化也會對能源消費產生影響。對于高風電滲透的電力市場,加入風發電量作為特征,能夠更好地反映電價的變化趨勢,提高預測準確率。所以,本文選取實時的用電負荷、風發電量以及1-7天內和14天前同一時刻的電價、用電負荷、風發電量的歷史值作為模型輸入,各個特征與實時電價的皮爾遜相關系數如表2所示。表中P為電價,D為用電負荷,W為風發電量,數字表示距該時刻的天數。
在電力市場中,二氧化碳排放限額管控極為嚴格,且每日電力交易分為高峰期(Peak Period,07:00—22:00)和非高峰期(Offpeak Period),因此,增加二氧化碳排放限額和是否為高峰期作為模型輸入特征,皮爾遜相關系數分別為0.23和0.41。此外,考慮到電力市場節假日可能用電需求減少,電價可能有所下降,發現是否為節假日這一屬性與實時電價的皮爾遜相關系數為-0.32,具有一定的負相關性,將其也作為預測模型的一個輸入特征。
3.6? 與其他算法的對比實驗
為了檢驗本文所提出的CNN-TPA-GRU模型的學習能力更強、預測更準確的特性,對測試集上5 232個小時的價格進行了預測,并分別采用了GRU模型、Attention-GRU模型[15]、Attention-CNN-LSTM模型[16]、CNN-GRU模型和本文提出的CNN-TPA-GRU進行對比。對這五種預測結果與真實電價進行了比較分析,選取2020年5月26日至2020年6月6日共計288個小時的預測結果進行畫圖對比展示,如圖6所示。
從圖6中可以觀察到,五種算法模型的預測值變化趨勢與真實值大體上一致。然而,本文提出的CNN-TPA-GRU模型的預測值更接近真實值,而GRU原始模型的預測結果偏離真實值的差距最大,其后依次是Attention-CNN-LSTM模型、Attention-GRU模型、CNN-GRU模型。造成這種差異的原因主要是在本文提出的模型中,通過將CNN與TPA結合,以及考慮不同時間步之間的依賴關系來為每個時間步分配權重,從而實現對時間序列數據的特征提取,優先篩選關鍵信息,以優化輸入到GRU網絡的數據。而相較于Attention-CNN-LSTM模型,GRU與LSTM相比,由于GRU沒有遺忘門,它對于短期記憶和快速變化的數據可以有更好的適應性,因此在處理短序列數據時,GRU的表現優于LSTM。因此,本文提出的CNN-TPA-GRU模型相較于其他四種更為精確。
從表3可以看出,本文提出的CNN-TPA-GRU模型的RMSE相較于GRU、Attention-GRU、Attention-CNN-LSTM、CNN-GRU分別降低了18%、9%、14%、4%,MAE分別降低了17%、8%、16%、5%,MAPE分別降低了17%、13%、16%、6%。各項評價指標均為本文提出的CNN-TPA-GRU模型最佳,進一步印證了對于圖6的分析,本文提出的CNN-TPA-GRU模型具有良好的精確性。
4? 結? 論
本文針對新能源高風電滲透的電力市場,提出了一種基于CNN-TPA-GRU的市場短期電價預測算法,通過在卷積神經網絡后加入時序模式注意力機制,實現對時間序列數據的特征提取,突出了卷積神經網絡處理后的輸入特征中的關鍵信息。同時,加入風發電量和二氧化碳限額作為輸入特征,能更準確地反映電價去變化趨勢,提升準確率,符合目前大力構建以新能源為主體的新型電力系統的現狀。同時,本文采用TGE數據集進行分析,通過與各種算法進行對比,本文的模型在各種評價指標上均達到了最優,相比于Attention-CNN-LSTM等算法,本文模型對于短期記憶和快速變化的數據可以有更好的適應性,同時由于卷積神經網絡的加入,更加優化了特征提取過程,在不丟失重要信息的情況下降低輸入數據的維度,從而減少模型中的參數數量和計算復雜度。綜合上所述,CNN-TPA-GRU能很好地解決新能源大量并入的電力現貨市場短期電價預測問題,有著廣闊的應用場景。
參考文獻:
[1] 樊宇琦,丁濤,孫瑜歌,等.國內外促進可再生能源消納的電力現貨市場發展綜述與思考 [J].中國電機工程學報,2021,41(5):1729-1752.
[2] 王彩霞,李梓仟,李瓊慧,等.丹麥新能源參與電力市場機制及對中國的啟示 [J].中國電力,2018,51(9):143-150.
[3] 翟鴻雁,曾晉明,曾紀霞.基于支持向量機的電力市場價格預測中的核函數比較 [J].計算技術與自動化,2011,30(2):30-33.
[4] GRAVES A,MOHAMED A R,HINTON G.Speech recognition with deep recurrent neural networks [C]//2013 IEEE International Conference on Acoustics,Speech,and Signal Processing (ICASSP).Vancouver:IEEE,2013:6645-6649.
[5] JAHANGIR H,TAYARANI H,BAGHALI S,et al. A novel Electricity Price Forecasting Approach Based on Dimension Reduction Strategy and Rough Artificial Neural Networks [J].IEEE Transactions on Industrial Informatics,2020,16(4):2369–2381.
[6] HOCHREITER S,SCHMIDHUBER J.Long short-term memory [EB/OL].[2023-06-29].https://max.book118.com/html/2017/0630/5030331033001034.shtm.
[7] DAS R,BO R,REHMAN W U,et al. Cross-Market Price Difference Forecast Using Deep Learning for Electricity Markets [C]//2020 IEEE PES Innovative Smart Grid Technologies Europe (ISGT-Europe).The Hague:IEEE,2020:854-858.
[8] BUI D M,LE P D,CAO T M,et al. A Statistical Data-Filtering Method Proposed for Short-Term Load Forecasting Models [J].Journal of Electrical Engineering & Technology,2020,15:1947-1967.
[9] YANG H l,SCHELL K R.HFNet: Forecasting Real-Time Electricity Price via Novel GRU Architectures [C]//2020 International Conference on Probabilistic Methods Applied to Power Systems (PMAPS).Liege:IEEE,2020:1-6.
[10] KRIZHEVSKY A,SUTSKEVER I,HINTON G E. ImageNet Classification with Deep Convolutional Neural Networks [J].Communications of the ACM,2017,60(6):84-90.
[11] SHIH S Y,SUN F K,LEE H Y. Temporal Pattern Attention for Multivariate Time Series Forecasting [J/OL].arXiv:1809.04206 [cs.LG].[2023-06-29].https://arxiv.org/abs/1809.04206v1.
[12] JOZEFOWICZ R,ZAREMBA W,SUTSKEVER I. An empirical exploration of recurrent network architectures [C]//ICML'15: Proceedings of the 32nd International Conference on International Conference on Machine Learning.Lille:JMLR.org,2015,37:2342-2350.
[13] 馮道雨.淺析波蘭電力行業現狀及發展趨勢 [J].能源與節能,2020(10):152-154.
[14] 趙雅雪,王旭,蔣傳文,等.基于最大信息系數相關性分析和改進多層級門控LSTM的短期電價預測方法 [J].中國電機工程學報,2021,41(1):135-146+404.
[15] 謝謙,董立紅,厙向陽.基于Attention-GRU的短期電價預測 [J].電力系統保護與控制,2020,48(23):154-160.
[16] 吉興全,曾若梅,張玉敏,等.基于注意力機制的CNN-LSTM短期電價預測 [J].電力系統保護與控制,2022,50(17):125-132.
作者簡介:劉科(1984—),男,漢族,內蒙古呼和浩特人,高級工程師,碩士,研究方向:電力交易;王玲霞(1984—),女,漢族,內蒙古呼和浩特人,工程師,碩士,研究方向:電力交易;苗伊(1989—),女,漢族,山西河曲人,中級經濟師,本科,研究方向:電力交易;王梓霽(2000—),男,漢族,天津人,碩士研究生,研究方向:機器學習及其應用;尚虹霖(1999—),男,漢族,遼寧盤錦人,碩士研究生,研究方向:機器學習及其應用。