SI Qi', JIN Baoming1*,LU Wangming2, CHEN Zhaoqingl (1.ColegeofCiviEineinguzouUvesityuzo8,Ca;2.aningFlooddroughtisastereveiote Nanping , China)
Abstract:ThePoak-Ribiereconjugategradientbackpropagationalgorithm(PRBP)ofnumericaloptimizationtechnologywasused, and21rainstormandfloodprocessesfrom1997to2O2 intheupperreachesofChongyangRiverbasinwerestudied.Therainfal volumeofsixrainfalltationsintheupperreachesofChongyangRiverbasinandthepreviousdischargeof Wuyishan Hydrological Stationwereregardedasinput,anditscorespondingdischargewasregardedasoutput;thenumberofhiddenlayerunitswas determinedbytrialcalculation,andthenPRBPneuralnetworkfloodforecastingmodelofChongyangxiRiver Basinwasestablished. Theremainingeightfloodswereusedtotestandvalidatethemodel.TheresultsshowthatcomparedwiththatoftheconventionalBP neuralnetworkodel,tonergencespdofeodelissterndthalculationspeedisviouslyiproed;thteistic coefficient of the model is greater than O.87,and the relative error of peak flowof six floods is within 10% . The forecasting accuracy meets the requirements,which can provide a basis forthe flood control department to forecast the flood.
Keywords:PR conjugate gradient method; BP neural network; flood forecasting; Chongyang River Basin
山區流域洪水往往具有破壞性強、預見期短、預報難度大的特點。目前,國內山區流域洪水預報研究引入機器學習及多源數據融合,開展預警預報工作,但受數據質量和流域復雜因素影響,仍面臨挑戰[1]。搞好山區流域洪水預報,是提高流域防洪減災水平的關鍵。在采用傳統預報方法的基礎上,可利用BP(Backpropagation)神經網絡進行洪水預報,人工神經網絡是模擬生物神經網絡的計算模型,可完成常規方法無法實現的目標[2]。上個世紀九十年代開始,BP神經網絡比較普遍應用于水文預報中。劉易文等建立了BP-PLSR神經網絡流量預報模型,胡健偉等4構建了BP神經網絡洪水預報模型,模型預報精度均較高。因此BP神經網絡應用于流域洪水預報的效果較好,適用性較強。Huang等[5]利用GA-BP神經網絡提高了丘陵地區小流域洪水預報精度;Wang等發現PSO-BP是一種快速且相對準確地預測山洪峰值流量的算法;Li等7]利用BP網絡為水庫下游暴洪預測提供新思路;Khairudin等8將BP網絡和ELM網絡集成,通過數據分解和熵特征選擇提高洪水預測準確性。
但是BP算法存在隱含層節點數難以確定、網絡收斂速度慢、局部極小點和無法研究物理機理的問題9。于是有學者提出改進方法(如動量附加法、改變學習速度法)和優化算法(如LM算法、彈性BP算法、共軛梯度法等)。其中,共軛梯度法在洪水預報領域的應用展現出顯著的算法潛力。Chang等[10]和Indra等[]分別探索了3種ANN結構和CGDNN模型在洪水預報中的應用,驗證了共軛梯度法的結構適配性和預測效果優勢。Zhu等[2]通過數據集擴展和共軛梯度變體優化,提升了洪水淹沒預測的精度和收斂性。在算法對比驗證方面,朱偉仁等[13]、Kisi等[14]、Khan等[15]、Mistry等[16]文獻的橫向對比研究顯示,共軛梯度法在數據驗證和預測結果中表現最優,且在山區洪水預警中優于貝葉斯正則化、LM算法。金保明等[7]采用LMBP、彈性梯度BP算法[18]構建模型的效果雖較好,但LMBP網絡基于二階優化計算效率相對共軛梯度算法略慢,彈性梯度BP算法由于學習率調整策略依賴經驗參數,易導致收斂不穩定,而共軛梯度法相比而言在計算速度與收斂性方面具有一定優勢。此外,共軛梯度法通過變體優化,在數據規模大、時效性高的場景中展現出抗過擬合和高效計算的潛力,尤其適用于水文模型構建,特別是在短期預報中表現突出。考慮到PRBP這一優化算法具有收斂速度快的顯著特點,這恰好滿足了山區流域洪水預報對時效性的高要求。因此,論文研究的主要目標是采用PRBP算法來構建崇陽溪神經網絡洪水預報模型。這一模型的建立旨在為流域的防汛工作提供精確、及時的科學依據,從而有效應對洪水災害,確保人民生命財產安全。
1PRBP神經網絡結構和算法
1. 1 BP網絡基本結構
BP網絡包括輸入層、隱含層和輸出層,見圖1。其訓練包括3部分:輸入正向傳播、敏感性反向傳播、重復訓練更新權值和偏置值過程。首先將數據輸入到輸入層,再由每一層的神經元進行層層運算,直至最終的輸出層輸出結果;接著計算網絡輸出結果與實際目標值的誤差,根據有關法則推求誤差敏感性,將敏感性反向傳播,并利用相關算法對每一層的權值和偏置值進行更新;以上過程反復進行,直到網絡誤差達到最小值或者訓練次數滿足所需次數為止[19]
1.2Ploak-Ribiere共軛梯度下降算法
Polak和Ribiere提出了一種介于牛頓法和最速下降法之間的PR共軛梯度下降方法,其搜索方向與梯度變化方向垂直,通過結合共軛方向和預處理技術,優化梯度下降路徑,以加速問題的求解過程[20]。
假設誤差函數(或損失函數)為二次函數:
式中:A為赫森矩陣; 為包含權值和偏置值的向量;
d 為線性項的系數向量,影響線性部分的梯度方向;
c 為常數項。
則:
式中: ablaF(x) 為一階導數向量,指導參數更新方向;
abla2F(x) 為二階導數矩陣。
PRBP算法過程如下。
步驟一第一次迭代從最速下降法開始。
式中: k 為迭代次數; g(xk) 為第 k 次迭代時目標函數F(xk) 的梯度值; p(x0) 為初始搜索方向。
步驟二在BP算法過程中,權值、偏置值的更新迭代,按照式(4)進行,即采用沿搜索方向最小化。
xk+1=xk+αkp(xk)
式中: xk 為待更新的權值、偏置值; p(xk) 為梯度搜索方向,在每一次迭代中,將上一時刻的共軛方向作為當前時刻的搜索方向; αk 為學習速度,取值由式(5)計算得到。 αk 的計算式為:
步驟三每次搜索方向的向量 p(xk) 與{Δg0,Δg1,…,Δgk-1} 正交,其中 Δgk-1=gk-gk-1 ,即搜索方向與梯度變化方向垂直,向量集合 {p(xk)} 對于赫森矩陣 A 兩兩共軛。
p(xk)=-g(xk)+βkp(xk-1),k?1
式中: ?:βk 為共軛梯度法校正系數,確定該系數的方法有許多種,在PR共軛梯度法中,采用前一時刻梯度的變化量與當前的梯度內積除以前一時刻梯度的平方,見式(7)。該方法適用于洪水預測等非線性優化問題,表現更穩定,能加快收斂速度[21]。
βk={[g(xk)-g(xk-1)]?g(xk)}/[g(xk-1)?g(xk-1)]
步驟四如果算法不收斂,返回步驟二對權重、偏置值進行更新迭代,繼續計算,直到算法收斂為止或誤差函數 F(x) 達到允許的誤差為止。
2PRBP神經網絡洪水預報模型
2.1子流域單元劃分
崇陽溪上游流域武夷山站控制流域面積1078km2 ,多年平均降水量 1927mm 。雨季主要集中在每年3一6月,大約占全年 80% 的雨量。為考慮各雨量站雨量不均勻的影響,以上游6個雨量站和武夷山水文站作為控制點,利用泰森多邊形法將流域劃分為7個子流域單元,計算各單元流域面積和相應的控制面積權重。武夷山、洋莊、吳邊、大安、坑口、嶺陽、嵐谷7個單元流域面積分別為66.2、90.7、218.2、202.3、165.8、139.9、190.5km2;相應權重分別為0.06、0.08、0.20、0.19、0.15、0.13、0.18。流域水系見圖2。
2.2樣本數據處理
論文收集了1997—2022年的29場暴雨洪水過程,按照洪水類型分為單峰型與復式峰型兩類;按照洪水流量分為高流量、中流量和低流量3類[22]。以大約7:3的比例劃分數據集,最終將21場洪水用于模型訓練,8場洪水用于測試集測試模型性能。
由于退水過程會有相當數量的零雨量,這類數據會導致模型存在矛盾的信息,從而造成輸出結果不準確,需進行處理與轉換[23]。采用Luk等[24]提出的雨量數據轉換公式:
X=alog(x+b)
式中: x 為原始數據; X 為去零化后的數據; a,b 為參數。
將雨量和流量數據歸一化處理能夠使得網絡運行的數據尺度是一致的,降低因不同數據量級所帶來的影響。論文對輸入數據進行歸一化處理,對輸出數據進行反歸一化處理。
2.3模型構建
模型輸入為上游6個雨量站雨量和武夷山站前期流量,輸出為武夷山站相應流量,建立流域PRBP洪水預報模型,其結構見圖3。
輸入層輸人信息為:
式中: a,b 為去零化參數 (a=0.5,b=1); λj 為各雨量站控制的子流域面積權重; Pjmax?Pjmin 分別為第 j 個雨量站去零化處理后時段雨量的最大、最小值;Qmax?Qmin 分別為出口斷面流量的最大、最小值; τj 為上游洋莊、吳邊、大安、坑口、嶺陽、嵐谷雨量站凈雨到武夷山水文站的匯流時間,分別為1.0、1.5、2.5、3.0,4.0,3.0h 。
時刻模型輸入層的輸入信息包括: ① 上游洋莊等6個雨量站時段雨量 Pj(t-τj) ② 前1h武夷山站的實測流量 Qr(t-1) 。采用式(9)處理后轉化為PRBP層的輸入信息矩陣 X(t) 。式(9)對輸入降雨資料和流量資料均進行歸一化處理。PRBP層:
y(t)=σPR[wkX(t)+bk]
式中: σPR 為傳輸函數; X(t) 為輸入信息矩陣; wk,bk
分別為PRBP層的權值和偏置值矩陣。
輸出層對輸出數據進行反歸一化處理:
Q(t)=[y(t)+1](Qmax-Qmin)/2+Qmin
式中: Qmax 為最大洪水流量; Qmin 為最小洪水流量。
網絡的誤差函數 F(x) 為:
式中: Qr(t) 為實測流量; Q(t) 為預報流量; n 為每場洪水數據個數。
隱含層的權值和偏置值的更新迭代式:
式中: g(wk) 為誤差函數; F(wk,bk) 為以 wk 為方向的導數 ?F/?wk g(bk) 為 以 bk 方向的導數?F/?bk° (204
根據21場洪水資料,通過試算法確定隱含層單元數為7。模型采用7-7-1的3層網絡結構,即7個輸入變量、7個隱藏層單元、1個輸出變量。根據選定的隱含層單元數和迭代次數,對網絡進行訓練,直到網絡誤差函數變化曲線趨于平穩(網絡誤差達到最小值)或者訓練次數達到要求次數為止,流域PRBP神經網絡洪水預報模型的構建得以完成。
2.4 模擬結果
選取流域“1998·06·14”\"2003·06·25”\"2006·06·14” “2008·07·19”“2019·07·05”\"2019·07·09\"??2021?06?28???2021?06?30??8 場暴雨洪水過程進行模擬驗證,并進行誤差分析,計算模型確定性系數。每場洪水流量過程絕對誤差的平均值、相對誤差的平均值是指對誤差取絕對值后再求均值,見圖4、表1、圖5、表2、圖6。
從圖4可以看出,預報洪水過程線總體上保持實測洪水過程線的形狀。從表1看出,8場洪水過程中,“2019·07·05\"洪水流量過程相對誤差(取絕對值后)的均值 17.1% 、為8場洪水過程最大值,有3場洪水流量過程相對誤差小于 10% ;除\"2021·06·28\"洪水模型預報的確定性系數為0.877外,其余7場洪水均在0.9以上,符合規范要求。由表2可知,8場洪水洪峰流量預報值相對誤差(取絕對值后)的均值為 4.56% ,只有\"2021·06·28\"和\"2021·06·30”兩場洪水的次峰預報值相對誤差大于 10% ,分別為-11. 20%.-12.5% ,其余場次洪峰流量預報相對誤差在 10% 以內,說明模型的預報效果良好、符合規范要求。
3結語
選擇崇陽溪上游流域1997—2022年的29場暴雨洪水過程的雨量和武夷山站前期流量為輸入,武夷山站相應洪水流量為輸出,通過試算法確定隱含層單元數,構建基于PR共軛梯度下降算法的PRBP神經網絡洪水預報模型。其中21場洪水用于模型訓練,8場洪水用于測試集測試模型性能。該方法第一次迭代從最速下降法開始,以后在每一次迭代中,均構造一個與梯度變化方向正交的向量,使得前后2個向量共軛,不斷迭代計算;直到算法收斂為止或誤差函數 F(x) 達到允許的誤差為止。
研究表明,該模型使用簡便,與常規的BP算法相比,收斂速度變快,運算速度明顯提高,模型的預報精度符合要求,適合于流域的降雨徑流過程預報。實際應用中,可以根據洪水預警報系統的實時雨量輸入PRBP模型進行預報,并與其他方法進行對比,為流域防汛調度提供依據,助力相關部門提前準備,減輕洪水可能造成的災害損失。后續研究可引入LSTM、GRU、CNN等深度學習神經網絡進行模型構建;同時,深入分析洪水流量組成成分,去除噪聲項,優化和完善模型組成和結構,提高洪水預報精度。通過不同模型和方法對比,找出最適合崇陽溪流域的洪水預報方案,提升流域防洪減災能力。
參考文獻:
[1]YEDITHA PK,KASI V,RATHINASAMY M,etal. Forecasting of extreme flood eventsusing different satellite precipitation products and wavelet-based machine learning methods[J].Cha0s,2020,30(6).DOI:10.1063/5.0008195.
[2]OLGA K,SHUANG L.Artificial neural network for solving multi-parameter optimization problems[C]//Journal of Physics: ConferenceSeries.IOPPublishing,2021,2092.DOI:10.1088/ 1742-6596/2092/1/012013.
[3]劉易文,李家科,丁強,等.漢江流域安康段降雨徑流特征分 析及預測[J].人民珠江,2021,42(6):59-69.
[4]胡健偉,周玉良,金菊良.BP神經網絡洪水預報模型在洪水預 報系統中的應用[J].水文,2015,35(1):22-25.
[5]HUANGDJ,TIANCC,JIANGJY.Application of GA-BP neural network model for small watershed flood forecastingin Chun’an county,China[C]/IOP Conference Series:Earth and Environmental Science.IOPPublishing,2020,612.DOI:10. 1088/1755-1315/612/1/012066.
[6]WANG WL,SANGG,ZHAO Q,etal.Prediction of flash flood peak discharge in hilly areas with ungauged basins based on machine learning[J].Hydrology Research,2024,55(8): 801-814.
[7]LIS,WUK,MUC.Research onReservoir SafetyRiskBased on BP Neural Network[C]//2O22 7th International Conference on Multimedia Communication Technologies(ICMCT).IEEE, 2022:70-77.
[8]KHAIRUDIN N M,MUSTAPHA N,ATIS T N M,etal. Ensemble neural networks with input optimization for flood forecasting[J]. Bulletin ofElectrical Engineeringand Informatics,2024,13(5):3686-3694.
[9]熊立華,郭生練,龐博,等.三種基于神經網絡的洪水實時預報 比較研究[J].水文,2003,23(5):1-4.
[10] CHANG F J,CHIANG Y M,CHANG L C. Multi-Step-Ahead Neural Networks forFlood Forecasting[J].Hydrological Sciences Journal,2007,52(1):114-130.
[11] INDRA G,DURAIPANDIAN N. An Improved Flood Forecasting Systemwith ClusterBased Visualizationand AnalyzingUsingGKANFIS and CGDNN[J].Expert Systems with Applications,2023, 212(1): 747-758.
[12]ZHU H F,LEANDRO J,LINQ.Optimization of Artificial Neural Network(Ann) for Maximum Flood Inundation Forecasts [J].Water,2021,13(16):52-66.
[13]朱偉仁,孫紅福,朱琳,等.基于共軛梯度法和BP神經網絡的 火山灰云頂高度反演研究[J].自然災害學報,2019,28(6): 28-36.
[14]KISI O.Streamflow Forecasting Using Different Artificial Neural Network Algorithms[J].Journal ofHydrologic Engineering, 2007,12(5):532-539.
[15]KHAN T A,ALAM M,SHAHID Z,et al. Comparative PerformanceAnalysisofLevenberg-Marquardt,Bayesian Regularization and Scaled Conjugate Gradient for the Prediction of FlashFloods [J].JournalofInformationCommunication Technologies and Robotic Applications,2019,10(2):52-58.
[16]MISTRY S,PAREKH F.Flood forecasting using artificial neural network[C]//IOP Conference Series:Earth and Environmental Science.IOP Publishing,2022,1086.DOI:10.1088/1755- 1315/1086/1/012036.
[17]金保明,王偉,杜倫閱,等.基于LMBP算法的崇陽溪流域降雨 徑流預報模型研究[J].大學學報(自然科學版),2019,47(6): 842-847.
[18]金保明,盧光毅,王偉,等.基于彈性梯度下降算法的BP神經 網絡降雨徑流預報模型[J].山東大學學報(工學版),2020,50(3): 117-124.
[19]崔巍,顧冉浩,陳奔月,等.BP與LSTM神經網絡在小流 域水文預報中的應用對比[J].人民珠江,2020,41(2):74-84.
[20]陳朝陽,行小帥,李玥.共軛梯度BP算法在Matlab7.0中的實 現[J].現代電子技術,2009,32(18):125-127.
[21]李軍,常濤,丁萃菁.改進共軛梯度BP算法的應用研究[J].計 算機仿真,2005,22(4):111-113.
[22]陳朝清.山區流域循環神經網絡洪水預報模型研究[D].福 州:大學,2023.
[23]NASSERIM,ASGHARI K,ABEDINIMJ.Optimized Scenario forRainfall Forecasting Using Genetic Algorithm Coupled with Artificial Neural Network[J].Expert Systems With Applications, 2007,35(3):1415-1421.
[24]LUK K C,BALL JE,SHARMA A. A Study of Optimal Model Lagand Spatial Inputs to Artificial Neural Network forRainfall Forecasting[J]. Journal of Hydrology,2000,227(1):56-65.
(責任編輯:高天揚)