劉宏超, 馬俊杰, 李 韌
(1.蘭州大學大氣科學學院半干旱氣候變化教育部重點實驗室,甘肅蘭州730000;2.中國科學院西北生態(tài)環(huán)境資源研究院冰凍圈科學國家重點實驗室/青藏高原冰凍圈觀測研究站,甘肅蘭州730000;3.中國科學院大學,北京100049)
青藏高原平均海拔高度4 000 m以上,在中國境內(nèi)部分西起帕米爾高原,東至橫斷山脈,橫跨31個經(jīng)度;南至喜馬拉雅山脈南緣,北迄昆侖山-祁連山北側(cè),縱貫約13個緯度[1]。青藏高原以其高大的地形隆升于周圍大氣之中,其強大的熱力和動力作用直接作用于對流層中層,由于其獨特的環(huán)流特征,青藏高原對亞洲季風的形成和演化具有十分重要的作用,進而對我國乃至全球的氣候系統(tǒng)都有著重要的影響[2-4]。較高的海拔和獨特的地形地貌特征使得青藏高原成為我國冰凍圈的主要分布區(qū)[5],其多年凍土總面積約為106萬平方公里[6]。多年凍土作為氣候的產(chǎn)物,氣候變化對多年凍土活動層凍融過程有著很大的影響;而與此同時,多年凍土也是氣候變化的指示器,土壤溫濕度的變化通過改變地表和大氣間的能量和水分交換來顯著影響當?shù)睾蜄|亞的氣候系統(tǒng)[7-8]。而活動層作為大氣與多年凍土之間的紐帶,其變化不僅影響自身的水熱力性質(zhì),而且對水循環(huán)[9]、能量交換[10]、碳循環(huán)[11]、生態(tài)系統(tǒng)[12]及氣候系統(tǒng)[13]等都產(chǎn)生重要的影響。
自20世紀以來,以氣候變暖為主要特征的全球變化在青藏高原及周邊地區(qū)表現(xiàn)尤為凸出[14],青藏高原地區(qū)升溫速率是同期全球升溫的兩倍以上[15],且降水量不斷增加[16]。青藏高原氣候的不斷變暖引發(fā)了多年凍土的退化,進而對活動層水熱過程產(chǎn)生了影響[17-18]。水熱過程的改變對于陸氣間能量和水分交換、地表感熱、潛熱輸送、水循環(huán)過程及生態(tài)環(huán)境等都會產(chǎn)生重要影響[19]??梢?,活動層水熱變化過程對陸面過程的研究意義較大[20]。目前,許多學者針對青藏高原活動層水熱變化開展了大量的研究??偟膩碚f,這些研究可以分為兩個方面:一類是針對觀測站點實測資料的分析[21-22];另一類是使用模型模擬來分析活動層水熱過程的變化[23-24]。然而青藏高原地區(qū)地形復(fù)雜,下墊面種類復(fù)雜多樣,基于實測資料的研究分析雖然能夠準確獲取活動層水熱分布特征,但卻因監(jiān)測站點數(shù)目有限,無法開展大范圍的研究。因此,模型模擬成為了研究人員較為常用的手段。但是,由于凍融過程中水熱過程極為復(fù)雜,水分在相變過程中會釋放或吸收大量熱量,從而影響土壤溫度的變化,二者之間相互影響,使得相關(guān)研究十分困難[25-26]。目前陸面模式中還沒有較為合適的土壤水分遷移方案,因此許多模式中關(guān)于土壤水分的模擬結(jié)果偏差較大,并且大多數(shù)模式中還需要輸入一些較難獲取的土壤質(zhì)地及下墊面參數(shù)信息,這些都給青藏高原地區(qū)活動層水熱過程的研究帶來了困難。
KNN(K-Nearest Neighbor)算法作為一種信息處理手段,在分類與回歸算法領(lǐng)域占有重要的位置,被廣泛的應(yīng)用在機器學習[27]、數(shù)據(jù)挖掘[28]、文本分類[29]等領(lǐng)域。作為一種用于分類和回歸的機器學習算法之一,KNN算法非常有效和易于實現(xiàn)。本研究著眼于青藏高原多年凍土區(qū),基于KNN算法,建立了一個氣象數(shù)據(jù)的回歸模型,對青藏高原多年凍土區(qū)活動層表層土壤水熱過程進行模擬,并對該模型的模擬效果進行了評估。希望能夠?qū)η嗖馗咴嗄陜鐾羺^(qū)水熱過程研究提供一種新的研究思路,并為相關(guān)研究提供一定的參考。
本文研究區(qū)域選擇在青藏高原多年凍土區(qū)唐古拉綜合觀測場(33°04′N,91°56′E),海拔高度5 100 m,位于唐古拉山埡口西南部的一個平緩的坡地上,屬于典型連續(xù)多年凍土區(qū),下墊面類型為高寒草甸,成團簇狀,高度較低矮,一年中最高約為10 cm,植被覆蓋度約為20%~30%左右[30]。其年平均氣溫為4.9℃,極端最高溫為17.6℃,極端最低溫為-29.6℃,年平均氣壓為538 hPa,年均降水量為436.7 mm,降水主要集中在5月至9月,此期間降水量約占全年降水總量的92%,降水強度以小型降水為主[31]。
本次模擬研究所選用的數(shù)據(jù)資料來自于中國科學院青藏高原冰凍圈觀測研究站唐古拉綜合觀測場的2004年至2012年氣象觀測資料。氣象觀測資料所包含的觀測要素有雪深、降水、氣溫、輻射量、空氣濕度、風速、土壤熱通量、土壤溫度、土壤濕度等。觀測儀器信息及安裝高度等如表1所示。
K鄰近法,或者說K最近鄰(KNN)算法,是一種分類和回歸方法,在機器學習中,它是懶惰學習(lazy learning)的代表。本文將KNN算法應(yīng)用于對氣象數(shù)據(jù)的回歸,以期對青藏高原多年凍土區(qū)表層土壤的水熱狀況進行模擬預(yù)測。其基本思路是采用平均法,在樣本集合空間中,找出與預(yù)測樣本A的曼哈頓距離小于S的最近的K個鄰居,對這K個鄰居的屬性進行平均得到的結(jié)果,作為預(yù)測樣本A的屬性值。S值是設(shè)定的一個閾值,其目的是防止出現(xiàn)較大的偏差。
本文中的具體算法流程如圖1所示:
圖1 KNN模型算法示意圖Fig.1 Diagram of the KNN model structural
在將KNN算法應(yīng)用于青藏高原多年凍土區(qū)表層土壤的氣象要素的回歸中,以5 cm深度土壤溫度為例,具體的做法是將預(yù)測樣本A輸入到模型中,計算多維情況下訓(xùn)練集各個樣本到預(yù)測樣本A的曼哈頓距離,將曼哈頓距離小于設(shè)定的S值的K個最近樣本視為預(yù)測樣本A的鄰近樣本,計算這些鄰近樣本5 cm深度土壤溫度,以此作為模型對樣本A的預(yù)測值。
如果以X代表訓(xùn)練樣本集,則
對X中的每一個樣本xi,有
對于預(yù)測樣本A,則有:
若以樣本的第一個要素表示5 cm深度土壤溫度,即a1代表預(yù)測樣本A的5 cm深度土壤溫度,則求取X中每一樣本到A的曼哈頓距離得出集合L:
對L進行排序得到L':
模型的模擬值a'1為:
式中:K值為設(shè)定選取的最近鄰樣本數(shù)量。
需要指出的是,在模型搭建過程中,S值的取值很關(guān)鍵,過大或者過小都有可能造成結(jié)果的偏差甚至模型搭建的失敗。在本文中,當S值取一固定值時,會出現(xiàn)個別預(yù)測樣本沒有鄰近樣本的情況,此時若增大S值會導(dǎo)致其余樣本預(yù)測偏差增大,由于需要對連續(xù)時間序列的要素進行預(yù)測,故而本文采用了可變S值,這是對傳統(tǒng)KNN方法的一種改進。
如圖2所示,本文首先對中國科學院青藏高原冰凍圈觀測研究站唐古拉綜合觀測場的2004年至2012年氣象觀測資料進行了預(yù)處理。具體做法是:將每一日的各要素觀測數(shù)據(jù)作為一個樣本,樣本中任何一個要素觀測值缺測即將該樣本視為缺測樣本,剔除了缺測日數(shù)后共得到3 009個有效樣本。為了去除2005年數(shù)據(jù)對模型模擬結(jié)果的影響,從預(yù)處理數(shù)據(jù)中剔除了2005年的365個樣本后,剩余2 644個樣本作為模型驗證樣本集。從模型驗證樣本集中隨機抽取80%的樣本構(gòu)成了訓(xùn)練集,剩余的20%構(gòu)成了測試集。
圖2 樣本構(gòu)建示意圖Fig.2 Diagram of the sample construction
利用模型對測試集的樣本進行模擬,模擬的5 cm深度的土壤溫度與觀測數(shù)值的偏差分布如圖3所示。模型模擬5 cm深度的土壤溫度的最大正偏差為4.17℃,最大負偏差為-3.77℃,平均偏差為0.015℃,方差為1.12,模型模擬的5 cm深度的土壤溫度與觀測數(shù)值的相關(guān)系數(shù)為0.98。從圖2可以看出,模型模擬偏差的絕對值主要集中在1℃以內(nèi),約占總數(shù)的86.4%;偏差絕對值在2℃以上的僅有約1.7%。如果將模型模擬結(jié)果偏差2℃以內(nèi)的結(jié)果視為正確的話,那么該模型的模擬準確率在98.3%,可以認為該模型準確有效。
圖3 模型模擬偏差Fig.3 Model simulation bias
2.4.1 統(tǒng)計參數(shù)
模型模擬的結(jié)果好壞可以根據(jù)一些統(tǒng)計參數(shù)進行評估,相關(guān)系數(shù)CC(correlation coefficient)和均方根誤差RMSD(root-mean-square deviation)是最常用的方法[32]。平均偏差MBE(mean bias error)反映的是模擬值與觀測值之間的偏離程度,而標準差SD(standard deviation)則代表了一個數(shù)據(jù)集數(shù)據(jù)分布的離散程度。這些統(tǒng)計參數(shù)的表達式為:
式中:Xi、Yi分別為模型預(yù)測值與觀測值;N為樣本容量分別為模型預(yù)測值與觀測值的期望值,在這里以其平均值代替。當模型效果理想時,應(yīng)有CC=1,RMSD=0,SD(X)=SD(Y)。根據(jù)已有研究,在進行模型效果檢驗時,當相關(guān)系數(shù)CC達到0.6時,可以認為模型的預(yù)測是成功的[33]。
2.4.2 泰勒圖
泰勒圖能夠?qū)⒛P湍M結(jié)果與實測數(shù)據(jù)的標準差、均方根誤差和相關(guān)系數(shù)在一張圖上顯示出來[34]。泰勒圖可以比較直觀地反映出模型模擬的效果的好壞,在泰勒圖上,模擬結(jié)果至原點的距離代表了其標準差,方位角的余弦值代表了與觀測值的相關(guān)系數(shù),模擬結(jié)果至觀測值之間的距離則代表了兩者的均方根誤差。
土壤溫度模擬是陸面過程模擬的重要部分,其模擬的準確性與精度對大氣與土壤間的物質(zhì)和能量交換過程的理解至關(guān)重要。圖4給出了基于KNN機器學習模擬唐古拉活動層表層土壤(5~40 cm)溫度與實測值之間的對比圖。由圖中可以看出,在不同深度,KNN模型模擬的土壤溫度模擬值與實測值的跟隨性都較好,成功地模擬出了表層土壤溫度的年周期變化趨勢。另外,不同深度的土壤溫度在月尺度與旬尺度上模型模擬的效果較好,能較為精確地刻畫出短周期內(nèi)土壤溫度的波動,這表明土壤溫度的模擬是成功的。
圖4 不同深度土壤溫度實測值(Obs)與KNN模擬值(KNN)對比Fig.4 Comparison of observed soil temperature(Obs)and KNN simulated value(KNN)at different depths
然而,值得注意的是,12月初至2月底和6月中旬至8月中旬這兩個時間段的模型模擬效果不是很理想。以5 cm深處的土壤溫度為例,12月初至2月底時間段內(nèi),模型的模擬值與觀測值相比明顯偏大,該時段平均誤差為0.93℃,均方根誤差為1.45℃,而全年的平均誤差僅為0.39℃,均方根誤差為1.19℃;6月中旬至8月中旬時間段內(nèi),月尺度與旬尺度的土壤溫度波動未能很好地模擬,模擬值比實測值偏低,該時段平均誤差為-0.20℃,均方根誤差為0.79℃。對其原因進行分析,12月初至2月底和6月中旬至8月中旬這兩個時間段,5 cm深度土壤溫度的模擬值較年平均值分別偏高0.54℃與偏低0.59℃,可能與KNN算法模型的設(shè)計有關(guān)。這兩個時期是全年5 cm深度土壤溫度的最低(最高)時間段,K臨近算法在篩選出給定樣本的鄰近樣本后,在對目標要素(5 cm深度土壤溫度)進行回歸模擬時采用的方法是對鄰近樣本的屬性進行平均,這會不可避免地造成極低(極高)值向平均值偏移。所以該模型在極值模擬的方面會存在一些缺陷,這也是下一步將要優(yōu)化的內(nèi)容。與模型模擬的全年5 cm深度土壤溫度的均方根誤差1.19℃相比,12月初至2月底的均方根誤差偏大,而6月中旬至8月中旬的均方根誤差偏小,這可能是后一時期的K鄰近樣本較多而前一時期的K近鄰樣本較少造成的。12月初至2月底和6月中旬至8月中旬這兩個時間段5 cm深度實測土壤溫度的平均值分別為-9.84℃、7.98℃,統(tǒng)計整個數(shù)據(jù)集中5 cm深度土壤溫度在(-9.84±1.00)℃與(7.98±1.00)℃范圍內(nèi)的數(shù)據(jù),其有效樣本分別為222與125。由此可以看出樣本集的容量對于KNN模型模擬結(jié)果的好壞有十分重要的影響,更大容量的樣本集能降低KNN模型模擬結(jié)果的均方根誤差,較小容量的樣本集在進行KNN模型模擬時,則會因為K鄰近樣本的數(shù)量較少而產(chǎn)生比較大的誤差。
總體可以認為,本研究中基于KNN機器學習所建立的模型可以非常好地對唐古拉地區(qū)活動層表層土壤溫度進行模擬。
多年凍土區(qū)活動層土壤水分是陸面過程的重要參量,它對地氣熱量交換、感熱、潛熱等都有重要影響,同時也對土壤溫度有較大影響,因此,土壤水分的模擬也是陸面過程的重要研究內(nèi)容[35]。圖5為不同深度土壤體積含水量模擬值與實測值的對比圖,由圖中實測土壤水分曲線可以看出,冬春季不同深度土壤水分較低,而夏秋季節(jié)土壤水分較高。由春季至夏季,由于溫度升高,導(dǎo)致表層土壤逐漸由凍結(jié)狀態(tài)融化成未凍狀態(tài)產(chǎn)生液態(tài)水,凍土的融化與雨季的到來共同造成了表層土壤含水量的逐漸升高[36]。夏秋季節(jié),由于降水頻繁,導(dǎo)致土壤水分較高,波動較大,這與唐古拉地區(qū)雨季區(qū)間相符,可見降水對表層土壤水分有較為顯著的影響。
圖5 不同深度土壤水分實測值(Obs)與KNN模擬值(KNN)對比Fig.5 Comparison of observed soil moisture(Obs)and KNN simulated value(KNN)at different depths
KNN模型不同深度土壤濕度的模擬值與觀測值趨勢較為一致,在冬春季模擬效果較好,數(shù)值上也較為吻合,兩條曲線基本重合。但在5月至9月,5 cm深度土壤水分模擬與觀測的平均值分別是0.190 m3·m-3與0.193 m3·m-3,模擬值的平均偏差-0.0026 m3·m-3與全年的平均偏差0.0029 m3·m-3相比有所偏低,造成該現(xiàn)象的原因與本文中土壤溫度模擬偏差的原因一致。從均方根誤差來看,KNN模型對5 cm深度土壤水分模擬結(jié)果的均方根誤差是0.029 m3·m-3與全年均方根誤差0.021 m3·m-3相比略有偏大,表明5月至9月的模擬效果確實略有降低。這可能是由于表層土壤水分受外界降水影響較大,而該方法沒有較好的捕捉到這一信息,因此導(dǎo)致模擬效果不如凍結(jié)期理想。然而考慮到土壤水分和溫度相互影響,水熱耦合機理認識尚不明確,土壤水分遷移機理復(fù)雜,所以對土壤水分的模擬較為困難。對10 cm、20 cm深度土壤水分的模擬結(jié)果與5 cm深度的情形相似,需要說明的是,隨著深度的增加模擬的效果(平均偏差、均方根誤差)并沒有逐漸變差的趨勢。
目前許多陸面模式并不能很好地模擬土壤水分的年變化特征[31,37],KNN模型對表層土壤水分的模擬效果相較于大多陸面模式已有相當程度的提高,今后改善KNN模型對土壤水分模擬效果的工作或許可以從引入額外相關(guān)變量、配置適當權(quán)重、提高樣本量等方面著手。
3.3.1 土壤溫度
圖6 ~7給出了不同深度土壤溫度模擬值與觀測值之間的誤差分析情況。由圖6不同深度土壤溫度模擬值與觀測值散點圖比較中可以看出,不同深度土壤溫度的模擬值與觀測值十分吻合,均較為集中地分布在1∶1線附近,模擬效果較為理想。從圖7中各統(tǒng)計指標的泰勒圖中可以看出,不同深度土壤溫度的模擬值與觀測值的相關(guān)系數(shù)都非常高,均處于0.99以上水平,均方根誤差也都在1℃附近。另外,不同深度土壤溫度的模擬值與觀測值的各統(tǒng)計指標均波動不大,說明模擬效果十分穩(wěn)定。從圖7(a)~7(d)中還可以看到,隨著土壤深度的增加,無論觀測值還是模擬值,其自身的標準差都在減少,也即數(shù)據(jù)本身的離散程度在減少,這可能是由于隨著土壤深度的增加,土壤溫度對外界環(huán)境變化(如氣溫、輻射等)的響應(yīng)程度在減少。這點從圖6中不同深度土壤的模擬值與觀測值的散點圖中也可以看出,隨著土壤深度的增加,數(shù)據(jù)的分布更為集中,土壤溫度的波動范圍在減少。
圖6 不同深度土壤溫度模擬值與觀測值散點圖Fig.6 Scatter plots of simulated and observed soil temperature at different depths
圖7 不同深度土壤溫度模擬值與觀測值的統(tǒng)計指標泰勒圖Fig.7 Taylor plots for statistical indicators of simulated and observed soil temperature at different depths
3.3.2 土壤水分
圖8 ~9給出了不同深度土壤水分模擬值與觀測值的誤差分析情況,由圖8中不同深度土壤水分模擬值與觀測值散點圖可以看出,KNN機器學習方法對土壤水分的模擬是成功的,都較為集中的分布在1∶1線兩側(cè),但是在土壤體積含水量處于0.15 m3·m-3附近時,分布較為散亂,誤差相對較大。從圖9的統(tǒng)計指標的泰勒圖中可以看出,不同深度土壤水分的模擬值與觀測值的相關(guān)系數(shù)都在0.95以上,均方根誤差都在0.02 m3·m-3左右,與土壤溫度不同的是,隨著土壤深度的增加,模擬值與觀測值的標準差都在增加,這可能是由于表層土壤水分受下層土壤水分的影響較大的原因。另外,從泰勒圖中可以看到,不同深度土壤水分的模擬值與觀測值的統(tǒng)計指標都相差不大,這也反映了模型模擬的效果較為穩(wěn)定。
圖8 不同深度土壤濕度模擬值與觀測值散點圖Fig.8 Scatter plots of simulated and observed soil moisture at different depths
圖9 不同深度土壤水分模擬值與觀測值的統(tǒng)計指標泰勒圖Fig.9 Taylor plots for statistical indicators of simulated and observed soil moisture at different depths
土壤溫濕度的模擬是陸面過程研究的熱點,已有多位研究者采用了不同的模型來對青藏高原多年凍土區(qū)土壤溫濕度進行模擬[24,38]。許多學者利用SHAW模型來模擬土壤溫度變化特征,然而在SHAW模型中,植被信息、地表反照率等輸入變量的的偏差都會對輸出結(jié)果有很大影響[31]。GIPL2模型由于對土壤溫度模擬效果較好,同樣得到了許多學者的青睞,然而該模型同樣需要輸入植被類型信息,土壤熱導(dǎo)率參數(shù)如導(dǎo)熱率和體積熱容等[39]。本研究基于KNN算法,建立了一個氣象數(shù)據(jù)的回歸模型,對青藏高原多年凍土區(qū)水熱過程進行了模擬,并對該模型的模擬效果進行了評估。統(tǒng)計整理有關(guān)唐古拉地區(qū)水熱過程其他陸面模式的模擬結(jié)果并同本文的模擬結(jié)果進行了比較(表2),可以看出本文對土壤溫濕度的模擬效果還是較為理想的。另外,值得注意的是,作為一種新的研究思路,本模型的搭建相比于其他陸面模式來說更為快捷高效,且只需輸入較易獲得的氣象參數(shù),不需要輸入研究站點的植被及土壤質(zhì)地等信息,操作方法簡便,運行速度快。這在下墊面類型復(fù)雜且缺乏土壤質(zhì)地等信息的青藏高原地區(qū)不失為一種較為理想的方法。
表2 本文模型與其他模型模擬相關(guān)系數(shù)比較Table 2 Comparison of correlation coefficients between the model in this paper and other models
然而,KNN模型還存在一定的缺陷,主要體現(xiàn)在以下幾個方面:首先,該方法需要有一個較長時間段的數(shù)據(jù)來作為樣本進行訓(xùn)練和測試;其次,由于該模型對歷史數(shù)據(jù)有較強的依賴性,無法較好地對極值進行模擬;最后,本文只針對唐古拉地區(qū)進行了模型的適用性分析,在其他站點是否能夠很好的模擬還有待于進一步的分析驗證。
本文的研究中,利用唐古拉站2004—2012年氣象站觀測資料,基于KNN算法,建立了一個氣象數(shù)據(jù)的回歸模型,對2005年表層土壤溫濕度進行了模擬試驗,并對模型模擬結(jié)果進行了評估分析,將模擬值與觀測值對比,得出以下結(jié)論:
(1)KNN機器學習模型能夠很好地模擬唐古拉地區(qū)表層土壤溫度,不同深度土壤溫度的模擬值與觀測值的相關(guān)系數(shù)均達到了0.99以上,均方根誤差都在1.25℃以內(nèi),對其年內(nèi)變化趨勢及數(shù)值上均能很好的模擬再現(xiàn)。這在缺乏某一時間段觀測資料的情況下,KNN模型模擬結(jié)果能夠作為一種較為理想的替代資料。
(2)在土壤水分的模擬試驗中,KNN機器學習模型能夠較好地模擬表層土壤水分的年變化特征,不同深度土壤濕度的模擬值與實測值的相關(guān)系數(shù)均達到了0.95以上,均方根誤差均在0.02 m3·m-3以內(nèi)。但在融化期的模擬效果不如凍結(jié)期,這可能是由于該模型沒有很好地捕捉到外界降水對土壤水分的影響,下一步可以嘗試通過優(yōu)化降水量對土壤水分影響的權(quán)重來提高模型模擬精度。
總之,KNN算法模型能夠很好地應(yīng)用于氣象數(shù)據(jù)的回歸模擬,其模擬的趨勢與精度都較為理想,模擬結(jié)果具有很高的參考價值。同時,該模型還具有一定的優(yōu)化空間,在最優(yōu)K值設(shè)定、權(quán)重優(yōu)化等方面還需要進一步的探索。下一步工作將主要放在模型的改進及模型在其他地區(qū)的適用性驗證上。