?

基于ASWPD-BO-GRU的月徑流量預測模型

2023-09-11 07:49唐銘澤楊銀科張菁雯
水資源與水工程學報 2023年4期
關鍵詞:波包徑流量徑流

唐銘澤, 楊銀科, 張菁雯

(長安大學 水利與環境學院 旱區地下水文與生態效應教育部重點實驗室, 陜西 西安 710054)

1 研究背景

準確有效的徑流預測對區域水資源水量安全評價、水資源的科學配置以及防洪減災決策等均具有重要的意義。然而,受全球氣候變化及高強度人類活動等因素的綜合影響,徑流時間序列呈現出復雜的非線性、非平穩性特征,使徑流預測難度加大[1]。因此,探索高精度且可靠的徑流預測模型成為現階段徑流預測領域亟需解決的現實問題。

目前常用的徑流預測模型有過程驅動模型、數理統計模型和神經網絡模型等。相比于過程驅動模型和數理統計模型,神經網絡模型因其具有良好的非線性映射能力[2]、無需考慮水文過程的物理機制且能適應復雜時間序列數據,在解決徑流預測方面有獨到的優勢[3-4]。

門控循環單元(gated recurrent unit,GRU)為神經網絡中深度學習的代表技術之一,其對長短期記憶神經網絡(long short-term memory,LSTM)模型的結構進行了改進,在保證預測精度的同時還擁有了更快的收斂速度[5-6]。然而,GRU的性能在很大程度上受模型超參數設置的影響,且由于原始徑流時間序列具有一定的趨勢性、周期性和隨機性特征[7],使用單一模型進行徑流預測會導致GRU的性能不能充分發揮和無法充分捕捉原始徑流時間序列中的重要信息,在許多領域中對時間序列進行預測時也都面臨著此類問題。在以往的研究中,通常有兩種方法來提高GRU的預測精度:(1)使用優化算法優化模型超參數。如:使用粒子群算法、黏菌算法、布谷鳥搜索算法、麻雀優化算法、貝葉斯優化等優化算法確定模型的最優超參數[8-12]。其中貝葉斯優化(Bayesian optimization,BO)作為一種新興的超參數優化方法,能夠以較少的迭代次數獲得滿意的優化結果,比網格搜索和隨機搜索方法更有效[13];(2)使用數據分解技術與GRU構建分解集成模型。常用的數據分解技術有小波分解、經驗模態分解、總體經驗模態分解和小波包分解等[14-16]。這些技術可以將具有多種規律特征的原始時間序列分解為一組相對平穩且簡單的子序列,從而降低模型的預測難度。其中小波包分解(wavelet packet decomposition,WPD)具有可以人為選擇分解層數和分解使用的小波函數等優點,并且能夠同時對信號的低頻和高頻部分進行分解[17-18],進而提升了預測模型的精度。

正確建立分解集成模型是進行徑流預測的前提,目前很多研究直接對原始徑流時間序列整體使用數據分解技術,這種分解策略會導致分解子序列中每一個時間節點上的數據都包含了來自未來不可獲取的數據信息[19-21],從而產生數據泄露問題。所以直接對整個原始徑流時間序列使用數據分解技術是不現實的,難以滿足實際預測需求。為了解決這一問題,熊怡等[22]設計了一種自適應動態分解策略(self-adaptation decomposition strategy,AS),這種策略是利用觀測數據來更新歷史樣本,在數據分解中避免了引入未來信息,并提升了徑流預測的精度。

綜上所述,基于目前徑流預測中存在的問題,本文首先采用AS策略對原始月徑流量時間序列進行WPD分解,稱為自適應小波包分解(self-adaptation strategy wavelet packet decomposition,ASWPD)。在不使用未來數據的前提下,充分提取原始月徑流量時間序列中的數據特征,以降低預測難度。然后使用BO對GRU進行超參數優化,提出并建立了基于ASWPD-BO-GRU的月徑流量預測模型。以黑河流域鶯落峽水文站月徑流量預測為實例(預見期為1個月)進行模型應用研究,以期為月徑流量預測提供一條新思路。

2 數據來源與研究方法

2.1 研究區概況

鶯落峽水文站位于甘肅省張掖市甘州區龍渠鄉,集水面積為10 009 km2,多年平均徑流量為49.225 9 m3/s,徑流年內分配十分不均[23]。鶯落峽水文站作為黑河上游祁連山出山徑流的主控水文站,其徑流量的多少直接影響著黑河流域經濟社會的發展和生態環境的保護。

2.2 數據來源

本文的月徑流量數據來源于國家冰川凍土沙漠科學數據中心 (http://www.ncdc.ac.cn) 提供的黑河流域鶯落峽水文站逐月逐年徑流資料數據集[24]。從中選取鶯落峽水文站1964年1月—2016年12月(共636個月)的月徑流量數據作為研究對象,將1964年1月—2006年12月(共516個月)的月徑流量數據劃分為模型訓練集,將2007年1月—2016年12月(共120個月)的月徑流量數據劃分為模型測試集。

2.3 研究方法

2.3.1 小波包分解(WPD) WPD是在小波分解(wavelet decomposition,WD)的基礎上產生并得以發展的,與WD不同的是,WPD在分解信號低頻部分的同時,也對高頻部分繼續分解,并且能夠根據信號特征和分析需求,自適應選取對應的頻帶來匹配信號的頻譜,從而具有更廣泛的應用價值。WPD算法公式如下[17,25-26]:

(1)

式中:dlj,2n、dlj,2n+1為小波包系數;j為尺度參數,j∈{i,i-1,…,1};l、k為平移參數;n為頻率參數,n∈{2j-1,2j-2,…,0};hk-2l、gk-2l分別為小波包分解中的低通、高通濾波器組。

重建算法為:

(2)

2.3.2 自適應小波包分解(ASWPD) 本文提出的自適應小波包分解(ASWPD)的機理是利用AS策略對原始月徑流量時間序列進行WPD分解。其中,AS在分解過程中避免了引入未來信息,只要增加新息,分解進程就會自適應調整。AS的具體操作細節見參考文獻[22]。因此,ASWPD能在不引入未來信息的前提下發揮小波包分解提取信號中有效信息的能力。ASWPD的具體分解步驟如圖1所示。

圖1 自適應小波包分解(ASWPD)的分解步驟示意圖

設原始月徑流量時間序列為Qt,t=1,2,…,N。

Step 1:對小波包分解算法的分解層數k和母小波函數進行設定;

Step 2:對分解序列的起始長度m進行設定,隨著新息的依次添加,待分解序列始終以m+1個長度滾動分解;

Step 4:經過不斷的滾動分解,最終得到2k個子序列,記作{XSi,j}2k×(N-m),用該組子序列進行GRU預測并重構。

2.3.3 貝葉斯優化(BO) BO是一種全局優化算法,適合解決多維、未知的復雜優化問題,能夠有效地對神經網絡超參數進行尋優處理,從而提高時間序列的預測精度。與隨機搜索及網格搜索相比較,BO能更加有效地解決優化問題[13]。BO的具體計算公式和細節見參考文獻[27]。另外,本文選用高斯過程和期望改進(EI)函數作為概率代理模型和采集函數。

2.3.4 門控循環單元(GRU) GRU是LSTM的變體,由更新門和重置門兩個門結構組成。相比于LSTM,GRU簡化了模型結構,訓練速度更快,且保持了LSTM的預測效果。GRU的一個單元結構如圖2所示。GRU的具體計算公式和細節見參考文獻[12]。

圖2 門控循環單元(GRU)結構

2.3.5 預測模型構建流程

Step 1:利用ASWPD進行原始月徑流量時間序列分解。首先設置WPD的分解層數k和母小波函數以及待分解序列起始長度m,然后對原始月徑流量時間序列進行ASWPD分解。得到2k個分解子序列,再將各個分解子序列進行訓練期、測試期劃分,用于模型建模和測試;

Step 2:數據預處理。為了提升模型的收斂速度,需要對分解子序列數據進行標準化處理。計算公式為:

(3)

式中:xnorm為標準化后的數據;μtr為分解子序列中訓練期數據的均值,108m3;σtr為分解子序列中訓練期數據的標準差,108m3。

Step 3:確定每個分解子序列GRU模型的輸入、輸出變量。對各分解子序列訓練期數據使用偏自相關函數(partial autocorrelation function,PACF)確定GRU模型的輸入變量,輸入變量的選取準則為[28]:(1)選擇超出置信區間的PACF值對應的滯時變量作為輸入;(2)如果存在每個滯時變量對應的PACF值均在置信區間以外的情況,則選擇幾個滯時小的變量作為輸入。當確定了輸入變量,若xt-i為輸入變量,則xt即為輸出變量。

Step 4:利用BO確定各個分解子序列GRU模型的超參數。GRU模型對超參數的選擇非常敏感,選擇不當會在很大程度上影響GRU的性能,甚至會引起模型過擬合問題;如,GRU隱藏層的層數和每層神經元的數量決定了GRU模型的結構;學習率體現了每次參數更新的幅度大小;L2正則化參數決定了模型的抗過擬合能力;最大訓練回合表征模型是否學習充分。因此,設置BO的最大迭代次數,并設置目標函數為訓練完成的GRU在訓練集上的均方誤差,對各個分解子序列的GRU模型采用BO對上述5個超參數進行尋優。利用目標函數構建的優化問題如下:

(4)

Step 5:對各個分解子序列進行預測并疊加重構得到月徑流量預測結果。采用篩選得到的各分解子序列的輸入、輸出變量和GRU模型超參數分別構建預測模型進行預測,將預測結果反標準化后進行疊加重構得到最終月徑流量預測結果。反標準化計算公式為:

xdenorm=xσtr+μtr

(5)

式中:xdenorm為反標準化后的數據,108m3;μtr為分解子序列中訓練期數據的均值,108m3;σtr為分解子序列中訓練期數據的標準差,108m3。

Step 6:模型評價。選取納什效率系數(NSE)、平均絕對百分比誤差(MAPE)、平均絕對誤差(MAE)、均方根誤差(RMSE)對模型預測結果進行評價。具體計算公式見文獻[29]、[30]。

3 結果與分析

3.1 月徑流量序列分解結果

對鶯落峽水文站1964年1月—2016年12月的徑流量數據采用ASWPD進行分解,根據模型訓練期預測結果,設置ASWPD中待分解序列起始長度m為24,分解層數k為2,母小波函數為db4小波基函數,將原始月徑流量時間序列分解為M1、M2、M3、M4共4個子序列。分解結果如圖3所示。

圖3 原始月徑流量時間序列ASWPD分解圖(1964-01—2016-12)

3.2 模型輸入變量選擇

對分解子序列M1、M2、M3、M4的訓練期數據依次使用PACF并遵循上述提到的準則進行GRU模型輸入、輸出變量的確定。各分解子序列的PACF值如圖4所示,最終各分解子序列GRU模型的輸入、輸出變量選擇見表1。

表1 各子序列輸入、輸出變量

圖4 各分解子序列PACF值

3.3 模型參數設置

GRU模型在對各分解子序列的訓練過程中,優化器選擇Adam算法;設置batchsize為32;設置Dropout為0.5,用于改善模型過擬合問題;設置BO的最大迭代次數為100;設置BO優化GRU模型超參數時隱藏層層數、每層神經元數量、學習率、L2正則化參數、最大訓練回合數的尋優范圍分別為[1,4]、[1,200]、[10-2,1]、[10-10,10-2]、[1,150],各分解子序列經BO尋優得到的超參數如表2所示。

表2 各子序列GRU模型最優超參數

3.4 預測結果及分析

為驗證本文提出并建立的ASWPD-BO-GRU模型的預測效果,同時建立了GRU模型、BO-GRU模型、WPD-BO-GRU模型(基于傳統分解思想對原始月徑流量時間序列整體進行分解的預測模型)共3種對比模型,通過前文2.3.5節選取的4個評價指標對各模型預測結果進行評價。為在相同條件下進行對比驗證,對3種對比模型均使用標準化處理數據并用PACF確定模型的輸入、輸出變量。對GRU模型通過人工經驗確定模型的超參數;對BO-GRU模型設置BO算法的最大迭代次數為100,由于ASWPD-BO-GRU模型中BO算法對超參數的尋優范圍已足夠廣泛,所以對BO-GRU模型5個超參數尋優范圍的設置與ASWPD-BO-GRU模型相同;對WPD-BO-GRU模型進行3層WPD分解,母小波函數為db4小波基函數,保證原始月徑流量時間序列特征能被充分提取,BO參數設置同上。

不同模型在測試期(2007年1月—2016年12月)對鶯落峽水文站月徑流量的預測結果見圖5,各評價指標的計算結果見表3。

表3 鶯落峽水文站月徑流量不同預測模型評價指標計算結果

由圖5可以看出,在測試期GRU、BO-GRU、ASWPD-BO-GRU、WPD-BO-GRU 4種模型對原始月徑流量時間序列的擬合效果依次逐漸提高。其中,單一GRU模型的擬合效果最差,特別在原始月徑流量時間序列的峰值和谷值處誤差極大,預測效果不佳;BO-GRU模型與原始月徑流量時間序列的波動趨勢基本接近,相比于單一GRU模型,大幅減小了預測的峰值、谷值誤差;ASWPD-BO-GRU模型相比于BO-GRU模型,對原始月徑流量時間序列波動趨勢的接近程度更好,尤其減少了預測的峰值誤差,有效提升了擬合精度;WPD-BO-GRU模型相比于其他3種模型,與原始月徑流量時間序列的波動趨勢最為接近,預測的峰值、谷值誤差也最小,對原始月徑流量時間序列的擬合精度最高。

分析表3可以得出:GRU模型測試期的MAPE、MAE、RMSE分別為46.51%、0.56×108m3、0.80×108m3,相比于訓練期分別增加了33.08%、51.35%、42.86%,GRU模型測試期的NSE為0.65,相比于訓練期減少了15.58%,說明GRU模型出現了一定程度的過擬合問題;BO-GRU模型測試期的MAPE、MAE、RMSE相比于GRU模型分別減少了51.82%、37.50%、30.00%,NSE相比于GRU模型提升了27.69%,與GRU模型相比,BO-GRU模型4個評價指標的訓練期與測試期差距也大幅減小;ASWPD-BO-GRU模型測試期的MAPE、MAE、RMSE相比于BO-GRU模型分別減少了18.03%、20.00%、19.64%,NSE相比于BO-GRU模型提升了7.23%;WPD-BO-GRU模型測試期的MAPE、MAE、RMSE相比于ASWPD-BO-GRU模型分別減少了44.2%、67.5%、73.33%,NSE相比于ASWPD-BO-GRU模型提升了11.24%。

上述預測結果與分析表明,BO-GRU模型的預測精度要遠高于GRU模型,并且還在一定程度上抑制了單一GRU模型的過擬合問題,提升了泛化能力和預測性能。ASWPD-BO-GRU模型的預測精度要遠高于BO-GRU模型,說明ASWPD在數據分解過程中雖然沒有使用未來數據信息,但仍能提升模型的預測精度。WPD-BO-GRU模型的預測精度最高,但由于WPD-BO-GRU模型在對原始月徑流量時間序列分解時引入了未來數據信息,發生了數據泄露問題,所以才產生了虛高的預測結果,因而無法在實際中應用。而本文提出的ASWPD-BO-GRU模型是在正確分解的基礎上建立的,不會發生數據泄露問題,并且NSE接近0.9,說明該模型具有較高的預測精度,相比于其他3個預測模型能更好地應用于實際中。

4 討 論

本文對鶯落峽水文站月徑流量的預測結果表明,ASWPD-BO-GRU模型與原始月徑流量時間序列的擬合程度較好,在預測精度或實際應用方面優于其他3個對比模型。主要的原因為:

(1)本文利用BO對L2正則化參數進行了尋優,保證了GRU在訓練集上的均方根誤差盡量小的同時防止了模型復雜度過高,在一定程度上抑制了過擬合問題,提升了模型泛化能力;

(2)GRU模型的最優超參數有時不在人工經驗選擇超參數的范圍之內,因而無法通過人工經驗進行最優的超參數選擇。應用具有良好的全局搜索能力的BO來優化GRU模型的超參數能在一定程度上打破人工經驗選擇超參數的局限性,從而更準確地對模型超參數進行選擇,BO優秀的尋優能力在其他學者的相關研究中也得到了印證[12,31];

(3)對原始月徑流量時間序列整體使用WPD分解技術的傳統方法雖然能大幅降低原始月徑流量時間序列的非線性和預測難度,提升預測的精度,但該方法在分解過程中使用了未來數據,所以無法在實際中使用。應用ASWPD分解技術能夠在不使用未來數據的前提下還能有效地提取原始月徑流量時間序列中復雜的有效信息,從而降低預測難度并提升預測精度。因此,本文提出的ASWPD-BO-GRU模型在實際應用中相比于其他3種對比模型的泛化能力更強,具有較高的預測精度和穩定性,能夠很大程度彌補單一模型的缺點,并且解決了傳統分解集成模型錯誤使用未來數據的問題,所以可將ASWPD-BO-GRU模型應用于實際月徑流量的預測。

此外,由于ASWPD中待分解序列起始長度、分解層數和母小波函數的選擇對ASWPD的分解效果影響很大,而本文是通過模型訓練期預測結果進行試錯確定的,因此可在下一步研究中考慮通過優化算法對上述參數進行尋優以進一步提高分解效果和預測精度。

5 結 論

本文構建了基于ASWPD-BO-GRU的月徑流量預測模型,通過對鶯落峽水文站月徑流量預測的實例分析,得出以下主要結論:

(1)利用BO優化GRU模型的超參數(隱藏層層數、每層神經元數量、學習率、L2正則化參數、最大訓練回合數),能在一定程度上打破人工經驗選擇超參數的局限性和抑制單一GRU模型的過擬合問題,從而能更準確地對模型超參數進行選擇并提升模型的泛化能力。

(2)ASWPD能在不使用未來數據的前提下將原始月徑流量時間序列分解為相對規律的子序列,可以減弱各種外界因素對月徑流量時間序列的影響,降低徑流預測的難度。

(3)基于傳統分解集成模型思想的WPD-BO-GRU模型會造成“虛假”的高精度預測結果,無法在現實中應用。ASWPD-BO-GRU模型可解決傳統分解集成模型錯誤使用未來數據的問題,并且在實例應用中納什效率系數(NSE)接近0.9,各項評價指標也優于BO-GRU模型和GRU模型,具有較高的預測精度,說明將ASWPD-BO-GRU模型用于月徑流量預測是可行的。

猜你喜歡
波包徑流量徑流
基于小波包Tsallis熵和RVM的模擬電路故障診斷
水文比擬法在計算河川徑流量時的修正
Topmodel在布哈河流域徑流模擬中的應用
基于小波包變換的電力系統諧波分析
小波包理論與圖像小波包分解
探秘“大徑流”
攻克“大徑流”
SCS模型在紅壤土坡地降雨徑流量估算中的應用
基于小波包的全信息解調方法及其應用
資江流域徑流量演變規律研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合