牛巖郭超
(1.陜西地建土地工程技術(shù)研究院有限責(zé)任公司,陜西 西安 710075;2.陜西省土地工程建設(shè)集團(tuán)有限責(zé)任公司,陜西 西安 710075;3.自然資源部退化及未利用土地整治工程重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710075)
大氣蒸發(fā)量是指在一定時段內(nèi),水分經(jīng)蒸發(fā)而散布到空中的量,通常用蒸發(fā)掉水層厚度的毫米數(shù)表示,水面水分蒸發(fā)量和土壤水分蒸發(fā)量分別用不同的蒸發(fā)器進(jìn)行測定[1,2]。一般,溫度、風(fēng)速與蒸發(fā)量呈正相關(guān),濕度、氣壓與蒸發(fā)量呈負(fù)相關(guān)。土壤蒸發(fā)量和水面蒸發(fā)量的測定,在農(nóng)業(yè)生產(chǎn)和水文工作上非常重要。雨量稀少、地下水源及流入徑流水量不多的地區(qū),如果蒸發(fā)量很大,極易發(fā)生干旱[3]。蒸發(fā)量在估算陸地蒸發(fā)、作物需水和作物水分平衡等方面具有重要的應(yīng)用價值。進(jìn)行蒸發(fā)量變化的研究,對深入了解氣候變化、探討水分循環(huán)變化規(guī)律具有十分重要的意義[4,5]。
我國國土面積963×104km2,共有2474個國家級地面氣象站,覆蓋率較低,且現(xiàn)有氣象站數(shù)據(jù)存在蒸發(fā)量缺測現(xiàn)象。以山西省太原市為例,太原市內(nèi)有7個國家級氣象站,僅太原站具有連續(xù)的日蒸發(fā)量數(shù)據(jù),因此正確認(rèn)識水面蒸發(fā)量與氣象因子之間的關(guān)系,建立適用于我國地區(qū)的區(qū)域性的水面蒸發(fā)計算模型,對水資源利用等都具有十分重要的現(xiàn)實(shí)意義[6-9]。
本文將機(jī)器學(xué)習(xí)及人工智能應(yīng)用于大氣蒸發(fā)量數(shù)據(jù)預(yù)測問題上,以富平縣2016年氣象數(shù)據(jù)和大氣蒸發(fā)量數(shù)據(jù)作為研究對象,應(yīng)用支持向量機(jī)(SVM)建立二者的關(guān)系模型,并對模型進(jìn)行驗(yàn)證。通過本文研究,可為大氣蒸發(fā)量數(shù)據(jù)預(yù)測問題提供可行方法。
機(jī)器學(xué)習(xí)研究的是計算機(jī)怎樣模擬或?qū)崿F(xiàn)人類的學(xué)習(xí)行為,以獲取新的知識或技能。20世紀(jì)90年代,俄羅斯數(shù)學(xué)家Vapnik等提出了支持向量機(jī)(Support Vector Machines,SVM)[10,11]的概念,SVM是一種根據(jù)統(tǒng)計學(xué)習(xí)理論發(fā)展出的基于數(shù)據(jù)的機(jī)器學(xué)習(xí)方法,具有結(jié)構(gòu)簡單、適應(yīng)性好、全局最優(yōu)、訓(xùn)練速度快和泛化能力強(qiáng)等優(yōu)點(diǎn)??梢哉f,20世紀(jì)90年代以來統(tǒng)計學(xué)習(xí)理論越來越受到重視,很大程度上是因?yàn)镾VM的發(fā)展[10-12]。SVM的成功包括解決數(shù)據(jù)分類問題和解決回歸問題2方面的關(guān)鍵技術(shù)[13-15],本文所采用的SVM的關(guān)鍵技術(shù)就是回歸問題的應(yīng)用,應(yīng)用粒子群算法[16]提供的交互檢驗(yàn)功能對SVM重要參數(shù)進(jìn)行算法尋優(yōu)。
LIBSVM是臺灣大學(xué)林智仁教授等開發(fā)設(shè)計的一個簡單、易于使用和快速有效的SVM模式識別與回歸的軟件包,目前,LIBSVM擁有數(shù)十種語言版本,C、Matlab、Java版本較為常用。本文采用Matlab進(jìn)行SVM的計算機(jī)實(shí)現(xiàn)。
本文所用氣象數(shù)據(jù)和大氣蒸發(fā)量數(shù)據(jù)來自于富平中試基地氣象監(jiān)測站和小型蒸發(fā)器2016年監(jiān)測數(shù)據(jù),監(jiān)測日期從2016年1月13日—12月7日,氣象數(shù)據(jù)每間隔2h采集1次,指標(biāo)包括氣壓(inHg)、太陽輻射(W·m-2)、溫度(℉)和濕度(%),蒸發(fā)量(mm)數(shù)據(jù)每日采集1次。本文以每日氣壓平均值、太陽輻射最大值、最高溫度、最低溫度、平均濕度和蒸發(fā)量數(shù)據(jù)作為研究對象,詳細(xì)監(jiān)測數(shù)據(jù)見表1。
表1 2016年富平縣氣象數(shù)據(jù)及蒸發(fā)量數(shù)據(jù)
富平中試基地位于陜西省中部富平縣,富平縣地處E108°57′~109°26′,N34°42′~35°06′,是關(guān)中平原和陜北高原的過渡地帶,屬于渭北黃土高原溝壑區(qū),總土地面積為1233km2。富平縣屬暖溫帶半干旱型大陸性季風(fēng)氣候,總體氣候特征為光照充足、氣候溫和、降水適中、雨熱同期、四季分明。年均氣溫13.1℃,日照時數(shù)2472h,無霜期為225d,光熱資源豐富。年均降水量533.2mm,季節(jié)空間分布不均,7—9月3個月達(dá)282mm,占總量的53%,且多以暴雨形式出現(xiàn),冬季僅15.8mm,空間上由北向南遞減,南北相差122.7mm,氣象災(zāi)害有干旱、大風(fēng)、冰雹、連陰雨、霜凍、干熱風(fēng)、暴雨,是限制富平縣氣候資源充分利用的主要?dú)庀笠蛩?,以多年出現(xiàn)的氣象天數(shù)統(tǒng)計,干旱78%,連陰雨13%,大風(fēng)6%,干熱風(fēng)2%,冰雹0.6%,暴雨0.3%,霜凍0.2%。
采用SVM進(jìn)行數(shù)據(jù)訓(xùn)練及預(yù)測首先需要確定訓(xùn)練學(xué)習(xí)樣本及預(yù)測檢驗(yàn)樣本。訓(xùn)練學(xué)習(xí)樣本用于SVM進(jìn)行學(xué)習(xí)訓(xùn)練以確定自變量和因變量之間的模型,預(yù)測檢驗(yàn)樣本用于模型的驗(yàn)證及誤差分析。本文采用Matlab隨機(jī)函數(shù)隨機(jī)確定15個序號,對應(yīng)的數(shù)據(jù)作為預(yù)測檢驗(yàn)樣本,其余315組數(shù)據(jù)作為訓(xùn)練學(xué)習(xí)樣本。預(yù)測檢驗(yàn)樣本見表2。
表2 預(yù)測檢驗(yàn)樣本
利用SVM進(jìn)行數(shù)據(jù)學(xué)習(xí)訓(xùn)練時,在參數(shù)的選取上具有高度依賴性,對核函數(shù)的選取和懲罰因子的設(shè)定都有著極高的要求,同時,針對不同的數(shù)據(jù)集,需要設(shè)定不同的參數(shù)來契合數(shù)據(jù)集[17,18]。
為了解決SVM參數(shù)設(shè)定的問題,將粒子群算法與SVM相結(jié)合,利用粒子群算法的粒子游走來優(yōu)化SVM的參數(shù)[19,20]。此過程在Matlab中實(shí)現(xiàn),優(yōu)化結(jié)果見圖1。優(yōu)化得到的最佳c值為3.64,最佳g值為0.01,參數(shù)c為懲罰系數(shù),即對誤差的寬容度,值越高說明越能容忍出現(xiàn)誤差,g為核函數(shù)參數(shù)。
圖1 粒子群算法優(yōu)化SVM參數(shù)結(jié)果圖
確定了訓(xùn)練學(xué)習(xí)樣本、預(yù)測檢驗(yàn)樣本及SVM參數(shù)后,應(yīng)用SVMsvmtrain函數(shù)對訓(xùn)練學(xué)習(xí)樣本進(jìn)行訓(xùn)練得到模型,其中訓(xùn)練學(xué)習(xí)樣本的氣壓平均值、太陽輻射最大值、最高溫度、最低溫度、平均濕度作為自變量,大氣蒸發(fā)量作為因變量。應(yīng)用SVM的svmpredict函數(shù)對預(yù)測檢驗(yàn)樣本進(jìn)行預(yù)測,得到大氣蒸發(fā)量的預(yù)測值,并對15組檢驗(yàn)學(xué)習(xí)樣本的蒸發(fā)量理論值和預(yù)測值進(jìn)行誤差分析,預(yù)測結(jié)果及相對誤差見表3。
表3 檢驗(yàn)樣本的預(yù)測值和相對誤差表
圖2為15組預(yù)測檢驗(yàn)樣本理論值與預(yù)測值對比圖,圖3為15組預(yù)測檢驗(yàn)樣本預(yù)測值與理論值相對誤差分布圖。
圖2 15組預(yù)測檢驗(yàn)樣本理論值、預(yù)測值對比圖
圖3 15組預(yù)測檢驗(yàn)樣本相對誤差分布圖
綜合圖2、圖3可以看出,應(yīng)用SVM對大氣蒸發(fā)量進(jìn)行預(yù)測,得到的預(yù)測值與理論值趨勢線基本吻合。15組數(shù)據(jù)的相對誤差都在30%以內(nèi),其中60%的預(yù)測檢驗(yàn)樣本(9組)相對誤差小于10%,87%的預(yù)測檢驗(yàn)樣本(13組)相對誤差小于20%,僅有2組預(yù)測檢驗(yàn)樣本相對誤差達(dá)到20.22%和25.25%。目前預(yù)測值精度分級[21]的一般原則見表4,表中MAPE為平均絕對百分比誤差,計算公式:
表4 一般預(yù)測精度劃分表
式中,n為樣本數(shù)據(jù)個數(shù);pi為相對百分比誤差,%。
由表3數(shù)據(jù)計算得出,15組預(yù)測檢驗(yàn)樣本平均絕對百分比誤差(MAPE)為9.95%<10%,說明預(yù)測模型屬于高精度預(yù)測。
大氣蒸發(fā)量數(shù)據(jù)對于水資源利用問題有很重要的參考意義。在日常監(jiān)測工作中,由于極端天氣或設(shè)備問題會導(dǎo)致數(shù)據(jù)缺測現(xiàn)象。本文針對此問題,提出應(yīng)用支持向量機(jī)預(yù)測大氣蒸發(fā)量的方法。通過本文的研究,得出以下結(jié)論。
應(yīng)用支持向量機(jī)建立包括氣壓、太陽輻射、溫度和濕度在內(nèi)的氣象因子和大氣蒸發(fā)量之間的關(guān)系模型,對15組數(shù)據(jù)進(jìn)行預(yù)測,并與實(shí)際觀測值進(jìn)行對比,結(jié)果顯示,15組數(shù)據(jù)的相對誤差都在30%以內(nèi),其中60%的預(yù)測檢驗(yàn)樣本(9組)相對誤差小于10%,87%的預(yù)測檢驗(yàn)樣本(13組)相對誤差小于20%,僅有2組預(yù)測檢驗(yàn)樣本相對誤差達(dá)到20.22%和25.25%。
應(yīng)用粒子群算法對支持向量機(jī)內(nèi)置參數(shù)c和g進(jìn)行優(yōu)化,得到最佳c值為3.64,最佳g值為0.01。
用平均絕對百分比誤差(MAPE)對預(yù)測結(jié)果進(jìn)行評價,結(jié)果顯示15組檢驗(yàn)樣本的平均絕對百分比誤差為9.95%,根據(jù)一般預(yù)測精度劃分表得出預(yù)測模型屬于高精度預(yù)測水平。
結(jié)論顯示,提出的應(yīng)用支持向量機(jī)預(yù)測大氣蒸發(fā)量的方法可行且有效,這對水利工程設(shè)計、農(nóng)林牧業(yè)土壤改良、土壤水分調(diào)節(jié)、灌溉定額制定以及研究水分資源、制定氣候區(qū)劃等方面都具有重要的意義。在今后的工作中,還將針對樣本的選擇范圍以及支持向量機(jī)參數(shù)優(yōu)化的方法進(jìn)行進(jìn)一步深入研究。