国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STL-XGBoost-NBEATSx的小時天然氣負荷預測

2024-06-24 10:39:46邵必林任萌田寧

邵必林 任萌 田寧

摘要:小時天然氣負荷預測受外部特征因素與預測方法的影響,為提高其預測精度并解決其他深度學習類模型或組合模型可解釋性差、訓練時間過長的問題,在引入“小時影響度”這一新特征因素的同時提出一種基于極端梯度提升樹(extreme gradient boosting tress,XGBoost)模型與可解釋性神經(jīng)網(wǎng)絡模型NBEATSx組合預測的方法;以 XGBoost模型作為特征篩選器對特征集數(shù)據(jù)進行篩選,再將篩選降維后的數(shù)據(jù)集輸入到NBEATSx中訓練,提高NBEATSx的訓練速度與預測精度;將負荷數(shù)據(jù)與特征數(shù)據(jù)經(jīng)STL(seasonal and trend decomposition using Loess)算法分解為趨勢分量、季節(jié)分量與殘差分量,再分別輸入到XGBoost中進行預測,減弱原始數(shù)據(jù)中的噪音影響;將優(yōu)化后的NBEATSx與XGBoost模型通過方差倒數(shù)法進行組合,得出STL-XGBoost-NBEATSx組合模型的預測結(jié)果。結(jié)果表明:“小時影響度”這一新特征是小時負荷預測的重要影響因素,STL-XGBoost-NBEATSx模型訓練速度有所提高,具有良好的可解釋性與更高的預測準確性,模型預測結(jié)果的平均絕對百分比誤差、均方誤差、平均絕對誤差分別比其余單一模型平均降低54.20%、63.97%、49.72%,比其余組合模型平均降低24.85%、34.39%、23.41%,模型的決定系數(shù)為0.935,能夠很好地擬合觀測數(shù)據(jù)。

關(guān)鍵詞:天然氣負荷預測; 小時影響因素; 極端梯度提升樹; 可解釋性; NBEATSx; 組合模型

中圖分類號:TP 996; TP 183 ??文獻標志碼:A

文章編號:1673-5005(2024)03-0170-10 ??doi:10.3969/j.issn.1673-5005.2024.03.019

Hourly natural gas load forecast based on ?STL-XGBoost-NBEATSx

SHAO Bilin, REN Meng, TIAN Ning

(School of Management, Xian University of Architecture and Technology, Xian 710311, China)

Abstract: Hourly natural gas load forecasting was affected by external feature factors and forecasting methods. In order to improve the accuracy of natural gas hourly load forecasting and solve the problems of poor interpretability and long training time of other deep learning models or combination models, in this paper we introduce a new feature of "hourly influence" and propose a prediction method based on the combination of extreme gradient boosting tree (XGBoost) model and interpretable neural network model NBEATSx. The XGBoost model was used for feature screening, then the filtered and dimensionality-reduced dataset and load values were inputted into NBEATSx for training, which improves the training speed and prediction accuracy of NBEATSx. The load data and feature data were decomposed into the trend, seasonal, and residual components by the seasonal and trend decomposition using Loess (STL) algorithm, and then they were inputted into XGBoost for prediction, which reduces the influence of the noise in the original data. The two types of models mentioned above were combined by the inverse variance method to obtain the prediction results of the STL-XGBoost-NBEATSx model. The results show that the new feature of "hourly influence" is an essential factor in hourly load forecasting. The STL-XGBoost-NBEATSx not only improves the training speed, but also has good interpretability and higher prediction accuracy. The mean absolute percentage error, mean square error, and mean absolute error of the prediction results of the combined model are respectively 54.20%, 63.97%, and 49.72% lower than the rest of the single model on average, and 24.85%, 34.39%, and 23.41% lower than the rest of the combined model on average. The model has an R-squared of 0.935, which provides a good fit to the observed data.

Keywords:natural gas load forecasting; hourly influencing factors; extreme gradient boosting trees; interpretability; NBEATSx; combinatorial models

隨著中國“碳達峰、碳中和”工作目標的推進,天然氣作為一種低碳清潔能源,在供應端和消費端各領(lǐng)域具有獨特的比較優(yōu)勢[1]。近年來,中國天然氣產(chǎn)量不斷提高,但仍難以滿足高速增長的天然氣消費需求,供需缺口持續(xù)擴大,甚至在一些地區(qū)出現(xiàn)了“氣荒”[2]。負荷預測是保證天然氣供需平衡的基礎,相比于日負荷與年負荷等中低頻數(shù)據(jù),小時負荷更能反映出天然氣的變化情況。準確的天然氣負荷預測能夠提高天然氣供應的可靠性,改善天然氣供不應求的情況。因此筆者使用XGBoost特征篩選優(yōu)化NBEATSx,再使用STL(seasonal and trend decomposition using Loess)分解優(yōu)化XGBoost,最后使用誤差倒數(shù)法將優(yōu)化后的兩類模型組合,結(jié)合樹模型訓練速度快以及神經(jīng)網(wǎng)絡模型預測精度高的優(yōu)勢解決單一模型存在的不足。

1 國內(nèi)外研究現(xiàn)狀

天然氣負荷數(shù)據(jù)具有非線性、非平穩(wěn)性等特點,且受眾多復雜因素的影響,現(xiàn)有預測模型主要分為傳統(tǒng)模型與基于人工智能的模型兩大類。傳統(tǒng)預測模型主要有指數(shù)平滑法(ES)[3]、自回歸差分移動平均法(ARIMA)等,這類模型原理簡單,對非平穩(wěn)、強非線性的數(shù)據(jù)預測精度較低?;谌斯ぶ悄艿念A測模型主要有隨機森林(RF)[4]、支持向量回歸(SVR)[5]、梯度提升類算法與基于神經(jīng)網(wǎng)絡的算法等。梯度提升類基于樹模型的算法具有良好的可解釋性,可輸出特征重要度來實現(xiàn)對高維特征的篩選,但模型缺乏對強波動時間段的感知能力,無法有效提取數(shù)據(jù)的長期信息;反向傳播神經(jīng)網(wǎng)絡(BP)[6]、循環(huán)神經(jīng)網(wǎng)絡(RNN)[7]、長短期記憶網(wǎng)絡(LSTM)[8]、門控遞歸單元(GRU)[9]等深度學習算法復雜,具有更好的長短期信息學習性能,適合對大數(shù)據(jù)集進行訓練,非線性擬合能力強,但模型更像一個“黑盒”,可解釋性差,而且參數(shù)過多、收斂速度慢。

由于負荷的波動性較強且受外部因素影響較大,單一的模型難以滿足負荷預測高精度的實際需要,學者們提出了組合預測模型。譚海旺等[10]利用極端梯度提升樹(extreme gradient boosting trees,XGBoost)對光伏發(fā)電功率進行初步預測并將預測值作為增加的特征值,再分別建立XGBoost模型和LSTM模型,利用誤差倒數(shù)法整合兩個模型的預測值,試驗表明組合模型較單一模型預測性能更好;邵必林等[11]引入變分模態(tài)分解(VMD)算法將負荷數(shù)據(jù)分解為平穩(wěn)數(shù)據(jù),然后通過融合注意力機制的深度雙向門控循環(huán)單元神經(jīng)網(wǎng)絡(IDBiGRU)對分解后的數(shù)據(jù)進行預測,降低了原始負荷數(shù)據(jù)中噪音的影響,提高了負荷預測的精度和訓練速度,但VMD算法性能受K參數(shù)選取的影響較大;陳嵐等[12] 利用 XGBoost 進行特征篩選,降低數(shù)據(jù)維度,再利用改進的 LSTNet 進行預測,預測準確性有所提高,但試驗證明隨著時間步增加,各個模型的預測誤差都逐漸增大。

通過上述研究發(fā)現(xiàn),對于影響天然氣小時負荷的外部因素,通常僅關(guān)注時間、氣象[13]等,忽略了同一天中不同時刻負荷的變化規(guī)律,因此本文中提出了“小時影響度”這一新特征衡量24個不同時刻對負荷變化的影響程度。此外,在負荷預測方面,存在單一樹模型難以提取長期信息、預測精度受限于中小數(shù)據(jù)集,普通神經(jīng)網(wǎng)絡模型可解釋性差、訓練速度慢以及目前的預測模型往往在多步預測中表現(xiàn)不佳等不足。NBEATSx網(wǎng)絡是在N-BEATS(neural basis expansion analysis for interpretable time series forecasting)基礎上的擴展,它是一種僅通過全連接層實現(xiàn)時間序列預測的方法,其可解釋性的結(jié)構(gòu)可看作是模型自身實現(xiàn)對輸入數(shù)據(jù)的分解處理,使得模型能夠在負荷數(shù)據(jù)的單步與多步預測中具有更好的精度;XGBoost是一個強大的集成學習算法,它通過將多個弱分類器(決策樹)組合起來,逐步減少預測誤差,提高整體性能,并且具有出色的特征處理能力與可解釋性。

2 基本原理

2.1 STL分解模型

STL分解算法是一種基于Loess局部加權(quán)回歸平滑估計技術(shù)進行時間序列分解的算法,可以處理任何類型的時間序列數(shù)據(jù),將其分為趨勢分量、周期分量與殘差分量。STL算法操作簡單,參數(shù)少,計算速度快,分量具有可解釋性,而且不需要困擾于對分量數(shù)量的選擇,對異常值不敏感,魯棒性好。STL通常利用加法原理對時序數(shù)據(jù)進行分解,表達式 [14]為

Yt=Tt+St+It.(1)

式中,Yt為t時刻的觀測值;Tt、St、It分別為 t時刻的趨勢分量值、周期分量值、殘差分量值。

2.2 XGBoost樹模型

XGBoost是一種梯度提升(gradient boosting)樹模型,采用了前向加法思想,是對GBDT的改進,將GBDT的目標函數(shù)從一階導數(shù)信息延伸到二階導數(shù),使得在提高精度的同時提高了模型的訓練速度。XGBoost模型的集成預測值 [10]為

i=∑Kk=1fk(xi).(2)

式中,xi為第i個樣本的特征向量;i為第i個樣本的模型預測值;fk為第k棵樹的預測函數(shù);K為樹的個數(shù)。

以第t步的模型(第t棵樹)為例,第i個樣本的目標函數(shù)O(t) [10]為

O(t)=L(t)+Ω(ft)=∑ni=1l(yi,(t-1)i+ft(xi))+γT+12λ∑Tj=1w2j. (3)

式中,(t-1)i為第i個樣本第t-1棵樹的預測值;yi為第i個樣本的真實值;n為樣本總數(shù);γ為加入新葉子節(jié)點引入的復雜度代價;T為葉子數(shù)量;λ為加入新葉分數(shù)引入的復雜度代價;wj為葉分數(shù)的L2正則項。

將式(3)二階泰勒展開,得到最優(yōu)化目標函數(shù)為

O(t)≈∑ni=1l(yi,(t-1)i)+gift(xi)+12hif2t(xi)+γT+12λ∑Tj=1w2j≈∑ni=1giwq(xi)+12hiw2q(xi)+γT+12λ∑Tj=1w2j ??=∑Tj=1Gjwj+12(Hj+λ)w2j+γT. (4)

其中

Gj=∑i∈Ijgi, Hj=∑i∈Ijhi,gi=(t-1)l(yi,(t-1)),hi=2(t-1)l(yi,(t-1)).

式中,wq(xi)為第t棵樹的葉子節(jié)點值。

目標函數(shù)一階導數(shù)為零時,解得最優(yōu)值 [10]為

w*j=-GjHj+λ,O*=-12∑Tj=1G2jHj+λ+γT.(5)

此外,XGBoost的可解釋性允許模型輸出特征的全局重要度,在單個決策樹中利用每個特征對分割點改進性能度量的量來計算特征重要度,由節(jié)點加權(quán)和記錄次數(shù)[12],用特征在所有樹中重要度的平均值來衡量全局重要度,輸出重要度得分(Fscore)。重要度得分表明了特征因素對預測目標值的影響程度,可依據(jù)重要度得分對特征因素進行篩選。

2.3 NBEATSx神經(jīng)網(wǎng)絡模型

NBEATSx是一個基于后向和前向殘差鏈路和一個非常深的全連接層堆棧的深度神經(jīng)網(wǎng)絡結(jié)構(gòu),用來解決單變量時間序列點預測問題[15]。一個完整的NBEATSx網(wǎng)絡結(jié)構(gòu)由多個堆棧(stack)組成,一個堆棧又由多個塊(block)組成,每個塊的基本構(gòu)件是基于非線性激活函數(shù)的多層全連接網(wǎng)絡(FCNN)。NBEATSx模型的整體結(jié)構(gòu)如圖1所示。

(1)塊。以模型第s個堆棧里第m個塊為例,由FCNN通過第s個堆棧里第m個塊的輸入窗口序列值

ybacks,m以及對應的外部變量矩陣Xm學習到線性適應于后向與前向預測擴張系數(shù)的隱藏層信息hs,m,得到擴張系數(shù)后,執(zhí)行兩種形式[15]的信息轉(zhuǎn)換,輸出后向與前向預測值backs,m、fors,m:

backs,m=Vback s,mθback s,m,fors,m=Vfors,mθfors,m,Vback s,m∈RL×Ns,Vfor s,m∈RH×Ns,θback s,m, θfor s,m∈RNs. (6)

式中,θback s,m、θfor s,m分別為后向、前向預測擴張系數(shù);Ns為堆?;S度;Vback s,m,Vfor s,m 分別為塊中對應于后向預測、前向預測的基函數(shù);H為預測窗口長度;L為輸入窗口長度,L∈(2H~7H)。

(2)堆棧。使用雙重殘差連接原理將塊堆疊成堆棧,第s個堆棧里的信息轉(zhuǎn)換 [15]為

ybacks,m+1=ybacks,m-backs,m ,fors=∑Mm=1fors,m.(7)

式中,fors為第s個堆棧的未來預測值;M為第s個堆棧中塊的數(shù)量。

(3)模型預測值。多個堆?;陔p重殘差連接原理堆疊成完整的NBEATSx模型,模型最終預測值 [15]為

for=∑Ss=1fors. (8)

式中,S為一個完整NBEATSx結(jié)構(gòu)中堆棧數(shù)量;for為NBEATSx模型預測值。

(4)可解釋性結(jié)構(gòu)。NBEATSx網(wǎng)絡配置有可解釋的結(jié)構(gòu),通過設置不同的表示趨勢性(T)或季節(jié)性(S)的基函數(shù)來實現(xiàn)。不同堆棧預測的連接可以看作原始序列的順序分解,能夠很好地反映小時天然氣負荷數(shù)據(jù)的趨勢性與周期性,并可作為單獨的可解釋性輸出。以塊中的前向預測為例,后向預測中的函數(shù)處理過程與前向預測相同,趨勢性、季節(jié)性、外部變量堆棧的預測原理[15]為

tT=[0,1,2,…,H-2,H-1]H ,trends,m=∑Npoli=0tiθtrend s,m,i≡Tθtrends,m,T∈RH×(Npol+1) .(9)

seass,m=∑H2-1i=0[cos(2πitNhr)θseass,m,i+sin2πitNhrθseass,m,i+H/2]≡Sθseass,m,S∈RH×(H-1).(10)

exogs,m=∑Nxi=0xiθexogs,m,i≡Xθexogs,m.(11)

式中,tT為時間向量t的轉(zhuǎn)置; T為序列趨勢性的多項式基函數(shù);Npol為趨勢多項式函數(shù)的最大次數(shù);

θtrends,m、θseass,m、θexogs,m分別為與趨勢性、季節(jié)性、外部變量相關(guān)的擴張系數(shù);S為序列季節(jié)性的基函數(shù); Nhr為超參數(shù),控制諧波振幅;X為外部變量矩陣;Nx為外部變量個數(shù);trends,m、seass,m、exogs,m分別為趨勢性、季節(jié)性、考慮外部變量影響的預測值。

2.4 STL-XGBoost-NBEATSx組合預測模型

STL-XGBoost-NBEATSx組合模型的整體預測流程如下,模型結(jié)構(gòu)如圖2所示。

(1)收集天然氣小時負荷實際觀測數(shù)據(jù)與相關(guān)外部影響因素數(shù)據(jù),將整體數(shù)據(jù)集進行預處理后劃分為訓練集與測試集;

(2)先將預處理后的負荷數(shù)據(jù)集與特征數(shù)據(jù)集一并輸入到XGBoost中進行特征篩選,對模型輸出的不同特征重要度得分進行排序,去除特征重要度得分較低的變量,以實現(xiàn)對特征數(shù)據(jù)集的降維,再將降維后的數(shù)據(jù)集輸入到NBEATSx中訓練,輸出優(yōu)化后的NBEATSx模型預測值1;

(3)將負荷數(shù)據(jù)集與特征數(shù)據(jù)集輸入到STL模型中進行分解,降低數(shù)據(jù)的復雜度和噪音影響,再將分解后的趨勢性分量、季節(jié)性分量與殘差分量數(shù)據(jù)集分別輸入到XGBoost進行預測,各分量的預測結(jié)果線性組合得出STL-XGBoost模型預測結(jié)果2;

(4)通過方差倒數(shù)法將預測結(jié)果1與預測結(jié)果2組合,得到最終的STL-XGBoost-NBEATSx組合模型預測結(jié)果,計算過程 [16]為

ωi=Q-1i∑mi=1Q-1i ,=ω11+ω22.(12)

式中,ωi為第i個模型的權(quán)重;m為組合模型數(shù)量;Qi為第i個模型的預測誤差平方和。

3 模型構(gòu)建與參數(shù)設置

3.1 小時天然氣負荷影響因素

采集西安市灞橋區(qū)某天然氣供應站2021年6月1日至2021年8月10日每小時的天然氣負荷數(shù)據(jù)以及對應的氣象數(shù)據(jù)、日期數(shù)據(jù)作為試驗數(shù)據(jù)集,共71 d,每天采樣24次,共計1 704個樣本點,天然氣采集點處的工況溫度約為13 ℃,工況壓力約為2.33 MPa。選取最后一周(7 d)的168條數(shù)據(jù)作為測試集,其余的1 536條數(shù)據(jù)作為訓練集。

由于小時天然氣負荷量會受到人們工作時間與休息時間的影響,例如白天對天然氣的需求量大于晚上,休息時間的需求量大于工作時間,因此根據(jù)原始歷史負荷數(shù)據(jù)構(gòu)建了“小時影響度(hourly influence)”這一新特征,將訓練集中天然氣每一天同一個小時的負荷數(shù)據(jù)求和,取訓練集中所有天各個小時天然氣負荷總量在所有24小時天然氣負荷總量中所占的比重為天然氣負荷在相應時刻的小時影響度,計算式為

ωi=∑nj=1yij-min∑nj=1∑23i=0yijmax∑nj=1∑23i=0yij-min∑nj=1∑23i=0yij .(13)

式中,ωi為負荷數(shù)據(jù)在第i時刻的小時影響度;yij為第j天第i時刻的負荷數(shù)據(jù);n為訓練集中的總天數(shù)。

計算結(jié)果如圖3所示,小時天然氣負荷數(shù)據(jù)的“小時影響度”在每日0~6時刻小于0.1,但在10~21時刻卻全部大于0.9。這符合人們夜晚休息時需求量小于白天工作時的實際情況。

因為歷史負荷能夠明顯反映負荷的變化規(guī)律,因此把歷史負荷值作為預測模型的輸入特征,為了反映負荷數(shù)據(jù)的長期和短期關(guān)系,將每一負荷值的前24個小時的天然氣歷史負荷數(shù)據(jù)全部選取作為小時負荷預測的外部特征變量。

此外,選取氣象數(shù)據(jù):氣溫(℃)、濕度(%)、降水量(mm/h)、地面風速(m/s)。日期類型數(shù)據(jù):工作日為0、周末與節(jié)假日為1,以及24個小時歷史負荷值(-i 時刻/103 m3,i=1,2,…,24)共同構(gòu)建一個含30個特征變量的天然氣負荷數(shù)據(jù)初步特征集。

由于各特征值自身之間以及與負荷目標值之間的量綱不同,為了避免其對模型預測性能的影響,方便模型處理數(shù)據(jù),提高模型收斂速度,將模型所有的輸入數(shù)據(jù)進行歸一化處理,在模型輸出歸一化預測值后再將其還原。歸一化表達式為

i=xi-xminxmax-xmin .(14)

式中,i為第i個樣本歸一化后的值;xi為第i個樣本真實值;xmax和xmin分別為樣本中最大值和最小值。

3.2 基于XGBoost模型的特征篩選

特征變量多少以及自身的相關(guān)關(guān)系會影響模型的訓練速度與精度,為了掌握不同特征因素對負荷的影響程度,有效提取和選擇輸入特征提高預測模型的性能,通過XGBoost模型的可解釋模塊輸出每個特征的全局重要度,以實現(xiàn)特征分析與選擇。

使用網(wǎng)格搜索和交叉驗證(GridSearchCV)方法對XGBoost的主要超參數(shù)進行尋優(yōu),最終設置模型中樹的數(shù)量為100,樹的最大深度為3,樹的學習率為0.05,這幾個參數(shù)主要影響了模型的收斂速度與預測精度。

XGBoost模型輸入特征變量為氣溫(℃)、濕度(%)、降水量(mm/h),地面風速(m/s),日期類型、小時影響度、-i時刻(103 m3,i=1,2,…,24)歷史負荷值,其編號分別為f1、f2、f3、f4、f5、f6、f7~f30。

圖4為模型最終輸出的排名前15的特征全局重要度。

由圖4可知,提出的新特征“小時影響度”對天然氣小時負荷預測的重要度排第二,僅次于前1個時刻的歷史負荷值對其的影響程度,表明了新特征對小時負荷預測的重要價值。前3個時刻的歷史負荷值與氣溫等影響因素的重要度依次排名之后,為了降低輸入數(shù)據(jù)維度,提高預測速度,去除重要度較低(重要度得分低于10)的特征,將圖4中展現(xiàn)的剩余15個特征用作NBEATSx模型的外部變量輸入數(shù)據(jù)。

3.3 基于NBEATSx模型的負荷預測

選擇季節(jié)堆棧(seasonality)、趨勢堆棧(trend)與外部變量堆棧(exogenous)作為NBEATSx神經(jīng)網(wǎng)絡基本結(jié)構(gòu),用來反映天然氣小時負荷數(shù)據(jù)的趨勢性與季節(jié)性以及外部特征變量對負荷的影響情況;由于小時天然氣負荷數(shù)據(jù)呈現(xiàn)以日為周期的現(xiàn)象,將預測窗口步長H設置為24,同時為了更好地提取數(shù)據(jù)的長期信息,將輸入窗口長度設置為7H,即168;采用SELU激活函數(shù)能夠?qū)ι窠?jīng)網(wǎng)絡進行自歸一化,使得模型收斂速度更快且不會出現(xiàn)梯度消失與爆炸的問題,同時SELU激活函數(shù)必須配備lecun normal函數(shù)進行權(quán)重初始化。經(jīng)過尋優(yōu),各堆棧中主要超參數(shù)設置:輸入窗口長度L為168,預測窗口長度H為24,單個堆棧的塊數(shù)為2,單個塊中全連接網(wǎng)絡層數(shù)為2,隱藏層神經(jīng)元個數(shù)為64,采樣頻率為24,批處理大小為512,趨勢性多項式次數(shù)為2,周期性傅里葉基數(shù)為1,迭代次數(shù)為25 000,優(yōu)化器為Adam,學習率為0.002。

3.4 基于STL-XGBoost模型的負荷預測

先使用STL模型將天然氣小時負荷數(shù)據(jù)同特征集數(shù)據(jù)一同分解為趨勢分量、季節(jié)分量與殘差分量,以小時負荷數(shù)據(jù)為例,經(jīng)過STL分解后的結(jié)果如圖5所示。將3個分量數(shù)據(jù)集分別輸入到XGBoost模型進行預測,最后將預測結(jié)果線性相加得到STL-XGBoost負荷預測結(jié)果。對3種不同分量數(shù)據(jù)集預測任務的XGBoost超參數(shù)進行尋優(yōu),最優(yōu)參數(shù)設置如表1所示。

4 實例仿真與對比分析

為了驗證所提模型對小時天然氣負荷預測的準確性與可靠性,將文中模型與當前一些經(jīng)典單一模型和組合模型進行仿真對比分析,均采用滑動窗口的數(shù)據(jù)輸入方式實現(xiàn)模型的多步預測。

4.1 評價指標

通過綜合分析各模型的訓練時間、均方誤差(mean square error,Mse)、平均絕對誤差(mean absolute error,Mae)、平均絕對百分比誤差(mean absolute percentage error,Mape)以及決定系數(shù)(R2)來評價模型的整體預測性能。其中訓練時間越短, Mse、Mae、Mape越小,模型的預測誤差越小,性能越好。決定系數(shù)在0~1之間,該值越接近1,表明預測模型能夠更好地解釋觀測數(shù)據(jù)的波動性,對真實數(shù)據(jù)的擬合程度更好。各評價指標計算式為

Mse=1n∑ni=1(i-yi)2, ?Mae=1n∑ni=1i-yi,Mape=1n∑ni=1i-yiyi,R2=1-∑ni=1(i-)2∑ni=1(yi-)2 .(15)

式中,n為測試樣本數(shù);yi和i分別為i時刻的負荷真實值和負荷預測值; 為測試集中負荷真實值的均值。

4.2 消融試驗

通過消融試驗來驗證XGBoost特征篩選對NBEATSx網(wǎng)絡預測的有效性以及“小時影響度”對模型預測性能的重要影響。表2為消融試驗結(jié)果。由表2可以看出,經(jīng)過XGBoost模型進行特征篩選后,NBEATSx模型的整體訓練速度都有所提高,經(jīng)過特征篩選且加入“小時影響度”這一特征的NBEATSx模型的預測精度達到最高,其中Mape、Mse、Mae分別降低了6.05%、7.64%、4.32%,訓練時間降低了74.51%,決定系數(shù)也有所提高,這意味著通過XGBoost進行特征篩選提高了NBEATSx模型的預測性能。

4.3 單一模型預測結(jié)果

分別選取ARIMA、SVR、樹模型中的lightGBM、XGBoost以及神經(jīng)網(wǎng)絡模型中的RNN、LSTM、GRU與NBEATSx的預測結(jié)果進行比較。各模型均采用網(wǎng)格搜索與GridSearchCV進行參數(shù)尋優(yōu),并設置窗口滑動完成模型的168步預測。

圖6(a)是將NBEATSx(有特征篩選,有“小時影響度”)模型與其他神經(jīng)網(wǎng)絡模型預測結(jié)果進行對比,圖6(b)是將其與非神經(jīng)網(wǎng)絡模型預測結(jié)果進行對比,表3為各單一模型的預測誤差評價指標對比。

分析圖6(a)可知,NBEATSx能比其他神經(jīng)網(wǎng)絡更好地擬合負荷波動較大的波峰與波谷處;分析圖6(b)可知,XGBoost模型在負荷曲線變化平穩(wěn)階段有著優(yōu)秀的擬合能力,但對負荷數(shù)據(jù)波動部分的反映能力仍不如NBEATSx模型。

分析表3可知,在單一模型的對比中,基于GBDT框架的lightGBM與XGBoost模型發(fā)揮了樹模型擅長處理多維特征變量的優(yōu)勢,整體預測性能優(yōu)于經(jīng)典的RNN、LSTM、GRU神經(jīng)網(wǎng)絡與SVR模型;此外,由于XGBoost采用預排序算法,能夠更精確地找出數(shù)據(jù)分裂點,表現(xiàn)出比lightGBM更高的預測精度;兼具樹模型的可解釋性與神經(jīng)網(wǎng)絡模型的預測性能優(yōu)勢的NBEATSx模型在試驗結(jié)果中表現(xiàn)最佳,與經(jīng)典神經(jīng)網(wǎng)絡中表現(xiàn)最好的GRU相比,

Mape降低了45.37%,Mse降低了55.96%,Mae降低了42.14%,R2提高了14.02%;與樹模型中表現(xiàn)最好的XGBoost相比,Mape降低了23.32%,Mse降低了35.39%,Mae降低了12.22%,R2提高了5.56%,說明NBEATSx模型能夠更好地挖掘出時序負荷數(shù)據(jù)之間的復雜非線性關(guān)系以及負荷數(shù)據(jù)與外部特征變量之間的復雜相關(guān)性關(guān)系。

4.4 組合模型預測結(jié)果

合適的模型組合會提高單一模型的預測性能,為了證明所提模型組合的優(yōu)勢,將XGBoost預測結(jié)果直接與經(jīng)過特征篩選后的NBEATSx預測結(jié)果通過方差倒數(shù)法進行組合;另外,將經(jīng)由STL分解后的負荷數(shù)據(jù)分別輸入到單一模型預測試驗中表現(xiàn)較好的GRU與XGBoost中進行預測;將這4種組合模型與本文中所提出的STL-XGBoost-NBEATSx模型的預測結(jié)果進行對比,如圖7和表4所示。

由圖7可以看出,STL對輸入數(shù)據(jù)的分解降噪改善了XGBoost在波動較大部分擬合效果不好的情況,提高了波動部分預測曲線的擬合度。而本文中提出的STL-XGBoost-NBEATSx模型的預測曲線與真實數(shù)據(jù)曲線的擬合效果最好,既發(fā)揮了XGBoost模型在數(shù)據(jù)變化平穩(wěn)部分的優(yōu)秀擬合能力,又結(jié)合了NBEATSx模型在數(shù)據(jù)波動性較大情況下的擬合優(yōu)勢。

分析表4可知,組合模型的預測性能整體優(yōu)于單一模型。經(jīng)STL分解后的GRU預測精度雖然高于單一GRU,但仍低于單一NBEATSx,這是因為NBEATSx模型不同功能的堆棧結(jié)構(gòu)可以看作對輸入數(shù)據(jù)進行分解與預測的結(jié)合,使得訓練過程更簡化,訓練結(jié)果更精確。

單純將XGBoost與NBEATSx組合后,由于單一XGBoost模型預測精度不足,與NBEATSx的學習能力差距較大,從而導致組合模型的Mape反倒比NBEATSx(特征篩選后)要高,預測效果不能達到預期。由表4可知,將原始數(shù)據(jù)經(jīng)由STL分解,再輸入到XGBoost中進行預測,減弱了輸入數(shù)據(jù)中噪音對模型預測的影響,所得STL-XGBoost模型的預測誤差比NBEATSx模型更低,有效提升了XGBoost模型的預測性能。

STL-XGBoost-NBEATSx組合預測模型的子模型為優(yōu)化后的NBEATSx與優(yōu)化后的STL-XGBoost,滿足差異化大、準確性高的條件,結(jié)合了兩類子模型的優(yōu)勢,表現(xiàn)出最優(yōu)的預測性能。與單一的XGBoost相比,Mape、Mse和Mae分別下降了38.85%、52.68%和29%;與單一的NBEATSx相比,Mape、Mse和Mae分別下降了25.07%、32.35%和22.62%,預測誤差大大降低。模型的決定系數(shù)高達0.935,表明該模型能夠很好地擬合原始負荷數(shù)據(jù)。圖8為組合模型STL-XGBoost-NBEATSx與子模型的預測誤差對比。由圖8可以看出,組合模型的誤差波動明顯減小。在序列隨機性與波動性較強的情況下,組合模型能夠有效地提高模型的穩(wěn)定性與預測精度。

5 結(jié) 論

(1)針對小時負荷預測引入“小時影響度”這一特征,可作為特征篩選后的重要外部變量,有效提高模型的預測效率。

(2)STL分解可以減小輸入數(shù)據(jù)的復雜程度與噪聲,解決XGBoost對數(shù)據(jù)敏感的問題,極大提高了XGBoost模型預測的穩(wěn)定性與準確性。

(3)STL-XGBoost-NBEATSx組合模型結(jié)合了樹模型與神經(jīng)網(wǎng)絡模型的優(yōu)勢,不僅有良好的可解釋性,且相較于單一模型與其他組合模型,能更好地處理負荷時間序列中的線性與非線性特征,對負荷數(shù)據(jù)的平穩(wěn)性與波動性具有更好的表征能力,能夠有效減小負荷預測的誤差,提高模型的預測精準性與預測速率,模型決定系數(shù)較高,預測性能可以滿足天然氣供輸部門的精度需求。

(4)使用STL-XGBoost-NBEATSx預測模型進行短期預測可以提供更詳細和精確的負荷信息,幫助制定準確的運營計劃,進行實時預測可以支持實時能源調(diào)度和供應鏈管理。

參考文獻:

[1] 劉合,梁坤,張國生,等.碳達峰、碳中和約束下我國天然氣發(fā)展策略研究[J].中國工程科學,2021,23(6):33-42.

LIU He, LIANG Kun, ZHANG Guosheng, et al. Research on Chinas natural gas development strategy under the constraints of carbon peak and carbon neutrality[J]. Chinese Engineering Science,2021,23(6):33-42.

[2] 王坤,楊濤,梁坤,等.碳達峰碳中和戰(zhàn)略下天然氣的能源優(yōu)勢與發(fā)展建議[J].能源與節(jié)能,2023(3):27-31.

WANG Kun, YANG Tao, LIANG Kun, et al. Energy advantages and development suggestions of natural gas under the carbon peaking and carbon neutrality strategy[J]. Energy & Energy Conservation,2023(3):27-31.

[3] YOUSUF M U, AL-BAHADLY I, AVCI E. Wind speed prediction for small sample dataset using hybrid first-order accumulated generating operation-based double exponential smoothing model[J]. Energy Science Engineering,2022,10(3):726-739.

[4] 李焱,賈雅君,李磊,等.基于隨機森林算法的短期電力負荷預測[J].電力系統(tǒng)保護與控制,2020,48(21):117-124.

LI Yan, JIA Yajun, LI Lei, et al. Short-term power load forecasting based on random forest algorithm[J]. Protection and Control of Modern Power Systems,2020,48(21):117-124.

[5] KIHAN K, JIN H. A study on the development of the short-term photovoltaic power forecasting system using support vector regression (SVR)[J]. Journal of the Korean Institute of Illuminating and Electrical Installation Engineers,2019,33(6):42-48.

[6] 竇益華,張佳強,李國亮,等.基于優(yōu)化BP神經(jīng)網(wǎng)絡的連續(xù)管疲勞壽命預測[J].石油機械,2023,51(10):144-149.

DOU Yihua, ZHANG Jiaqiang, LI Guoliang, et al. Fatigue life prediction of coiled tubing based on optimized BP neural network[J].China Petroleum Machinery,2023,51(10):144-149.

[7] AHN H K, PARK N. DeepRNN-based photovoltaic power short-term forecast using power IoT sensors[J]. Energies,2021,14(2):436.

[8] 宋先知,朱碩,李根生,等.基于BP-LSTM雙輸入網(wǎng)絡的大鉤載荷與轉(zhuǎn)盤扭矩預測[J].中國石油大學學報(自然科學版),2022,46(2):76-84.

SONG Xianzhi, ZHU Shuo, LI Gensheng, et al. Prediction of hook load and rotary drive torque during well-drilling using a BP-LSTM network[J]. Journal of China University of Petroleum (Edition of Natural Science), 2022,46(2):76-84.

[9] JUNG S, MOON J, PARK S, et al. An attention-based multilayer GRU model for multistep-ahead short-term load forecasting[J]. Sensors,2021,21(5):1639.

[10] 譚海旺,楊啟亮,邢建春,等.基于XGBoost-LSTM組合模型的光伏發(fā)電功率預測[J].太陽能學報, 2022,43(8):75-81.

TAN Haiwang, YANG Qiliang, XING Jianchun, et al. PV output prediction based on XGBoost-LSTM combination model[J]. Acta Energiae Solaris Sinica,2022,43(8):75-81.

[11] 邵必林,嚴義川,曾卉玢.注意力機制下的VMD-IDBiGRU負荷預測模型[J].電力系統(tǒng)及其自動化學報,2022,34(10):120-128.

SHAO Bilin, YAN Yichuan, ZENG Huibin. VMD-IDBiGRU load forecasting model under attention mechanism[J]. Proceedings of the CSU-EPSA,2022,34(10):120-128.

[12] 陳嵐,張華琳,汪波,等.基于XGBoost和改進LSTNet的氣溫預測設計[J].無線電工程,2023,53(3):591-600.

CHEN Lan, ZHANG Hualin, WANG Bo, et al. Temperature prediction design based on XGBoost and improved LSTNet[J]. Radio Engineering,2023,53(3):591-600.

[13] 范豆,范錦濤.城市燃氣負荷影響因素及預測方法分析[J].云南化工,2018,45(11):113-114.

FAN Dou, FAN Jintao. Analysis of influencing factors and forecasting methods of city gas load[J].Yunnan Chemical Technology,2018,45(11):113-114.

[14] QIN L, LI W D, LI S J, et al. Effective passenger flow forecasting using STL and ESN based on two improvement strategies[J]. Neurocomputing,2019,356:244-256.

[15] OLIVARES K G, CHALLU C, MARCJASZ G, et al. Neural basis expansion analysis with exogenous variables: forecasting electricity prices with NBEATSx[J]. International Journal of Forecasting,2023,39(2):884-900.

[16] 詹英.組合預測方法在我國人均 GDP 預測中的應用[D]. 武漢:華中師范大學,2014.

ZHAN Ying. Application of combined forecasting method in Chinas per capita GDP forecast[D]. Wuhan:Central China Normal University,2014.

(編輯 沈玉英)

基金項目:國家自然科學基金項目(62072363)

第一作者:邵必林(1965-),男,教授,碩士,博士生導師,研究方向為大數(shù)據(jù)、人工智能、數(shù)據(jù)信息與管理、能源可持續(xù)發(fā)展。E-mail: sblin0462@sina.com。

通信作者:任萌(1999-),女,碩士研究生,研究方向為能源預測、機器學習、數(shù)據(jù)信息與管理。E-mail: rmeng0123@163.com。

引用格式:邵必林,任萌,田寧.基于STL-XGBoost-NBEATSx的小時天然氣負荷預測[J].中國石油大學學報(自然科學版),2024,48(3):170-179.

SHAO Bilin, REN Meng, TIAN Ning. Hourly natural gas load forecast based on ?STL-XGBoost-NBEATSx[J]. Journal of China University of Petroleum (Edition of Natural Science),2024,48(3):170-179.

丰都县| 青岛市| 荥阳市| 昂仁县| 湟源县| 全南县| 大田县| 双江| 鹰潭市| 时尚| 赤城县| 陕西省| 嫩江县| 若羌县| 高青县| 肇庆市| 千阳县| 丹凤县| 彭州市| 雷波县| 雅安市| 蒲江县| 巴中市| 天长市| 台北县| 江北区| 扬州市| 周至县| 博兴县| 柞水县| 宁波市| 定安县| 广宗县| 湖南省| 靖边县| 秦皇岛市| 城口县| 鹿泉市| 海盐县| 渑池县| 长垣县|