黃華平,酈于杰,王 棟,靳高陽
(1.中水珠江規劃勘測設計有限公司,廣州 510610;2.浙江省水利水電勘測設計院,杭州 310002;3.長江水利委員會水文局,武漢 430010)
中長期徑流預報是指基于水文現象的變化規律,以已知信息作為輸入條件,采用成因分析及數學建模等手段對預見期超過3 天的徑流過程進行定量或定性的預測[1]。作為一種非工程措施,中長期徑流預報在水旱災害防治、水庫調度運用、水資源優化管理及生態環境保護等方面均發揮了顯著作用[2]。
目前,關于中長期徑流預報已有較多研究,依據原理的不同,可劃分為以下兩類—基于水文循環過程驅動和基于相關因子數據驅動。前者一般是指將氣象要素預測數據作為輸入項,驅動水文模型來對徑流過程進行預測。如劉甜等[3]以CFS降水數據為輸入項,驅動SWAT 模型對丹江口水庫入庫流量進行了相關預測研究;Singh 等[4]采用ESP 方法獲取未來氣象數據,將其導入Topnet 模型,預測了新西蘭南島四個典型流域的徑流過程。這一類方法具有較為堅實的理論基礎,但預測過程中需要搜集大量數據來驅動模型運轉,且降水預測的不確定性在水文模擬過程中將進一步放大,導致預測結果往往差強人意,故而該類方法相關應用較少。而基于相關因子數據驅動是指在分析前期徑流或氣候要素與未來徑流過程相關性基礎上,建立統計模型來實現徑流中長期預測。該類研究在早期一般采用灰度理論、小波分析、方差分析等數理統計方法[5-7]。隨著人工智能與數據挖掘技術的快速發展,大量機器學習算法被應用于中長期徑流預測研究中,包括神經網絡模型、隨機森林算法、支持向量機及深度信念網絡等[8-11]。但上述研究多數僅提供了徑流的確定性預測結果,缺乏預測不確定性方面的考慮。
本文將LGB算法與HUP模型相耦合,應用于三峽水庫逐月流量中長期預測中。研究首先采用相關系數檢驗及逐步回歸法篩選出合理的預測因子;其次,以預測因子為輸入項,驅動LGB 算法對逐月徑流過程進行預測;最終,采用HUP 模型對預測結果的不確定性進行相應分析。
輕量梯度提升樹(Light Gradient Boosting Machine,LGB)是微軟于2017年提出的一種以梯度提升決策樹(Gradient Boosting Decision Tree,GBDT)算法為基礎的輕量化串行增強算法[12]。這類算法的基本思想是將訓練過程階梯化,每一輪訓練以擬合前一輪計算結果的殘差值為目標,直到殘差值足夠小或迭代次數達到最大值為止。具體模型結構如式(1)所示,每輪僅訓練一棵決策樹來擬合前期決策樹之和的殘差,然后將新的決策樹加入前期決策樹中構成新模型。

與GBDT 算法相比,LGB 算法優勢主要反映在以下4 個方面:
(1)采用直方圖算法對輸入數據進行離散化,減小噪聲影響的同時降低運行所需內存,模型訓練速度顯著提升;
(2)采用梯度單側采樣法,保留大梯度樣本和部分小梯度樣本,減小訓練數據且不改變樣本分布,提高了模型計算效率;
(3)通過將互斥特征停留在不同直方圖中構造特征束,對特征束進行排序,從而達到合并容忍范圍內互斥特征的目的,大幅降低遍歷的特征數量;
(4)采用了一種更為高效的按葉生長策略,在分裂前會遍歷所有葉節點,選擇具有最大增益的節點分裂,可降低分裂誤差,得到更高的模擬精度。
Krzysztofwicz R[13]于1999年提出了貝葉斯預報系統(Bayesian Forecasting System,BFS),用于解決水文預報中的不確定性問題。該系統包含降水不確定性處理器(PUP)和水文不確定性處理器(HUP),分別用于處理降水輸入產生的不確定性和除降水外其他所有不確定性。其中,HUP模塊基本原理如下所述:
記H0為已知實測流量過程,Hn與Sn分別為不同預見期n對應的實際流量和預報流量。依據貝葉斯原理及實測流量過程,可推斷出預報值Sn=sn條件下,實際流量Hn=hn的后驗密度函數,如式(2)。

式中:h0為已知實測流量過程;g(hn|h0)為hn的先驗分布,與h0相關;fn(sn|hn,h0)為sn關于hn的似然函數,反映了水文模型的預報能力。
假設每個目標點Tl(l=1,2,3,…,m×n)的面積均為Δm×Δn,如果目標點被覆蓋,則目標點的聯合感知概率為1,覆蓋面積為Δm×Δn,否則為0,所以目標點Tl的覆蓋面積可表示為Il×Δm×Δn;同樣,整個區域T的總面積為AS=(m×n)(Δm×Δn)。節點部署后節點所覆蓋的面積占部署區域總面積的比值稱為節點覆蓋率ψ[16],計算如下:
依據實測流量的后驗密度函數φn(hn|sn,h0),結合觀測數據及任意時刻的預報流量,可以估計相應時刻實際值的條件分布函數,從而對預報結果的不確定性分析進行相應分析。
3種預測精度指標(納什效率系數、相關系數及平均絕對誤差)及三種不確定性區間指標(覆蓋率、相對帶寬及平均偏移程度)被用于評價模型確定性預測結果及不確定性置信區間,計算公式下如下:
(1)納什效率系數(NSE)。

(2)相關系數(CC)。

(3)平均絕對誤差(MAPE)。

(4)覆蓋率(CR)。

(5)相對帶寬(RB)。

(6)平均偏移程度(RD)。

本文搜集了三峽水庫1965-2016年逐月流量數據,考慮到不同月份徑流特性與影響成因存在差異,研究對12個月份分別建立LGB 預測模型,并將GBDT 算法作為對比參照來驗證前者精度,在確定性預報基礎上,采用HUP 模型對預測結果不確定性進行了相關分析。
將國家氣象局提供的130 項氣候系統指數(88 項大氣環流指數、26項海溫指數和16項其他指數(http://cmdp.ncc-cma.net/Monitoring/cn_index_130.php)與前期徑流過程作為預測因子,考慮其與當月徑流過程間的遙相關性,將徑流發生前12個月氣候系統指數與前一個月徑流量納入預測因子初選范疇,采用相關系數顯著性檢驗及逐步回歸法對上述因子進行篩選,具體步驟如下:
(1)搜集各月徑流過程對應的所有相關變量,計算各相關變量與當月徑流過程間的相關系數;
(2)依據相關系數顯著性檢驗表,設置置信度為0.05,篩選出相關系數顯著的變量作為備選因子;
(3)采用逐步回歸法對備選因子進行分析,依據不同因子的方差貢獻率,篩選出10 個獨立性強,相關系數高的備選因子作為最終預測因子。
其中,1月及8月選定的預測因子如表1所示。

表1 典型月份對應預測因子統計表Tab.1 Selected predictors for two typical months(January and August)
以1965-2001年為率定期,2002-2016年為驗證期,將逐月預測因子導入模型中,對三峽水庫逐月徑流過程進行模擬預測。模擬過程中,為防止出現過擬合問題,研究采用留一交叉驗證法對模型參數進行充分率定,并將實測系列與模擬系列間MAPE值最小作為率定目標,預測結果如圖1、2及表2所示。


圖1 三峽水庫1965-2016年逐月流量過程對比Fig.1 The observed and simulated monthly runoff series from 1965 to 2016 for the Three Gorges Reservoir

表2 模型率定期及驗證期精度評價Tab.2 Performance Indices for the calibration and validation periods
由表2 可知,率定期內,GBDT 和LGB 模型關于三峽水庫逐月流量的模擬結果精度較為接近,其中MAPE值分別為16.1%和15.7%,CC值均為0.91,NSE值分別為0.84 和0.86;而驗證期內,除CC值較為接近外,其他兩種指標差異顯著增大,其中MAPE值分別為25.8%和23.0%,NSE值分別為0.71 和0.75。整體來看,兩種模型均具有較好的預測精度,與GBDT 模型相比,LGB 模型在率定期雖然與前者精度差異不大,但在驗證期精度明顯更高。
圖1 提供了三峽水庫實測流量與模擬流量過程對比,其結果表明:率定期內,豐水年的模擬值偏小,尤其對于1997 和1998年兩場特大洪水而言,汛期模擬值與實測值間絕對偏差超過30%,而對于平水年和枯水年的模擬結果略偏大;驗證期內,兩種模型模擬結果整體大于實測系列,但偏差程度不大。圖2提供兩種模型模擬結果與實測系列間散點分布圖,依據其特征可以得出同樣的結論,率定期內,兩種模型位于下半部分的散點均勻地分布在45°線兩側,而上半部分散點則略低于45°線,驗證期下半部分散點分布特征與率定期類似,而上半部分散點則略高于45°線。對比兩種模型結果可發現,圖1 與圖2 均表明:與GBDT模型相比,LGB模型對于三峽水庫逐月流量過程的模擬性能更佳,特別是對汛期而言,其模擬結果與實測值的偏差程度更小,對應散點也更為接近45°線。

圖2 三峽水庫實測與模擬月流量散點圖Fig.2 Scatter plots of observed and predicted monthly runoff for the Three Gorges Reservoir
HUP 模型處理過程中,需先采用正態分位數變換將實測值與預測值分別轉換至正態空間中,然后依據貝葉斯理論與線性似然假設來推求實際流量的后驗概率密度函數,從而對預報結果進行不確定性分析。與上述預測過程類似,研究將1965-2001年作為率定期,2002-2016年作為驗證期,來對HUP 模型后處理精度進行相應驗證。
依據HUP模型確定的實際流量后驗概率密度分布,可以提取逐月徑流過程對應的50%分位數流量值(Q50值)。表3和圖3 分別提供了Q50 值的精度指標及其與實測過程的對比。兩者結果表明:與LGB 模型預報結果相比,Q50 值與實測系列間擬合程度更佳,各精度指標在率定期及驗證期也顯著優于LGB 模型結果。為進一步分析兩者精度差異的年內變化特征,研究還計算了驗證期內實測值與模擬值間的相對誤差,如圖4 所示。由圖4,不難看出,兩者在枯水期(1-4月及12月)相對誤差普遍偏小,大體上處于-35%~35%之間,而在汛期,模擬值較實測值明顯偏大,在部分年份的8-10月內,相對誤差甚至達到了90%,而對比圖4(a)與圖4(b),不難看出與LGB 模型預測結果相比,Q50 值在大部分月份的預測精度呈現一定程度提高,特別是對汛期而言,改善效果更為顯著。

圖3 三峽水庫1965-2016年逐月流量觀測系列與Q50系列對比圖Fig.3 The observed runoff and Q50 values series for the Three Gorges Reservoir

圖4 驗證期逐月流量模擬結果相對誤差圖Fig.4 The relative error of predicted results for the validation period

表3 HUP模型率定期及驗證期精度評價(Q50預報值)Tab.3 Performance Indices for the calibration and validation periods(Q50 predictions)
除Q50 預測值外,研究還提取了預測結果的90%不確定性區間,其中驗證期不確定性區間如圖5 所示。為定量評估預測結果的不確定性,研究選取了覆蓋率(CR),相對帶寬(RB)和平均偏移(RD)幅度分別對率定期及驗證期的不確定性區間進行相應分析,對應指標結果如表4 所示。由表4 及圖5 結果,不難看出提取的90%不確定性區間覆蓋了率定期與驗證期絕大多數的實測點據,兩者覆蓋率分別達到0.86 和0.83,均較為接近0.9,說明提取的置信區間是較為可靠的。而相對帶寬和平均偏移幅度結果表明,與率定期相比,驗證期的相對帶寬和平均偏移幅度更大,說明后者的預測精度要差于前者,且對應不確定性也更大。

圖5 三峽水庫月流量不確定性分析結果Fig.5 Uncertainty analysis of the predicted monthly runoff sequences of the Three Gorges Reservoir

表4 不確定性區間精度評價Tab.4 Performance Indices for uncertainty confidence intervals
(1)預測精度指標結果表明,GBDT 模型與LGB 模型對于三峽水庫逐月流量過程的預測結果在率定期和驗證期內均取得較好效果,但后者的精度要顯著優于前者。
(2)采用HUP 模型對LGB 模型預測結果進行后處理,提取的Q50 值系列對應的MAPE、CC及NSE值均優于LGB 模型預測結果,說明HUP模型具有一定程度的校正能力。
(3)90%不確定性區間在率定期及驗證期的覆蓋率分別為0.86和0.83,較為接近0.9,且相對帶寬和平均偏移幅度較小,說明基于HUP模型提取的90%不確定性區間是較為合理可靠的。□