張 楠
(河北省承德水文勘測研究中心,河北 承德 067000)
卷積神經網絡CNN和深度信念網絡DBN是典型的深度學習模型[1]。CNN和DBN都有各自的優勢和局限性,它們的預測性能取決于應用環境。由此本文提出了基于深度卷積網絡神經的水文降雨徑流預測方法,包含了多個隱藏層,生成能力比DBN有所提高[2]。
CDBNs是由多個卷積受限玻爾茲曼機RBM組成的概率生成模型[3]。CDBNs為多層結構體系,包含一個用于接受輸入數據的可見層和多個隱藏層。CDBNs采用逐層貪婪學習算法訓練初始權值。該算法通過無監督學習對數據進行標注。CDBNs模型可以通過深隱藏層中的分布式描述輸入數據。基于RBM學習規則,采用sigmoid函數將數據從可見層v轉換到隱藏層h。
CDBNs包含多個隱藏層,這些隱藏層構成了CDBNs的核心。CDBNs的原理是雙向學習,一個是從可見層到隱藏層構建機器,另一個是用構建的機器驗證學習機和訓練數據之間的表示能力。無論是在可見層還是隱藏層,同一層的節點相互獨立,相鄰層的節點都參與學習。網絡機制提供了較強的非線性表示能力。網絡能量函數E(v,h,θ)如式(1)所示:
(1)
式中:v為可見層;h為隱藏層;θ為權重函數,θ={W,a,b);W為CDBNs配置的權重;a為校正參數;b為偏差;Wij為可見單元i與隱藏神經元j的對稱相互作用權值;vi和hj分別為可見層第i個神經元和隱藏層第j個神經元的狀態;bi和aj為偏置項。
權重配置是CDBNs的核心,從下到上的權重由學習決定,而從上到下的參數用于驗證。
CDBNs的構建算法如下:
(1)輸入初始參數,包括最大層數,每層神經元數,最大歷時數。
(2)采用RBM學習規則訓練CDBNs層。
(3)存儲隱藏層和可見層之間的連接權重和偏差。
(4)重復步驟2和步驟3,直到達到最大層數。
(5)通過監督學習微調CDBNs參數配置。
每一層的訓練過程包括兩個階段:從可見層到隱藏層的數據映射和從隱藏層到可見層的數據重構。映射階段根據式(2)確定隱藏單元生成概率,重構階段根據式(3)確定可見單元生成概率。
(2)
(3)
式中:w為權值組合;δ為非對稱型sigmoid函數;bj為神經元j的偏置項;wij為可見單元i與隱藏神經元j的對稱相互作用權值;δ(x)=(1+e-x)-1;e為常數項;x為數量。
RBM的預訓練過程本質上是無監督學習,具有較強的復雜非線性函數學習能力。CDBNs包含數百個隱藏神經元,這些神經元最初是不活躍的,他們的關聯權重是未知的,因此預測機根本無法工作。RBM是CDBNs的主要組成部分,在完成所有RBM配置后,CDBNs才能用于水文降雨徑流預測。在本文中,RBM組態通過交替迭代求解v和h來實現。
新安江降雨徑流模型是通過長期實踐和對水文規律認識基礎上建立起來的傳統的概念降雨徑流模型[4]。新安江降雨徑流模型由蒸散發、徑流產生、徑流分離和徑流路徑四大部分組成。新安江降雨徑流模型的基本結構見圖1。

圖1 新安江降雨徑流模型結構
在圖1中,塊內的符號都是變量,塊外的符號都是參數。變量包括輸入、輸出、狀態變量和內部變量。輸入是面平均降雨量P和實測蒸發量EP。輸出全流域徑流量TR和實際蒸散量EA,其中包括EU(上層)、EL(下層)和ED(深層)三個分量。狀態變量包括平均自由蓄水量S和平均張力蓄水量W,W分別由上、下、深層(WU、WL、WD)三個分量組成。FR是與W相關的徑流貢獻面積因子,R、RB和QSIM為內部變量。RS、RI和RG為R的三個分量,分別為地表徑流、間流和地下水徑流。這三個分量進一步分為TRS、TRI和TRG,合并起來就是該子流域渠道網絡的總流入量。QSIM是子流域的流出量。K為潛在蒸散量與蒸發量之比。WM表示平均張拉水量,包括UM、LM和DM三個分量。張拉水量分布曲線用B表示,IM表示不透水區域系數。SM為平均自由水量,ES為自由水量分布曲線。KI和KG表示與RI和RG相關的系數。其他參數CI、CG、L、CS為流量參數。
本文采用新安江降雨徑流模型來校核CDBNs。
本文建立了基于CDBNs的降雨徑流預測模型。同時考慮了原始數據采集、數據驅動預處理、模型參數標定與確認。
降雨徑流模型研究的第一步是確定輸入變量。降雨徑流模型一般采用降雨量、前期流量、蒸發量、溫度等作為輸入變量。本文選擇降雨量P和歷史流量Q作為輸入變量。降雨徑流模型如公式(4)所示:
Qt+T=f(Pt+1-l1,…,Pt,Qt+1-l2,…,Qt)
(4)
式中:Qt+T為時間實例t+T的預測流量,m3/s;f為預測模型;Pt為過去t時的降雨量,mm;l1和l2為歷史數據長度,d;T是預測超前時間,它給出了預測徑流的時間,h;Qt為t時的前一流程,m3/s。
本文采用l1=l2=N和l1≠l2進行流量預測,N=1、3、5,T也設為1、3、5。
在流域干流選取了4個雨量站和蒸發站,研究區面積約160 km2。利用雨量站和蒸發站的降水和蒸發數據進行日徑流模擬。
將2022年徑流和降雨觀測數數據作為測試數據集,驗證模型的性能。2022年研究區域年平均降水量6.8 mm,最大降水量131.2 mm。夏季為主要降水期,7月、8月、9月平均降水量達19.5 mm。冬季降水少,11月和12月平均降水量2.8 mm。年平均徑流量為7.13 m3/s。
為了綜合評價模型的性能,本文計算了觀測值與預測值的均方根誤差RMSE、相關系數R和平均偏差MBE。通過計算納什效率系數NSE來評價仿真結果。如式(5)~式(8):
(5)
(6)
(7)
(8)
式中:N是觀測數據的總數,mm;Qprec,i為時間i的預測流量,m3/s;Qobs,i為時間i的觀測流量,m3/s;Qprec為Qprec,i的平均值,m3/s;Qobs為Qobs,i的平均值,m3/s。
選取降水量、前期流量和蒸發量作為輸入變量,流量Q作為輸出變量。
為了簡化計算,在過程中用[P-EP]代替P,P是平均降水量,EP是平均潛在蒸散量。為了確保所有變量在訓練過程中獲得相等的權重,將原始數據縮放到-1~1或0~1的區間。因此,本文對縮放后的數據進行處理,并將輸出數據返回到原始尺度,數據縮放在0.1~0.9之間,縮放和反縮放方程如式(9)~式(11):
(9)
(10)
(Qmax-Qmin)
(11)
式中:Pn(t)為t時刻的縮放降水數據;P(t)為觀測降水數據;Pmin和Pmax為模擬期間降水數據序列的最小值和最大值;Qn,obs(t)為縮放觀測流量,m3/s;Qobs(t)為觀測流量Qn(t)為利用CDBNs模型預測的流量,m3/s;Qmin和Qmax為觀測流量的最小值和最大值,m3/s;Qsim(t)為反向縮放后的流量,m3/s。
通過數據預處理、CDBNs訓練、CDBNs優化和測試四個階段,建立了基于CDBNs的降雨徑流預測模型。第一階段是數據預處理。在本階段確定了層數、每層單元數和學習率等參數。在第二階段,所有訓練數據都有用于訓練CDBNs以配置初始權值。采用全局監督學習對CDBNs參數進行微調。第三階段是優化CDBNs以獲得更精確的仿真結果。第四階段是測試,該階段使用測試集來驗證所構建的降雨徑流模型的性能。利用模型對徑流值進行預測,并將輸出徑流反縮放到原始尺度。
在預測試驗中,建立了降雨徑流模型,用于預測水庫的流量。利用8a的降雨徑流數據集對CDBNs進行訓練。使用1 a的數據集來測試CDBNs。
選取2022年7月、8月和9月的降雨量作為測試數據進行建模。CDBNs與新安江模型的日徑流量觀測與預測對比見圖2。兩種模型的預測趨勢與觀測資料一致。第199天,實際觀測(OBS)、CDBNs和新安江模式(XAJ)的日流量分別為66.1 m3/s、79.6 m3/s和111.8 m3/s。在第216天達到最大值,分別是188.5 m3/s、162.6 m3/s和147.9 m3/s。因此,CDBNs模型總體上表現出比XAJ模型更優越的性能。

圖2 7—9月實際觀測、CDBNs和新安江模式的日流量
表1給出了RMSE、R、MBE和NSE的計算結果。CDBNs和XAJ的RMSE為7.36和8.27。兩種模型的R值都比較大,XAJ的R值最小為0.96。從MBE分析來看,CDBNs略微低估了河流流量。XAJ略微高估了河流流量。CDBNs的NSE大于XAJ。綜上所述,CDBNs模型提供了更準確的預測。

表1 兩種模型的精確度對比
圖3為CDBNs和XAJ的模擬流量與觀測流量的散點圖。模擬時段也為2022年第183~273日。為了比較CDBNs和XAJ的差異,仍然使用N=1 d。可以看出,兩個模型都高估了河流流量,但CDBNs模型的散點全部落在條形區。XAJ模型有5個點落在條形區域外。因此,CDBNs模型優于XAJ模型。

圖3 CDBNs和XAJ第183~273日的模擬流量與觀測流量
表2顯示了N為1 d,3 d,5 d使用CDBNs模擬的統計結果。可以看出,越小預測就越準確,持續時間越長波動越大。所有的預測都與實際數據保持相似的趨勢。

表2 CDBNs模型不同時間的模擬結果對比
為了進一步評價模型的性能,利用2022年全年的觀測數據對模型進行測試。計算出兩種模型的精確度對比見表3。由表3可見,對于相同的數據,本文提出的CDBNs模型的R為0.98,而XAJ模型的R為0.96。

表3 兩種模型的精確度對比
圖4是采用CDBNs模型和XAJ模型預測流量與實測流量的散點圖。由圖4可見,兩種模型的預測流量均有高估,但CDBNs模型的預測效果優于XAJ模型。CDBNs模型MBE為1.22,XAJ模型MBE為1.26。在測試期間,散點圖中CDBNs模型有4個點落在條形區域外,XAJ模型6個點落在條形區域外。

圖4 兩種模型全年預測流量與實測流量
(1)CDBNs模型所構建的深度學習機更好地模擬了數據內部復雜的非線性。即使觀測值有限,也能保持很好的預測能力。通過2022年流量數據預測對比分析,CDBNs模型優于新安江模型。
(2)CDBNs模型利用不同歷史長度的降雨和徑流數據對未來變長度的徑流進行預測。給定的算法具有可調的可預測性,在一個框架下,相同的歷史數據可以以多種方式使用,可以對未來不同時間的流量進行預測。
(3)CDBNs模型可推廣到類似氣候區域。針對不同的水文條件,需要對其進行修正,以預測新區域的流量。隨著預測的歷史數據的長度增加,預測的精確度隨之下降。