褚江東,粟曉玲,2,郭盛明,牛紀蘋
(1. 西北農林科技大學水利與建筑工程學院,陜西 楊凌 712100;2. 西北農林科技大學旱區農業水土工程教育部重點實驗室,陜西 楊凌 712100)
潛在蒸散發(potential evapotranspiration,ET0)是水分循環與能量平衡的重要組成部分,與降水共同決定著區域的干濕狀況,是估算生態需水和農業灌溉用水的關鍵因子[1],因此ET0的模擬研究具有十分重要的實際意義。
石羊河流域是我國內流河流域人口密度最大、人均GDP較高、人均水資源占有量最少的地區之一[2],模擬石羊河流域ET0對西北地區有著很好的代表性。ET0是各氣象因子的非線性復雜函數[3],利用人工智能方法來模擬非線性關系得到了廣泛的應用[4]。Huo等[5]研究表明在干旱半干旱地區模擬ET0時,人工神經網絡(ANN)模型相比MLRs(多重線性回歸)、Penman方程和經驗方程有著更好的精度;El-Shafie等[6]建立了可預測日ET0的集成神經網絡模型(ENN),據伊朗拉什特市與馬來西亞新山市的最低日氣溫和最高日氣溫資料進行模擬預測,得出ENN模型預測日ET0的精度較MLP-ANN方法更高。支持向量機(SVM)與人工神經網絡均已在降雨量預報中應用[7]。本文以石羊河流域為例,根據氣象站的逐日氣象資料,采用Penman-Monteith公式(簡稱PM公式)計算日ET0,分別建立六因子、四因子、三因子的SVM模型和ANN模型,將日ET0計算值與SVM模型、ANN模型模擬得到的日ET0模擬值進行比較,從中選擇所需氣象因子少、精度較高且可以在該流域推廣使用的模型。本研究期望對石羊河流域合理開發利用水資源、發展節水農業、調整種植結構等工作提供參考。
石羊河流域位于河西走廊東部、祁連山北麓,烏鞘嶺以西,是甘肅省河西走廊三大內陸河流域之一,地理坐標為北緯36°29′~39°27′,東經101°41′~104°16′,流域總面積4.16 萬km2,占甘肅省內陸河流域總面積的15.4%[8]。近幾十年來,流域經濟的迅速發展造成水資源利用過度,區域生態環境一度急劇惡化,出現嚴重的生態問題,通過近幾年的不斷治理才有所緩解[9]。
氣象資料包括石羊河流域內5個氣象站的逐日平均氣溫、最高氣溫、最低氣溫、平均風速、平均相對濕度、日照時數。其中古浪站的資料來源于甘肅省氣象局,資料長度為2001-2005年,其余氣象站的資料均來源于中國氣象科學數據共享服務網(http:∥data.cma.cn/),資料長度為2013-2017年。烏鞘嶺站位于石羊河上游,古浪站、武威站、永昌站位于中游,民勤站位于下游。五個氣象站基本覆蓋了整個石羊河流域,具有很好的代表性。氣象站的相關地理信息見表1。

表1 石羊河流域各氣象站地理信息Tab.1 Geographic information of all meteorological stations in Shiyang River Basin
聯合國糧農組織(FAO)將ET0定義為一種假想的參考作物的冠層的蒸發蒸騰速率,假設作物高度為0.12 m、固定的葉面阻力為70 s/m 、反射率為0.23,非常類似于高度一致、生長旺盛、完全覆蓋地面而不缺水的開闊綠色草地的蒸發蒸騰速率[10]。計算ET0的方法很多:Rohwer在1931年提出了基于空氣動力學、考慮水汽壓差和風速影響的Rohwer模型[11];Blaney和Criddle在1950年提出了基于溫度的Blaney-Criddle模型[12];Hargreaves在1975年提出了基于能量的Hargreaves模型[13],Allen在1998年提出了Penman-Monteith模型[10]。隨著遙感技術的發展,很多學者把遙感獲取的參數,比如土壤熱通量、葉面積指數、凈輻射等應用到PM公式中,實現PM公式在區域尺度上的運用[14]。段浩等[15]將遙感數據與PM公式相結合來推求ET0,該模型在望都站估算蒸散發取得較好結果;崔越等[16]基于BEPS-Terrainlab模型,利用Landsat5-8遙感數據和氣象資料等數據模擬了犟河流域的日蒸散發,模擬結果與MODIS蒸散發產品MOD16A2結果的決定系數R2=0.92,驗證了模擬的可靠性;FAO推薦的基于氣象數據的PM公式[17],綜合考慮了溫度、濕度、氣壓、風速及太陽輻射等因素的影響,在國內外得到了廣泛的應用。秦年秀[18]、李常斌[19]等將多種計算方法進行對比分析,認為在氣象資料較為完整的情況下,PM公式的計算值更接近ET0的實際值。PM公式如下[17]:
(1)
式中:ET0為潛在蒸散發量,mm/d;Δ為飽和水汽壓與溫度關系曲線的斜率,kPa/℃;Rn為作物表面凈輻射量,MJ/(m2·d);G為土壤熱通量,MJ/(m2·d);γ為濕度計常數,kPa/℃;T為空氣平均溫度,℃;u2為地面以上2 m高處的風速,m/s;es為空氣飽和水汽壓,kPa;ea為空氣實際水汽壓,kPa。
人工神經網絡(ANN)是一種模仿人腦結構的信息處理系統模型[20],具有自學習、自組織、自適應性的特點,是一種非線性統計模型[21]。ANN模型由輸入層、隱層、輸出層組成,基本組成單元是節點,每個節點只與鄰層節點相連。目前運用最廣泛的ANN模型為BP神經網絡,該模型信號正向傳播、誤差反向傳播。各層間信號傳遞原理一致,通過調整權值來調整相應誤差。輸入層到隱層的傳遞過程,各層間通過激勵函數進行轉換與轉移[20]。ANN模型被廣泛運用于蒸散發演變與模擬[21,22]、降水量預報[7]等。
本研究中,采用古浪站2001-2004年、其余4站2013-2016年的日氣象數據進行BP神經網絡的參數率定,采用古浪站2005年、其余站2017年數據進行參數驗證。
支持向量機(SVM)是在統計學習理論的基礎上發展起來的學習算法[23],在解決小樣本、非線性和高維模式識別問題中有許多特有的優勢,在很大程度上克服了“維數災難”和“過學習”等問題[24]。SVM與BP神經網絡類似,首先通過樣本率定期訓練模型,然后使用訓練好的模型進行預測[25],再以檢驗期檢驗模型模擬預測的精度。
假定樣本的訓練集為{(x1,y1), (x2,y2),…, (xi,yi)},xi,yi∈R。則需要求解的線性回歸函數為[4]:
f(x)=ωψ(x)+b
(2)
可通過求解風險函數的最小值來求解:
(3)
式中:ξ,ξ*分別是考慮允許擬合誤差后加入的松弛變量的上限和下限;ε為允許誤差;c為懲罰系數。
采用拉格朗日乘子法以及核函數將問題轉換為對偶形式進行求解:
(5)
(6)
(7)
將式(7)得到的解代入原方程得出SVM回歸方程f(x)為:
(8)
本文選用徑向基函數作為核函數。懲罰系數c為對誤差的寬容度,值越大表明誤差越??;核函數在公式中自帶一個參數g,該參數決定了數據映射后的分布。用SVM模型模擬時需要選擇合適的c和g才能得到相對理想的模擬結果。隨機選取參數訓練模型得到的精度不穩定,可能出現收斂速度慢或者不收斂的情況,而基于K-fold Cross Validation(K-CV)參數優化方法可以避免上述情況和過學習欠學習的發生[26]。K-CV方法的主要思想是將原始數據分為k組,每組數據分別做一次驗證集,其余k-1組子集數據作為訓練集,由此可以k個模型,該k個模型驗證集的分類準確率平均值為性能指標[27]。
選取平均絕對誤差MAE、均方根誤差RMSE、皮爾遜相關系數R(簡稱相關系數)以及確定性系數DC等指標作為模型模擬精度的評價標準。其中MAE與RMSE越接近0,R與DC越接近1代表精度越高。各指標的計算公式如下:
(9)

(10)
(11)
(12)
為探索更簡便的模擬方法并為石羊河流域周邊氣象要素缺失的站點提供參考,嘗試減少模型的輸入因子進行模擬率定和檢驗,得出結果與未減少氣象因子前進行模擬精度比較。
以平均風速、最高氣溫、平均氣溫、最低氣溫、平均相對濕度、日照時數分別建立六因子SVM模型和ANN模型,以平均氣溫、最高氣溫、最低氣溫、相對濕度建立四因子SVM模型1和ANN模型1,以平均氣溫、相對濕度、日照時數、平均風速建立四因子SVM模型2和ANN模型2,以平均風速、平均氣溫、日照時數建立三因子SVM模型1和ANN模型1,以平均溫度、日照時數、相對濕度建立三因子SVM模型2和ANN模型2,對石羊河流域的5個氣象站分別進行日尺度ET0的模擬。
基于SVM模型模擬日ET0的5站率定期與檢驗期的相關指標見表1,以古浪站為例,ET0模擬值與PM公式計算值的結果對比見圖1。
由表1可以看出,每個模型R均大于0.93,在率定期除烏鞘嶺站三因子SVM模型1DC小于0.9之外,其他模型與站點DC均大于0.9,但檢驗期有部分模型站點精度較差,其中永昌站和烏鞘嶺站的RMSE、MAE值偏大,DC值偏?。徊皇禽斎胍蜃釉蕉嗟玫降哪M精度就越好,其中以平均氣溫、日照時數、相對濕度建立的三因子SVM模型2較四因子模型和三因子SVM模型1相比各項指標精度更高。綜合表1和圖1,可知每個模型在一定的精度要求下均可進行預測模擬,為推廣使用選擇所需參數較少且精度較高的模型,在有平均風速、平均氣溫、日照時數資料時可以使用三因子SVM模型1模擬ET0,在有平均氣溫、日照時數、相對濕度資料時可以使用三因子SVM模型2模擬ET0。
基于ANN模擬的石羊河流域5個氣象站日ET0在率定期和驗證期的精度指標見表2,以古浪站為例,ET0模擬值與PM公式計算值結果對比如圖2所示。
由表2和圖2可以看出六因子輸入時,ANN模型模擬各站在率定期和檢驗期的相關系數R與DC非常接近1,MAE與RMSE值很小,各站ET0計算值與模擬值基本吻合,且六因子ANN模型比SVM模型模擬精度高。
2種四因子ANN模型和三因子ANN模型的模擬精度均較同因子數的SVM模型的模擬精度高,因此在缺少日照時數與平均風速資料時推薦使用四因子ANN模型1模擬日ET0,在缺少最高氣溫和最低氣溫資料時推薦使用四因子ANN模型2模擬日ET0;在流域站點只有平均氣溫、平均風速、日照時數資料時推薦使用三因子ANN模型1模擬日ET0,在只有平均氣溫、平均相對濕度、日照時數資料時可以使用三因子ANN模型2模擬日ET0。

表1 不同輸入因子的SVM模型評價相關指標Tab.1 Evaluation-related index of SVM models in different input factors

圖1 古浪站ET0 PM計算值與SVM模擬值對比Fig.1 The comparison of ET0 between PM calculated values and SVM simulated values in Gulang station

表2 不同輸入因子的ANN模型的評價相關指標Tab.2 Evaluation-related index of ANN models in different input factors

圖2 古浪站ET0 PM計算值與ANN模擬值對比Fig.2 The comparison of ET0 between PM calculated values and ANN simulated values in Gulang station
通過PM公式計算出石羊河流域5個氣象站的逐日ET0,建立不同輸入因子下SVM與ANN的日ET0模擬模型,結果表明兩個模型在不同輸入因子條件下模擬結果均達到了較高的精度,均可用于石羊河流域日ET0的模擬預測。在相同輸入因子條件下,ANN模型較SVM模型精度更高,且程序運行時間更短,因此推薦在石羊河流域日ET0的模擬預測時優先使用ANN模型。
本研究探索了減少輸入因子的SVM模型與ANN模型對日ET0的模擬,SVM模型精度較ANN模型精度不高可能是沒有優選合適的懲罰參數c和核函數參數g,模型存在著一定的優化空間,有待進一步的研究。每種模型都有自身的優缺點,在對某個區域進行ET0的模擬預測時,應該考慮多種因素,采用多種模型綜合比較后選擇精度較高的模型。