陶春華,時焱紅,王甫志
(1.國能大渡河大數(shù)據(jù)服務(wù)有限公司,四川 成都 610041;2.四川新能工程咨詢有限公司,四川 成都 610000)
趙人俊教授提出的時變線性匯流模型[1],在英那河[2]、丹江口[3]和俄日河等多個流域的河道徑流演算中得到廣泛應(yīng)用,在半濕潤半干旱地區(qū)應(yīng)用效果較好。但其只考慮了預(yù)報斷面之間的空間分布和時間傳播,并未考慮區(qū)間降雨影響,降雨期預(yù)報結(jié)果較實際偏小。隨著人工智能的興起,機器學(xué)習(xí)廣泛應(yīng)用于洪水預(yù)報領(lǐng)域[4-5]。李天成等[6]學(xué)者基于流域產(chǎn)流機制,采用逐步回歸分析法篩選出影響各月徑流的主要因子,建立RBF神經(jīng)網(wǎng)絡(luò)模型,在逐月徑流預(yù)測中進行了應(yīng)用;杜開連等[7]學(xué)者采用多元線性回歸和BP神經(jīng)網(wǎng)絡(luò)在秦淮河流域進行洪水預(yù)報應(yīng)用,取得了較高的預(yù)報精度。本文充分考慮影響預(yù)報斷面徑流過程的區(qū)間因素,結(jié)合馬瑜君等[8]學(xué)者的模型構(gòu)建思路,構(gòu)建基于機器學(xué)習(xí)的來水預(yù)報模型,并與已有模型和實測過程進行對比評定。預(yù)報結(jié)果表明,基于機器學(xué)習(xí)的線性回歸模型(以下簡稱“LR模型”)和K鄰近算法模型(以下簡稱“KNN模型”),應(yīng)用效果均優(yōu)于傳統(tǒng)的時變線性匯流模型。
俄日河系大渡河西源綽斯甲河右岸一級支流,全長128 km,流域面積1 910 km2,天然落差1 845 m,河道平均坡降1.44%。俄日河干流梯級水電規(guī)劃開發(fā)方案自上而下依次為銀恩、七家寨、俄日和紅衛(wèi)橋水電站,俄日和紅衛(wèi)橋水電站現(xiàn)已開發(fā)。2016年5月項目施工期水情測報系統(tǒng)(下文簡稱“系統(tǒng)”)投入運行,玉科、二楷、俄日、紅衛(wèi)橋水文站開始測流,玉科至二楷水文站區(qū)間河長約21 km(流域及遙測站網(wǎng)分布見圖1)。其中,二楷水文站斷面已布設(shè)河道演算(時變線性匯流)模型。
圖1 俄日河部分流域示意
本文結(jié)合俄日河流域特性和前期預(yù)測經(jīng)驗,對玉科至二楷水文站區(qū)間徑流過程進行影響因素特征分析。結(jié)合洪水傳播時間,最終確定單個樣本主要包含當(dāng)前時刻玉科水文站實測徑流大小Q玉科,t和前1 h徑流Q玉科,t-1、前2 h徑流Q玉科,t-2、直至前5 h徑流Q玉科,t-5共計6個徑流特征項,當(dāng)前時刻玉科至二楷水文站區(qū)間前6 hPt-6、前12 hPt-12、前24 hPt-24、前48 hPt-48、前72 hPt-72共計5個面雨量特征項,以及當(dāng)前時刻二楷水文站實測徑流Q二楷,t,累計12個特征項。
利用玉科、二楷水文站已有5年的監(jiān)測整編數(shù)據(jù),分析建立樣本集,訓(xùn)練集和測試集按照3∶1比例進行劃分。本次共收集8 714個樣本,劃分訓(xùn)練樣本6 099個,測試樣本2 615個,樣本特征結(jié)構(gòu)見表1。
表1 樣本集特征
本次模型構(gòu)建基于Python機器學(xué)習(xí)庫,選用線性回歸、K鄰近、BP神經(jīng)網(wǎng)絡(luò)3種算法建模,模型簡介和訓(xùn)練結(jié)果如下。
機器學(xué)習(xí)最基礎(chǔ)模型[9],隸屬監(jiān)督學(xué)習(xí)范疇。模型簡單易構(gòu),利用訓(xùn)練樣本集,優(yōu)化訓(xùn)練出一個無限逼近樣本數(shù)據(jù)的線性方程,結(jié)合測試樣本進行評定。本次利用樣本集中的玉科水文站6項實測徑流,5項區(qū)間面雨量以及1項下游二楷水文站實測徑流作為自變量,構(gòu)建二楷水文站預(yù)測回歸模型并轉(zhuǎn)換為矩陣形式。
Q(v)=v1b1+v2b2+…+v11b11+b0
(1)
(2)
式中,Q(v)為預(yù)測值;vj為特征項值,v0=1;bj為特征項對應(yīng)權(quán)值。
本次訓(xùn)練過程中,為評定參數(shù)bT的優(yōu)劣,引入損失函數(shù)評估模型
(3)
式中,J(b)為損失值;n為評定容量;Q(v)i為第i個預(yù)測值;qi為第i個期望值。
評估階段采用梯度下降法進行局部最優(yōu)求解,min(J(b))對應(yīng)bT則為最優(yōu)解。模型訓(xùn)練集精度為88%,測試集精度為88%,訓(xùn)練權(quán)重及偏置見表2。
表2 LR模型參數(shù)結(jié)果
基于測試集,預(yù)測過程對比見圖2。
圖2 LR模型預(yù)測對比
K鄰近算法是機器學(xué)習(xí)中使用率極高的分類算法,其原理是通過測量不同樣本特征值之間的距離進行分類,同時該算法也可用于回歸問題處理。本文在樣本集中通過找出當(dāng)前樣本的k個最逼近樣本,并將k個樣本的期望值均值賦給該樣本的思路,構(gòu)建二楷水文站預(yù)測模型。
K鄰近算法主要影響參數(shù)為鄰近點個數(shù)k,初次訓(xùn)練調(diào)試范圍為1至100,以1為步長迭代,觀察訓(xùn)練精度、鄰近點數(shù)對應(yīng)過程曲線,得出最大精度對應(yīng)鄰近點數(shù)為56。
鄰近距離度量選用最常用的歐氏度量法[10],它定義于歐幾里得空間,以本文樣本集中Q1、Q2兩個樣本間距計算為
(4)
式中,d為鄰近距離;Q1i為Q1樣本的vi特征值;Q2i為Q2樣本的vi特征值。
將k鄰近點數(shù)取56帶入模型并保存,應(yīng)用測試集,預(yù)測對比過程見圖3。
圖3 KNN模型預(yù)測對比
BP神經(jīng)網(wǎng)絡(luò)是一種由輸入層、隱含層和輸出層組成,按照誤差逆向傳播算法訓(xùn)練的多層前饋算法。以模仿生物腦神經(jīng)元結(jié)構(gòu)和思維,結(jié)合河道、流域洪水組成和過程建立輸入與輸出的某種函數(shù)關(guān)系,通過訓(xùn)練選取不同的模型結(jié)構(gòu)和激活函數(shù),通過誤差判斷,再反算分配、調(diào)整,依托神經(jīng)網(wǎng)路仿真學(xué)原理,完成所需的預(yù)報任務(wù)。
(1)影響因子及激活函數(shù)。根據(jù)俄日河水情自動測報系統(tǒng)前期應(yīng)用經(jīng)驗,影響二楷水文站斷面徑流過程的主要因子有上游主河道來水和區(qū)間來水。樣本集中玉科水文站實測徑流過程v1~v6作為主影響因子;區(qū)間降雨v7~v11作為次要影響因子,v12為期望值。傳統(tǒng)的Sigmoid等激活函數(shù),訓(xùn)練的過程中易出現(xiàn)梯度爆炸和梯度消失問題,本次激活函數(shù)選用線性整流ReLU函數(shù),在有效規(guī)避梯度消失問題的同時還能減少模型運算成本。
(2)特征項歸一化。本模型輸入主要為徑流數(shù)據(jù)和降雨數(shù)據(jù),二者量級的差異可能導(dǎo)致算法收斂速度很慢甚至無法收斂。為使最優(yōu)解的尋優(yōu)速度加快、過程變平緩,本文對樣本v1~v12特征進行線性歸一化處理[11],歸一化后樣本所有特征項和輸出結(jié)果均歸至0~1區(qū)間,最終呈現(xiàn)結(jié)果再進行反歸一處理。
(3)模型訓(xùn)練及測試?;跈C器學(xué)習(xí)庫的BP神經(jīng)網(wǎng)絡(luò)算法,主要影響因素為神經(jīng)元數(shù)量a、網(wǎng)絡(luò)層數(shù)c和學(xué)習(xí)率e,初步定義a取值范圍1~30,c取值范圍1~10,e為0.001~1,訓(xùn)練次數(shù)上限5 000 次,采用試算法進行參數(shù)調(diào)優(yōu)。本文選用均方根誤差RMSE[12]和整體達標(biāo)率η作為模型效果主評定系數(shù),參數(shù)優(yōu)化由RMSE(越逼近0,訓(xùn)練效果越好)調(diào)整,同時當(dāng)整體達標(biāo)率在90%以上時訓(xùn)練停止,整體達標(biāo)率為
η=n/N
(5)
式中,n為單次訓(xùn)練中,預(yù)測精度達標(biāo)樣本個數(shù);N為總樣本數(shù)。
模型訓(xùn)練最終確定神經(jīng)元個數(shù)a為10個,學(xué)習(xí)率e為0.01,網(wǎng)絡(luò)層數(shù)c為3層,最終訓(xùn)練精度為82%,測試集預(yù)測精度為81%,預(yù)測過程對比見圖4。
圖4 BP模型預(yù)測對比
通過訓(xùn)練及測試比對,各模型訓(xùn)練精度和測試精度見表3。可以看出,基于機器學(xué)習(xí)的各模型中,LR模型訓(xùn)練及測試效果最好,除LR外,其余2種模型訓(xùn)練結(jié)果均存在過擬合狀態(tài)。
表3 訓(xùn)練及測試預(yù)測精度統(tǒng)計 %
對各模型預(yù)測結(jié)果和期望結(jié)果進一步比對結(jié)果見表4。可以看出,針對2 615個測試集樣本,測試最小精度最大為LR模型的62.66%,最大正偏差最小為LR模型的10.6 m3/s,最小負(fù)偏差最大為LR模型的-20.3 m3/s。
表4 測試集預(yù)測精度特征統(tǒng)計
為進一步檢驗?zāi)P托Ч?,在實測徑流對比基礎(chǔ)上,加入流域前期已有預(yù)報模型時變線性匯流模型進行應(yīng)用效果對比。選用20161011-21號、20190911-21號、20200706-11號、20200915-1001號等4場實測徑流過程,4場實測徑流數(shù)據(jù)均未處于訓(xùn)練和測試樣本集中,各場次預(yù)測精度特征結(jié)果見表5~8,各模型綜合預(yù)測平均精度結(jié)果見表9,預(yù)報對比結(jié)果見圖5。
圖5 綜合預(yù)測對比
從表5~9可知,基于4場實測徑流過程預(yù)報中,LR模型綜合預(yù)測效果最好,KNN模型次之,BP神經(jīng)網(wǎng)絡(luò)模型稍差。LR模型綜合預(yù)報精度為85.39%,KNN模型綜合預(yù)報精度為83.24%,BP模型綜合預(yù)報精度為75.43%,時變線性模型綜合預(yù)報精度為78.26%。LR和KNN模型實測徑流對比預(yù)測效果均優(yōu)于已有的時變線性匯流模型,而BP神經(jīng)網(wǎng)絡(luò)實測徑流預(yù)測運用效果最差。
表5 20161011-21號預(yù)測精度特征統(tǒng)計
表6 20190911-21號預(yù)測精度特征統(tǒng)計
表7 20200706-11號預(yù)測精度特征統(tǒng)計
表8 20200915-1001號預(yù)測精度特征統(tǒng)計
表9 平均預(yù)測精度統(tǒng)計 %
時變線性匯流模型參數(shù)涵蓋了河道基本特征,如河長、河寬、比降、糙率等,通過對參數(shù)的率定,河道特征的了解,可以有效地掌控河系洪水傳播規(guī)律。模型主要輸入為上游實測徑流,對區(qū)間降雨徑流未作考慮,汛期預(yù)報誤差較大,需配合其他模型使用。本文結(jié)合俄日河流域特性,基于機器學(xué)習(xí),構(gòu)建了3種來水預(yù)報模型并與時變線性匯流模型進行應(yīng)用對比,主要結(jié)論有:
(1)針對4場實測徑流過程預(yù)報對比,基于機器學(xué)習(xí)的3種來水預(yù)報模型,根據(jù)預(yù)報區(qū)間水文時空分布特征,結(jié)合區(qū)間降雨影響,預(yù)報過程與實測過程基本一致。最終LR模型綜合預(yù)報精度為85.39%,KNN模型綜合預(yù)報精度為83.24%,BP模型綜合預(yù)報精度為75.43%,時變線性模型綜合預(yù)報精度為78.26%。時變線性匯流模型預(yù)報結(jié)果較實測結(jié)果整體偏小,LR模型和KNN模型預(yù)報效果均優(yōu)于傳統(tǒng)模型;而BP模型受迭代次數(shù)、層數(shù)、學(xué)習(xí)率、神經(jīng)元數(shù)等綜合影響,其激活函數(shù)又是在選用線性整流ReLU函數(shù)前提下,本文并未訓(xùn)練出最佳模型,模型仍有一定的進步空間。
(2)根據(jù)俄日河流域徑流形成特性進行樣本特征工程構(gòu)建,較其他傳統(tǒng)樣本構(gòu)建方式,其樣本特征的選用提出了結(jié)合傳播時間范圍內(nèi)的徑流過程和區(qū)間累計降雨過程組合的方式。該方式不僅考慮了徑流的前期傳播過程,同時考慮了區(qū)間流域前期影響降雨和實時降雨情況。在LR模型預(yù)報應(yīng)用中,測試集和實測徑流驗證均取得了較好的預(yù)報效果。這種樣本特征構(gòu)建思路和模型應(yīng)用思路可用于類似預(yù)報工作中。
(3)基于機器學(xué)習(xí)的預(yù)測模型,預(yù)測效果的優(yōu)劣主要取決于影響因子的抉擇和訓(xùn)練樣本的質(zhì)量和容量,影響因子考慮越全面、樣本真實性越高、樣本數(shù)量越多,模型訓(xùn)練結(jié)果也越好。而在一些實測徑流、降雨數(shù)據(jù)等缺乏的流域,模型應(yīng)用效果將會受限。