摘要:深度學(xué)習(xí)模型憑借其對(duì)水文因素間復(fù)雜作用的優(yōu)秀處理能力,在水文預(yù)報(bào)領(lǐng)域得到了一定的應(yīng)用,然而,針對(duì)集成學(xué)習(xí)與深度學(xué)習(xí)耦合模型的研究仍有所缺失。通過(guò)融合集成學(xué)習(xí)AdaBoost算法與深度學(xué)習(xí)Informer模型,提出了一種組合模型,稱為AdaBoost-Informer模型,以提高洪水徑流預(yù)報(bào)的精度。該模型以歷史雨量和徑流數(shù)據(jù)作為數(shù)據(jù)輸入,將具備長(zhǎng)時(shí)序依賴捕獲能力的Informer作為集成學(xué)習(xí)的弱預(yù)測(cè)器,使用網(wǎng)格搜索法進(jìn)行超參數(shù)調(diào)優(yōu),使用AdaBoost集成學(xué)習(xí)算法對(duì)弱預(yù)測(cè)器進(jìn)行加權(quán)組合得到強(qiáng)預(yù)測(cè)器。在浙江省椒江流域的應(yīng)用分析表明:對(duì)比Random Forest、AdaBoost、Transformer、Informer等模型,AdaBoost-Informer模型表現(xiàn)最佳,RMSE為62.08 m3/s,MAE為23.83 m3/s,NSE為0.980,預(yù)報(bào)合格率為100%。所提模型可有效提高洪水預(yù)報(bào)精度,為防汛搶險(xiǎn)和防洪系統(tǒng)調(diào)度提供決策依據(jù)。
關(guān) 鍵 詞:洪水徑流預(yù)報(bào); 集成學(xué)習(xí); 深度學(xué)習(xí); 組合模型; Informer算法; 椒江流域
中圖法分類號(hào): TP18;P338
文獻(xiàn)標(biāo)志碼: A
DOI:10.16232/j.cnki.1001-4179.2024.09.003
0 引 言
在氣候變化背景下,全球極端降水強(qiáng)度和頻率不斷增加,洪水已成為對(duì)人類生命財(cái)產(chǎn)安全造成威脅的主要自然災(zāi)害之一[1-3]。受自然氣象條件、流域特征和人類活動(dòng)的影響,徑流序列常呈現(xiàn)出非線性、隨機(jī)性等特征[4]。洪水徑流預(yù)報(bào)一直是水文領(lǐng)域重要的研究課題,尋找更精確的徑流預(yù)報(bào)方法是學(xué)者們高度關(guān)注的重點(diǎn)問(wèn)題[5]。
當(dāng)前應(yīng)用廣泛的洪水徑流預(yù)報(bào)模型主要包括過(guò)程驅(qū)動(dòng)模型和數(shù)據(jù)驅(qū)動(dòng)模型[6-7]。過(guò)程驅(qū)動(dòng)模型通過(guò)建立復(fù)雜的數(shù)學(xué)模型和求解高維偏微分方程來(lái)模擬和預(yù)測(cè)徑流過(guò)程,常用的過(guò)程驅(qū)動(dòng)模型包括ARNO模型、新安江模型、TOPMODEL模型等[8-10]。過(guò)程驅(qū)動(dòng)模型的模型參數(shù)通常有嚴(yán)格的物理解釋,但模型參數(shù)選取復(fù)雜與計(jì)算成本過(guò)高的缺點(diǎn)限制了其在徑流預(yù)報(bào)中的應(yīng)用[11]。數(shù)據(jù)驅(qū)動(dòng)模型通常只關(guān)注輸入輸出關(guān)系,而沒(méi)有明確參數(shù)間的因果關(guān)系。隨著數(shù)據(jù)驅(qū)動(dòng)模型的不斷發(fā)展,其可以進(jìn)一步分為統(tǒng)計(jì)模型、機(jī)器學(xué)習(xí)模型和深度學(xué)習(xí)模型。統(tǒng)計(jì)模型使用統(tǒng)計(jì)學(xué)相關(guān)方法根據(jù)歷史徑流觀測(cè)數(shù)據(jù)預(yù)測(cè)未來(lái)徑流,如自回歸移動(dòng)平均模型(ARMA)[12]和自回歸綜合移動(dòng)平均模型(ARIMA)[13-14]。統(tǒng)計(jì)模型的優(yōu)點(diǎn)是可以精準(zhǔn)捕捉歷史數(shù)據(jù)與未來(lái)數(shù)據(jù)的線性關(guān)系,但其無(wú)法準(zhǔn)確描述徑流序列中復(fù)雜的非線性關(guān)系。機(jī)器學(xué)習(xí)模型如人工神經(jīng)網(wǎng)絡(luò)(ANN)、支持向量回歸(SVR)和AdaBoost可以從多個(gè)輸入中提取非線性特征[15-17],解決了非線性序列的擬合問(wèn)題,在實(shí)際生產(chǎn)中得到了廣泛應(yīng)用,但其深層信息提取能力有限,預(yù)測(cè)性能仍有待提升。
近年來(lái),計(jì)算機(jī)技術(shù)與人工智能高速發(fā)展,為了推動(dòng)洪水徑流預(yù)報(bào)方法的改進(jìn)和提升,深度學(xué)習(xí)模型被引入水文預(yù)報(bào)領(lǐng)域。Chen等[18]開(kāi)發(fā)了具備自注意力機(jī)制的長(zhǎng)短時(shí)記憶神經(jīng)網(wǎng)絡(luò)(SA-LSTM)。Zhang等[19]建立了不同輸入變量的LSTM模型與門控循環(huán)單元(GRU)模型進(jìn)行徑流預(yù)測(cè),結(jié)果表明,具有多個(gè)氣象輸入數(shù)據(jù)的模型相較于單獨(dú)的降雨數(shù)據(jù)有更高的預(yù)測(cè)精度。郭玉雪等[20]基于3種遞歸神經(jīng)網(wǎng)絡(luò)(RNN)建立了不同預(yù)報(bào)因子組合和預(yù)見(jiàn)期的徑流預(yù)報(bào)模型,探討了RNN模型在海島地區(qū)短期水文預(yù)報(bào)中的適用性。熊怡等[21]提出了一種基于自適應(yīng)變分模態(tài)分解和LSTM的分解-預(yù)測(cè)-集成月徑流預(yù)測(cè)混合模型,進(jìn)一步提升了金沙江上游石鼓水文站月徑流預(yù)報(bào)精度。吳鑫俊等[22]將CNN模型應(yīng)用于洪水演進(jìn)的預(yù)測(cè)計(jì)算,提高了洪水演進(jìn)的計(jì)算效率。苑希民等[23]提出了一種基于自編碼器(AE)和殘差卷積神經(jīng)網(wǎng)絡(luò)(RCNN)的洪水分級(jí)智能預(yù)報(bào)方法,可有效提取水文數(shù)據(jù)特征,提高洪水預(yù)報(bào)精度。
然而,現(xiàn)有的深度學(xué)習(xí)預(yù)測(cè)模型研究主要集中在模型結(jié)構(gòu)調(diào)整和輸入特征選擇上,耦合集成學(xué)習(xí)算法與深度學(xué)習(xí)算法的研究較少。本文基于AdaBoost集成學(xué)習(xí)模型與Informer深度學(xué)習(xí)模型,提出了一種新的組合模型——AdaBoost-Informer模型,以椒江流域的降雨徑流數(shù)據(jù)為模型輸入,對(duì)Random Forest、AdaBoost、Transformer、Informer和AdaBoost-Informer模型進(jìn)行性能比較,驗(yàn)證所提模型的準(zhǔn)確性與有效性。
1 研究區(qū)域
椒江流域(圖1)地處浙江省東南沿海,是浙江省的第三大河,流域面積約為 6 600 km2。上游主要分為兩大支流,南部正流稱永安溪,發(fā)源于括蒼山脈西部;北部支流稱始豐溪,發(fā)源于大磐山。椒江流域受臺(tái)風(fēng)暴雨影響大,洪澇季節(jié)性強(qiáng)、頻率高。上游主要的兩條支流都發(fā)源于山地,山溪性顯著,大洪水發(fā)生可能性小。本次研究的沙段水文站位于椒靈江上游支流始豐溪,集水面積 1 482 km2,占始豐溪全流域面積約92%。
本次研究收集了椒江流域內(nèi)1985~2019年間,部分年份受臺(tái)風(fēng)影響的7個(gè)測(cè)站的降雨量數(shù)據(jù)與對(duì)應(yīng)時(shí)期的沙段水文站流量數(shù)據(jù)。采用泰森多邊形法獲得面平均降雨量。結(jié)合面平均降雨量與沙段水文站數(shù)據(jù)得到32場(chǎng)臺(tái)風(fēng)洪水的逐時(shí)降雨徑流數(shù)據(jù)。
2 研究方法
2.1 AdaBoost集成學(xué)習(xí)模型
集成學(xué)習(xí)是一種通過(guò)構(gòu)建多個(gè)弱學(xué)習(xí)器,以不同策略組合,提高模型預(yù)測(cè)精度與魯棒性的機(jī)器學(xué)習(xí)方法。常見(jiàn)的集成學(xué)習(xí)方法包括堆疊(Stacking)法、聚合(Bagging)法與提升(Boosting)法。Stacking法先應(yīng)用多個(gè)方法生成訓(xùn)練集,使用弱學(xué)習(xí)器進(jìn)行學(xué)習(xí),再將學(xué)習(xí)器的學(xué)習(xí)結(jié)果作為集成學(xué)習(xí)的訓(xùn)練集,最終獲得集成學(xué)習(xí)模型。Bagging法的弱學(xué)習(xí)器間不存在強(qiáng)依賴關(guān)系,可以并行生成一系列弱學(xué)習(xí)器,對(duì)放回采樣后的若干數(shù)據(jù)集進(jìn)行學(xué)習(xí),最終使用如加權(quán)集成的學(xué)習(xí)策略形成一個(gè)強(qiáng)學(xué)習(xí)器。Boosting法的弱學(xué)習(xí)器間存在強(qiáng)依賴關(guān)系,弱學(xué)習(xí)器間需要串行生成,后一個(gè)弱學(xué)習(xí)器的構(gòu)建需依賴前一個(gè)弱學(xué)習(xí)器的學(xué)習(xí)結(jié)果,在多次的迭代過(guò)程中使得弱學(xué)習(xí)器的學(xué)習(xí)能力變得越來(lái)越強(qiáng),最后把所有弱學(xué)習(xí)器組成為一個(gè)最終的強(qiáng)學(xué)習(xí)器。AdaBoost算法是Freund[24]在Boosting算法上改進(jìn)的、擁有自適應(yīng)增強(qiáng)能力的集成學(xué)習(xí)算法。AdaBoost不僅對(duì)樣本賦予了權(quán)重,在迭代過(guò)程中將重點(diǎn)放在不易預(yù)測(cè)正確的樣本上,對(duì)學(xué)習(xí)器也賦予了權(quán)重,預(yù)測(cè)精度越高的學(xué)習(xí)器被分配的權(quán)重越高,最后依據(jù)加權(quán)方法,將多個(gè)弱學(xué)習(xí)器進(jìn)行組合,形成具有相對(duì)優(yōu)良性能的強(qiáng)學(xué)習(xí)器。AdaBoost能夠有效地緩解過(guò)擬合問(wèn)題,因此可作為一種集成算法框架,用于改進(jìn)其他算法的性能。
2.2 Informer深度學(xué)習(xí)模型
Informer模型是Zhou等[25]在Transformer編碼器-解碼器結(jié)構(gòu)[26]的基礎(chǔ)上改進(jìn)的、適用于長(zhǎng)序列時(shí)間預(yù)測(cè)的深度學(xué)習(xí)模型。Informer在編碼器階段使用了多頭概率稀疏自注意力機(jī)制,取代了傳統(tǒng)的Transfor-mer模型的自注意力機(jī)制,同時(shí)采用自注意力蒸餾方法顯著減少了網(wǎng)絡(luò)的深度,并且提高了層堆疊部分的魯棒性;在解碼器部分采用生成式譯碼方法,只需要一個(gè)前向步驟就可一次性生成全部預(yù)測(cè)序列,有效避免了誤差的累積,極大地提高了解碼的效率,Informer模型示意如圖2所示。
相比被廣泛應(yīng)用于時(shí)序預(yù)測(cè)問(wèn)題的深度學(xué)習(xí)模型(如LSTM模型),Informer模型采用的多頭概率稀疏自注意力機(jī)制能夠更好地捕捉長(zhǎng)距離依賴關(guān)系,解決了梯度消失或梯度爆炸的問(wèn)題,適合處理長(zhǎng)時(shí)序預(yù)測(cè)問(wèn)題,并且Informer模型內(nèi)的自注意力機(jī)制可以并行運(yùn)算,能夠更有效地利用計(jì)算資源,加快訓(xùn)練速度。
2.3 AdaBoost-Informer模型
基于集成學(xué)習(xí)AdaBoost算法改進(jìn)的Informer方法(以下簡(jiǎn)稱AdaBoost-Informer)采用AdaBoost集成學(xué)習(xí)算法順序串聯(lián)訓(xùn)練多個(gè)Informer弱預(yù)測(cè)器,并在每一輪迭代后更新樣本與弱預(yù)測(cè)器權(quán)重,對(duì)預(yù)測(cè)正確的樣本減少關(guān)注,對(duì)預(yù)測(cè)錯(cuò)誤的樣本加大關(guān)注,最后采用加權(quán)組合的方式將多個(gè)弱預(yù)測(cè)器合成強(qiáng)預(yù)測(cè)器,輸出最終的預(yù)測(cè)結(jié)果。AdaBoost-Informer充分融合了AdaBoost自適應(yīng)優(yōu)化提升模型整體性能與Informer處理長(zhǎng)時(shí)間序列預(yù)測(cè)問(wèn)題的優(yōu)勢(shì),從而有效解決了Informer模型超參數(shù)選擇復(fù)雜性與AdaBoost對(duì)異常樣本的敏感性問(wèn)題。
基于集成學(xué)習(xí)AdaBoost算法改進(jìn)的Informer方法(以下簡(jiǎn)稱AdaBoost-Informer)旨在以集成學(xué)習(xí)的方式增強(qiáng)Informer模型的預(yù)測(cè)準(zhǔn)確性與魯棒性。該方法采用AdaBoost集成學(xué)習(xí)算法,串行訓(xùn)練多個(gè)Informer弱預(yù)測(cè)器,并在訓(xùn)練過(guò)程中動(dòng)態(tài)調(diào)整樣本與弱預(yù)測(cè)器權(quán)重,進(jìn)而將弱預(yù)測(cè)器進(jìn)行加權(quán)組合生成強(qiáng)預(yù)測(cè)器,輸出最終的預(yù)測(cè)結(jié)果。AdaBoost-Informer充分融合了AdaBoost深度挖掘算法的潛力與Informer處理長(zhǎng)時(shí)間序列預(yù)測(cè)問(wèn)題的優(yōu)勢(shì),從而解決了Informer模型超參數(shù)選擇復(fù)雜性的問(wèn)題,且改善了AdaBoost對(duì)異常值的敏感性。
AdaBoost-Informer的建模過(guò)程如下:
(1) 每個(gè)樣本都被分配同等重要的權(quán)重。
Dn=1M,n=1,2,…,M
(1)
式中:Dn表示第n個(gè)樣本數(shù)據(jù)的權(quán)重;M表示樣本數(shù)據(jù)的總數(shù)量。
(2) 設(shè)定神經(jīng)網(wǎng)絡(luò)的超參數(shù),并確定Informer弱預(yù)測(cè)器的總數(shù)量為Nn,然后使用Informer模型對(duì)樣本進(jìn)行訓(xùn)練。
(3) 對(duì)于第n個(gè)Informer弱預(yù)測(cè)器,在訓(xùn)練集上計(jì)算其最大誤差,記為
En=maxyi-Gn(xi)
(2)
式中:En表示弱預(yù)測(cè)器在訓(xùn)練集上的最大誤差;yi表示弱預(yù)測(cè)器在訓(xùn)練集上第i個(gè)樣本數(shù)據(jù)的預(yù)測(cè)值;Gn(xi)表示訓(xùn)練集上第i個(gè)樣本數(shù)據(jù)的實(shí)際觀測(cè)值。
(4) 計(jì)算每個(gè)樣本的相對(duì)誤差。
eni=(yi-Gn(xi))2E2n
(3)
式中:eni表示第n個(gè)弱預(yù)測(cè)器的第i個(gè)樣本數(shù)據(jù)的相對(duì)誤差。
(5) 計(jì)算第n個(gè)Informer弱預(yù)測(cè)器的誤差率。
en=Mi=1wnieni
(4)
式中:en表示第n個(gè)弱預(yù)測(cè)器的誤差率;wni表示第n個(gè)弱預(yù)測(cè)器的第i個(gè)樣本數(shù)據(jù)的權(quán)重。
(6) 計(jì)算第n個(gè)Informer弱預(yù)測(cè)器的權(quán)重系數(shù)。
αn=en1-en
(5)
式中:αn為第n個(gè)弱預(yù)測(cè)器的權(quán)重系數(shù)。
(7) 對(duì)第n+1個(gè)弱預(yù)測(cè)器進(jìn)行權(quán)重更新,更新公式如下:
ωn+1,i=ωniZnα1-enin
(6)
其中規(guī)范化因子定義為
Zn=Mi=1ωniα1-enin
(7)
(8) 將多個(gè)弱預(yù)測(cè)器采用取中位數(shù)的結(jié)合方法融合為強(qiáng)預(yù)測(cè)器。
f(x)=Nni=1ln1αng(x)
(8)
式中:g(x)為αnGn(x)的中位數(shù)。
2.4 模型評(píng)價(jià)指標(biāo)
按照GB/T 22482-2008《水文情報(bào)預(yù)報(bào)規(guī)范》(以下簡(jiǎn)稱“預(yù)報(bào)規(guī)范”)要求[27],洪水預(yù)報(bào)評(píng)估選擇的指標(biāo)為洪峰流量預(yù)報(bào)許可誤差、峰現(xiàn)時(shí)間預(yù)報(bào)許可誤差、預(yù)報(bào)合格率以及納什效率系數(shù)(NSE);模型性能評(píng)估選擇均方根誤差RMSE,平均絕對(duì)誤差MAE和納什效率系數(shù)NSE作為代表性指標(biāo),其具體原理如下:
(1) 洪峰流量預(yù)報(bào)許可誤差。洪水預(yù)報(bào)以實(shí)測(cè)洪峰流量的20%作為許可誤差;當(dāng)流量許可誤差小于實(shí)測(cè)值的5%時(shí),取流量實(shí)測(cè)值的5%。
(2) 峰現(xiàn)時(shí)間預(yù)報(bào)許可誤差。根據(jù)預(yù)測(cè)的洪水峰值時(shí)間與實(shí)際觀測(cè)到的洪水峰值時(shí)間之間的時(shí)差,以30%的差異作為誤差的允許范圍。當(dāng)誤差小于3 h或一個(gè)計(jì)算時(shí)段長(zhǎng)度時(shí),則將誤差設(shè)置為3 h或一個(gè)計(jì)算時(shí)段長(zhǎng)度。
(3) 預(yù)報(bào)合格率。一次洪水預(yù)報(bào)的誤差小于許可誤差即為合格預(yù)報(bào)。合格預(yù)報(bào)次數(shù)與總預(yù)報(bào)之比定義為預(yù)報(bào)合格率,計(jì)算公式為
QR=n/m×100%
(9)
式中:n、m分別為合格預(yù)報(bào)場(chǎng)次數(shù)、總預(yù)報(bào)場(chǎng)次數(shù)。
洪水預(yù)報(bào)精度等級(jí)如表1所列。
根據(jù)預(yù)報(bào)規(guī)范對(duì)精度的規(guī)定,當(dāng)一個(gè)預(yù)報(bào)方案包含多個(gè)預(yù)報(bào)項(xiàng)目時(shí),預(yù)報(bào)方案的合格率為各預(yù)報(bào)項(xiàng)目的算數(shù)平均值。預(yù)報(bào)方案精度達(dá)到甲、乙兩個(gè)等級(jí)者,可用于正式預(yù)報(bào);預(yù)報(bào)方案精度達(dá)到丙等級(jí)者只可用于參考性預(yù)報(bào)。
(4) 納什效率系數(shù)。
NSE=1-(Qp,i-Qt,i)2(Qp,i-Q0)2
(10)
(5) 均方根誤差。
RMSE=1M×Mi=1(Qp,i-Qt,i)2
(11)
(6) 平均絕對(duì)誤差。
MAE=1M×Mi=1Qp,i-Qt,i
(12)
式中:M代表總時(shí)間步長(zhǎng)數(shù);Qp,i表示i時(shí)刻的流量預(yù)測(cè)數(shù)據(jù);Qt,i表示i時(shí)刻的流量觀測(cè)數(shù)據(jù);Q0-表示流量預(yù)測(cè)數(shù)據(jù)的平均值。NSE的取值范圍為(-∞,1],當(dāng)NSE=1時(shí),表示方法結(jié)果完美擬合實(shí)測(cè)值;RMSE和MAE的取值范圍為[0,+∞),RMSE和MAE的數(shù)值越大,表示預(yù)測(cè)值與觀測(cè)值的偏差越大,當(dāng)RMSE和MAE等于0時(shí),方法的擬合效果最佳。
2.5 模型輸入及參數(shù)選擇方法
采用自相關(guān)系數(shù)法、偏自相關(guān)系數(shù)法和網(wǎng)格搜索法來(lái)確認(rèn)數(shù)據(jù)輸入格式與模型參數(shù)。自相關(guān)系數(shù)與偏自相關(guān)系數(shù)的計(jì)算公式如下:
acf(k)=ρk=1Nd-k Ndt=k+1(xt-x)(xt-k-x)1NdNdt=1(xt-x)2
(13)
pacf(k)=DkD
(14)
D=1ρ1…ρk-1
ρ11…ρk-2
ρk-1ρk-2…1
(15)
Dk=
1ρ1…ρk-1
ρ11…ρk-2
ρk-1ρk-2…ρk
(16)
式中:Nd為總時(shí)序長(zhǎng)度;k為延遲小時(shí)數(shù);xt為第t小時(shí)的流量;x為流量的平均值。式(13)表示流量序列與其本身經(jīng)過(guò)某些階數(shù)滯后形成的序列之間存在某種程度的相關(guān)性。式(14)表示在剔除中間k-1個(gè)變量的干擾后,xt-k與xt存在某種程度的相關(guān)性。
網(wǎng)格搜索法是參數(shù)值的一種窮舉搜索法,即在指定的參數(shù)范圍內(nèi),按步長(zhǎng)逐個(gè)調(diào)整參數(shù),并利用調(diào)整后的參數(shù)來(lái)訓(xùn)練學(xué)習(xí)器。然后,在驗(yàn)證集上評(píng)估各種參數(shù)組合的性能,找到能夠取得最高精度的參數(shù)組合。
3 結(jié)果分析
3.1 模型構(gòu)建
本研究基于配置為 Intel(R) Core(TM) i9-12900H,NVIDIA GeForce RTX 3060 Laptop GPU和16 GB內(nèi)存的計(jì)算機(jī)進(jìn)行洪水徑流預(yù)報(bào)。Informer算法的參數(shù)設(shè)置如下:迭代次數(shù)為30,注意力多頭數(shù)量為8,編碼層層數(shù)為2,解碼層層數(shù)為2,前饋神經(jīng)網(wǎng)絡(luò)中間層的維度為2 048,Dropout層的丟棄率為0.1,數(shù)據(jù)批量batch size為32,初始學(xué)習(xí)率為0.001,學(xué)習(xí)率衰減方式為階梯式衰減,激活函數(shù)為gelu函數(shù),注意力機(jī)制為多頭概率稀疏自注意力機(jī)制。選取2.4節(jié)介紹的RMSE、MAE、NSE作為算法精度評(píng)價(jià)指標(biāo)。
圖3為流量序列延遲40 h的自相關(guān)系數(shù)與偏自相關(guān)系數(shù)圖。圖3(a)顯示自相關(guān)系數(shù)是一個(gè)逐漸趨于0的拖尾,圖3(b)顯示在延遲15 h后偏自相關(guān)系數(shù)為0,因此延遲小時(shí)數(shù)不超過(guò)15 h,數(shù)據(jù)間的相關(guān)性較強(qiáng),結(jié)合網(wǎng)格搜索法繼續(xù)探究合適的輸入天數(shù)。本研究以步長(zhǎng)為1 h在5~12 h范圍內(nèi)選擇合適的時(shí)長(zhǎng),結(jié)果如表2所列。當(dāng)輸入時(shí)長(zhǎng)Th為6 h 時(shí),Informer獲得最好的性能,NSE最大值為0.977,因此本研究確定輸入小時(shí)數(shù)為6 h。如表3所列,選取編碼器/解碼器輸入中注意力機(jī)制的不同維度dmodel對(duì)洪水流量進(jìn)行預(yù)測(cè),得出當(dāng)dmodel設(shè)置為512時(shí)預(yù)測(cè)精度最高,因此本研究確定dmodel為512。
AdaBoost-Informer模型中弱預(yù)測(cè)器采用Informer模型,參數(shù)設(shè)置參考上文Informer算法。AdaBoost算法須設(shè)置的參數(shù)主要為用于構(gòu)建強(qiáng)預(yù)測(cè)器的Informer算法個(gè)數(shù)。使用網(wǎng)格搜索法對(duì)弱預(yù)測(cè)器個(gè)數(shù)Nw在[2,10]范圍內(nèi)的方法性能進(jìn)行評(píng)估。為了減少深度學(xué)習(xí)模型訓(xùn)練中的隨機(jī)性誤差,對(duì)AdaBoost-Informer進(jìn)行了5次運(yùn)行,然后計(jì)算這5次運(yùn)行的NSE平均值,選擇最佳弱預(yù)測(cè)器個(gè)數(shù)。根據(jù)不同的弱預(yù)測(cè)器個(gè)數(shù),預(yù)測(cè)方法的平均NSE值如表4所列,最終確定本方法選用的最佳弱預(yù)測(cè)器個(gè)數(shù)為9。
為了驗(yàn)證AdaBoost-Informer模型洪水流量的預(yù)測(cè)精度,選取Random Forest(RF)、AdaBoost、Transfor-mer、Informer模型進(jìn)行對(duì)比評(píng)估。RF、AdaBoost、Transformer的輸入均為6 h的流量、面雨量數(shù)據(jù),輸出為1 h的流量。RF的參數(shù)設(shè)置如下:決策樹(shù)個(gè)數(shù)Nt為10個(gè),決策樹(shù)最大深度為3。AdaBoost的基學(xué)習(xí)器數(shù)量為10個(gè),決策樹(shù)最大深度為3。為便于比較,Transformer模型參數(shù)設(shè)置參考Informer模型:迭代次數(shù)為30,編碼器/解碼器輸入中注意力機(jī)制的維度dmodel為512,注意力多頭數(shù)量為8,編碼層層數(shù)為2,解碼層層數(shù)為2,前饋神經(jīng)網(wǎng)絡(luò)中間層的維度為2 048,Dropout層的丟棄率為0.1,數(shù)據(jù)批量batch size為32,初始學(xué)習(xí)率為0.001,學(xué)習(xí)率衰減方式為階梯式衰減,激活函數(shù)為gelu函數(shù),注意力機(jī)制為全局自注意力機(jī)制。
3.2 洪水預(yù)報(bào)結(jié)果分析
不同預(yù)報(bào)模型對(duì)測(cè)試集中臺(tái)風(fēng)編號(hào)為1509,名稱為Chan-hom的臺(tái)風(fēng)洪水模擬效果對(duì)比如圖4所示。RF模型、AdaBoost模型模擬流量與實(shí)測(cè)流量的趨勢(shì)擬合度與其他3種模型相比較低。在部分時(shí)間跨度內(nèi),流量曲線呈現(xiàn)線性變化的趨勢(shì),而在局部時(shí)間范圍內(nèi),模擬流量甚至維持不變,由此造成對(duì)峰值的預(yù)測(cè)效果無(wú)法達(dá)到令人滿意的水平。Transformer模型、Informer模型具有良好的計(jì)算精度,能更好地反映流量的時(shí)序變化趨勢(shì),且對(duì)峰值的擬合效果較好,可以有效捕捉流量序列極值點(diǎn)的信息,模擬流量趨勢(shì)基本與實(shí)測(cè)流量相符合,但對(duì)峰值預(yù)測(cè)有滯后。AdaBoost-Informer模型對(duì)變化趨勢(shì)與峰值的擬合效果比Informer模型更好,散點(diǎn)圖距離標(biāo)準(zhǔn)線也更為緊密。AdaBoost-Informer模型的流量預(yù)測(cè)性能顯著優(yōu)于其他傳統(tǒng)集成學(xué)習(xí)與深度學(xué)習(xí)的方法,原因是AdaBoost-Informer模型將Ada-Boost算法對(duì)大誤差數(shù)據(jù)的校正學(xué)習(xí)能力與Informer模型對(duì)復(fù)雜長(zhǎng)序列非線性時(shí)序數(shù)據(jù)的優(yōu)秀處理能力相結(jié)合,對(duì)未被預(yù)測(cè)精確的樣本學(xué)習(xí)能力更強(qiáng)。
不同預(yù)報(bào)模型的性能、合格率如表5~6所列,測(cè)試集代表洪水預(yù)報(bào)精度結(jié)果如表7所列。由表5可知,在經(jīng)由AdaBoost集成算法改進(jìn)后,Informer方法的精度顯著提升,RMSE從68.03 m3/s降低至62.08 m3/s,性能提升了8.5%,MAE從24.24 m3/s降至23.83 m3/s,性能提升了1.7%,NSE從0.975提升至0.980,性能提升了05%,驗(yàn)證了AdaBoost-Informer模型的優(yōu)越性。由表6可知,測(cè)試集預(yù)報(bào)洪水場(chǎng)次共12場(chǎng),RF、AdaBoost、Transformer、Informer、AdaBoost-Informer模型合格洪水場(chǎng)次分別為10,8,11,11,12場(chǎng),合格率分別為83.3%,66.7%,91.6%,916%,100.0%,預(yù)報(bào)精度分別為乙級(jí)、丙級(jí)、甲級(jí)、甲級(jí)、甲級(jí)。由表7可知,在3場(chǎng)代表洪水中,AdaBoost-Informer模型相比于Informer模型,既提升了NSE,又改善了洪峰流量和峰現(xiàn)時(shí)間的預(yù)報(bào)效果。綜上所述,無(wú)論是在預(yù)測(cè)性能方面還是穩(wěn)定性方面,AdaBoost-Informer模型均優(yōu)于4種基準(zhǔn)對(duì)比方法。
4 結(jié) 論
本文提出一種新的深度學(xué)習(xí)洪水預(yù)報(bào)模型,通過(guò)將集成學(xué)習(xí)算法 AdaBoost 方法與深度學(xué)習(xí)算法 Informer 方法組合,構(gòu)建了預(yù)測(cè)精度更高、擬合效果更佳的 AdaBoost-Informer 模型。并以RF、AdaBoost、Transformer、Informer模型為基準(zhǔn)模型,以椒江流域?yàn)檠芯繉?duì)象,從洪水徑流預(yù)報(bào)性能的方面分析了所提模型的有效性與優(yōu)越性。結(jié)論如下:
(1) 對(duì)比AdaBoost-Informer模型和RF、AdaBoost、Transformer、Informer模型,AdaBoost-Informer模型的各項(xiàng)評(píng)價(jià)指標(biāo)均為最優(yōu),其測(cè)試集的RMSE為62.08m3/s,MAE為23.83 m3/s,NSE為0.980。
(2) 與其他模型相比,AdaBoost-Informer模型對(duì)流量變化趨勢(shì)與峰值的擬合效果最好,在整體趨勢(shì)與局部細(xì)節(jié)預(yù)測(cè)上均表現(xiàn)優(yōu)異。
(3) 與其他模型相比,AdaBoost-Informer模型的預(yù)報(bào)方案精度等級(jí)為最佳,合格率最高,對(duì)部分代表洪水有最佳的洪峰流量與峰現(xiàn)時(shí)間的預(yù)報(bào)效果。
后續(xù)研究可集中于模型超參數(shù)智能優(yōu)化算法的開(kāi)發(fā),并可探究深度學(xué)習(xí)模型在洪水預(yù)報(bào)應(yīng)用場(chǎng)景下的損失函數(shù)選擇,使得洪水預(yù)報(bào)模型不僅關(guān)注全局性能,也可捕捉局部細(xì)節(jié)。
參考文獻(xiàn):
[1] 蔣云鐘,冶運(yùn)濤,趙紅莉,等.水利大數(shù)據(jù)研究現(xiàn)狀與展望[J].水力發(fā)電學(xué)報(bào),2020,39(10):1-32.
[2] 戴紅梅,孫維紅.氣候變化與人類活動(dòng)雙重驅(qū)動(dòng)下小河流域水沙變化特征研究[J].水利水電快報(bào),2023,44(9):20-28.
[3] 尹家波,郭生練,顧磊,等.中國(guó)極端降水對(duì)氣候變化的熱力學(xué)響應(yīng)機(jī)理及洪水效應(yīng)[J].科學(xué)通報(bào),2021,66(33):4315-4325.
[4] WANG W C,CHAU K W,CHENG C T,et al.A comparison of performance of several artificial intelligence methods for forecasting monthly discharge time series[J].Journal of Hydrology,2009,374(3/4):294-306.
[5] YUAN X,CHEN C,LEI X,et al.Monthly runoff forecasting based on LSTM-ALO model[J].Stochastic Environmental Research and Risk Assessment,2018,32:2199-2212.
[6] KRATZERT F,KLOTZ D,BRENNER C,et al.Rainfall-runoff modelling using long short-term memory(LSTM) networks[J].Hydrology and Earth System Sciences,2018,22(11):6005-6022.
[7] YOUNG C C,LIU W C.Prediction and modelling of rainfall-runoff during typhoon events using a physically-based and artificial neural network hybrid model[J].Hydrological Sciences Journal,2015,60(12):2102-2116.
[8] TODINI E.The ARNO rainfall-runoff model[J].Journal of Hydrology,1996,175(1-4):339-382.
[9] JIANG C K,ZHANG S L,XIE Y D.Constrained shuffled complex evolution algorithm and its application in the automatic calibration of Xinanjiang model[J].Frontiers in Earth Science,2023,10:1037173.
[10]BEVEN K J,KIRKBY M J,SCHOFIELD N,et al.Testing a physically-based flood forecasting model(TOPMODEL) for three UK catchments[J].Journal of Hydrology,1984,69(1/4):119-143.
[11]梁忠民,戴榮,李彬權(quán).基于貝葉斯理論的水文不確定性分析研究進(jìn)展[J].水科學(xué)進(jìn)展,2010,21(2):274-281.
[12]馬金鳳,楊廣.基于自回歸滑動(dòng)平均模型的瑪納斯河洪水預(yù)報(bào)[J].石河子大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,28(2):242-245.
[13]MONTANARI A,ROSSO R,TAQQU M S.Fractionally differenced ARIMA models applied to hydrologic time series:identification,estimation,and simulation[J].Water Resources Research,1997,33(5):1035-1044.
[14]VALIPOUR M.Long-term runoff study using SARIMA and ARIMA models in the United States[J].Meteorological Applications,2015,22(3):592-598.
[15]YU X,ZHANG X,QIN H.A data-driven model based on Fourier transform and support vector regression for monthly reservoir inflow forecasting[J].Journal of Hydro-environment Research,2018,18:12-24.
[16]WU C L,CHAU K W,LI Y S.Predicting monthly streamflow using data-driven models coupled with data-preprocessing techniques[J].Water Resources Research,2009,45(8):W08432.
[17]LIU S,XU J,ZHAO J,et al.Efficiency enhancement of a process-based rainfall-runoff model using a new modified AdaBoost.RT technique[J].Applied Soft Computing,2014,23:521-529.
[18]CHEN X,HUANG J,HAN Z,et al.The importance of short lag-time in the runoff forecasting model based on long short-term memory[J].Journal of Hydrology,2020,589:125359.
[19]ZHANG J,CHEN X,KHAN A,et al.Daily runoff forecasting by deep recursive neural network[J].Journal of Hydrology,2021,596:126067.
[20]郭玉雪,許月萍,陳浩,等.基于多種遞歸神經(jīng)網(wǎng)絡(luò)的海島水庫(kù)徑流預(yù)報(bào)[J].水力發(fā)電學(xué)報(bào),2021,40(9):14-26.
[21]熊怡,周建中,孫娜,等.基于自適應(yīng)變分模態(tài)分解和長(zhǎng)短期記憶網(wǎng)絡(luò)的月徑流預(yù)報(bào)[J].水利學(xué)報(bào),2023,54(2):172-183,198.
[22]吳鑫俊,趙曉東,丁茜,等.基于數(shù)據(jù)驅(qū)動(dòng)的CNN洪水演進(jìn)預(yù)測(cè)方法[J].水力發(fā)電學(xué)報(bào),2021,40(5):79-86.
[23]苑希民,李達(dá),田福昌,等.基于AE-RCNN的洪水分級(jí)智能預(yù)報(bào)方法研究[J].水利學(xué)報(bào),2023,54(9):1070-1079.
[24]FREUND Y.Boosting a weak learning algorithm by majority[J].Information and Computation,1995,121(2):256-285.
[25]ZHOU H,ZHANG S,PENG J,et al.Informer:beyond efficient transformer for long sequence time-series forecasting[C]∥Proceedings of the AAAI Conference on Artificial Intelligence,2021,35(12):11106-11115.
[26]VASWANI A,SHAZEER N,PARMAR N,et al.Attention is all you need[C]∥Advances in Neural Information Processing Systems,2017,30:5998-6008.
[27]中華人民共和國(guó)國(guó)家質(zhì)量監(jiān)督檢驗(yàn)檢疫總局,中國(guó)國(guó)家標(biāo)準(zhǔn)化管理委員會(huì).水文情報(bào)預(yù)報(bào)規(guī)范:GB/T 22482-2008[S].北京:中國(guó)標(biāo)準(zhǔn)出版社,2008.
(編輯:郭甜甜)
Research on flood runoff forecasting based on ensemble learning and deep learning
XU Yueping1,ZHOU Xinlei 1,WANG Ruotong2,LIU Li1,GU Haiting1
(1.Institute of Water Science and Engineering,Zhejiang University,Hangzhou 310058,China; 2.College of Civil Engineering,Zhejiang University of Technology,Hangzhou 310023,China)
Abstract:
Deep learning models have demonstrated exceptional capabilities in managing the intricate interactions among hydrological factors,leading to their adoption in hydrological forecasting.Nonetheless,there remains a gap in researches on the integration of ensemble learning with deep learning models.This study introduced a novel combined model,termed AdaBoost-Informer model,which integrates the AdaBoost algorithm with the Informer deep learning model to enhance flood runoff forecasting accuracy.The model utilizes historical precipitation and runoff data as input,with the Informer model,known for its proficiency in capturing long-term dependencies,serving as the weak learner within the ensemble framework.Hyperparameters are optimized using grid search,and AdaBoost is employed to weight and aggregate the weak learners into a robust predictor.Evaluation in the Jiaojiang River Basin in Zhejiang Province revealed that the AdaBoost-Informer model outperforms other models such as Random Forest,AdaBoost,Transformer,and Informer,achieving an RMSE of 62.08 m3/s,an MAE of 23.83 m3/s,an NSE of 0.980,and a forecasting success rate of 100%.This model can significantly enhance the precision of flood forecasts and offer a valuable basis for decision-making in flood prevention and emergency management.
Key words:
flood runoff forecasting; ensemble learning; deep learning; combining model; Informer algorithm; Jiaojiang River Basin