左炳昕,查元源
(武漢大學(xué)水資源與水電工程科學(xué)國家重點實驗室,武漢430072)
【研究意義】農(nóng)業(yè)水肥管理、作物模型估產(chǎn)、陸面模型建模、生態(tài)環(huán)境治理與修復(fù)等,都離不開土壤水分狀態(tài)及運動過程的準確描述與預(yù)測[1-2]。土壤水分特征曲線和水力傳導(dǎo)度(又稱為滲透系數(shù))曲線,作為描述土壤水力性質(zhì)最基本的2 條曲線,在非飽和土壤的物理、化學(xué)、生物過程的定量化描述中起著基礎(chǔ)性的作用[3]。某含水率下的相對水力傳導(dǎo)度為該含水率下的(絕對)水力傳導(dǎo)度與飽和水力傳導(dǎo)度的比。研究表明,相對水力傳導(dǎo)度是可以由土壤水分特征曲線推導(dǎo)得到,所以,水力傳導(dǎo)度曲線可以由土壤水分特征曲線與飽和水力傳導(dǎo)度確定。因此,土壤水力參數(shù)可以認為由土壤水分特征曲線參數(shù)與飽和水力傳導(dǎo)度組成。土壤水力參數(shù)的直接測量要么昂貴費時費力,要么適用性有限。間接法通常包括土壤轉(zhuǎn)換函數(shù)(PedoTransfer Functions,PTF)、分形方法、土壤形態(tài)學(xué)方法、數(shù)值反演方法、經(jīng)驗公式法等[4]。其中,土壤轉(zhuǎn)換函數(shù)模型只需要輸入土壤粒徑信息、體積質(zhì)量、有機質(zhì)量等簡單易得的物理量,就可以估算土壤水力參數(shù),簡單方便,大大降低了土壤水力參數(shù)獲取的時間成本和操作難度,因而得到了廣泛使用。
【研究進展】在土壤水力參數(shù)簡便獲取方法的探索中,20 世紀初期,Briggs 等[5]研究了易獲得的數(shù)據(jù)和待預(yù)測數(shù)據(jù)之間的關(guān)系。20 世紀80 年代后,隨著新的土壤水分特征曲線模型的提出,土壤參數(shù)獲取方法的研究也更為廣泛。Bouma 等[6]首次提出了土壤轉(zhuǎn)換函數(shù)的概念,Bouma[7]與Hamblin[8]將土壤轉(zhuǎn)換函數(shù)表述為土壤較易測量的數(shù)據(jù)與難以測量的數(shù)據(jù)之間的函數(shù)關(guān)系。
建立土壤轉(zhuǎn)換函數(shù)的方法主要包括線性回歸、非線性回歸、人工神經(jīng)網(wǎng)絡(luò)等。這些方法中,以神經(jīng)網(wǎng)絡(luò)方法應(yīng)用最廣,很大程度是神經(jīng)網(wǎng)絡(luò)不需要預(yù)先設(shè)定函數(shù)的形式(如指數(shù)形式等),預(yù)測精度比較高等原因。近年來也有采用新的方法建立土壤轉(zhuǎn)換函數(shù),如最近鄰居法、支持向量機、多尺度貝葉斯神經(jīng)網(wǎng)絡(luò)等。
Nemes 等[9]使用分層的預(yù)測變量集,基于最近鄰居法,預(yù)測了330cm 與15000cm 負壓下的含水率。Lamorski 等[10]基于支持向量機(機器學(xué)習(xí)領(lǐng)域替代性的數(shù)據(jù)驅(qū)動的方法),提高了模型的效率。Zhang 等[11]使用加權(quán)改進的神經(jīng)網(wǎng)絡(luò)算法建立了適用于全球的土壤轉(zhuǎn)換函數(shù)。關(guān)于土壤轉(zhuǎn)換函數(shù),國內(nèi)也做了很多研究[12-15]。
【切入點】雖然土壤轉(zhuǎn)換函數(shù)的研究較多,但不同研究在建立土壤轉(zhuǎn)換函數(shù)時所使用的數(shù)據(jù)集不同。由于缺乏物理基礎(chǔ),以及在建模時使用的數(shù)據(jù)有限,土壤轉(zhuǎn)換函數(shù)在應(yīng)用時應(yīng)注意其適用性。例如,Gijsman 等[16]比較了8 種土壤轉(zhuǎn)換函數(shù),由于構(gòu)建模型的數(shù)據(jù)來自不同地區(qū),不同土壤轉(zhuǎn)換函數(shù)模型的預(yù)測效果顯示出了明顯的差異。因此,使用同一數(shù)據(jù)集定量比較建立土壤轉(zhuǎn)換函數(shù)的方法,對于建立合理高效的土壤轉(zhuǎn)換函數(shù)模型,具有重要意義。
【擬解決的關(guān)鍵問題】本研究采用UNSODA 數(shù)據(jù)庫中土壤樣品的基本性質(zhì)數(shù)據(jù)(包括土壤砂粒、粉粒、黏粒百分比、土壤體積質(zhì)量)作為土壤轉(zhuǎn)換函數(shù)的輸入項;利用van Genuchten(簡稱VG)模型[17]擬合土壤含水率-負壓數(shù)據(jù)(土壤基本性質(zhì)相對應(yīng)的數(shù)據(jù))得到VG 參數(shù)作為模型的輸出項,采用多種機器學(xué)習(xí)方法,建立土壤樣品的基本性質(zhì)數(shù)據(jù)與VG 模型參數(shù)之間的關(guān)系,對比不同機器學(xué)習(xí)方法的預(yù)測效果,并討論其計算效率。
本文采用全球土壤非飽和水力性質(zhì)數(shù)據(jù)庫UNSODA(UNsaturatedSOilDAtabase)。該數(shù)據(jù)庫記錄了野外場地條件和實驗室條件下的土壤樣本的含水率、負壓、非飽和水力傳導(dǎo)度、擴散度等關(guān)系,以及相對應(yīng)的土壤理化性質(zhì)指標,如土壤粒徑分布、土壤顆粒密度、體積質(zhì)量、有機質(zhì)量、pH 值、陽離子交換量等。由于其樣品空間分布范圍廣、樣品數(shù)量多、土壤質(zhì)地類型豐富等特點,常用于分析土壤物理基本性質(zhì)[18]。
本文整理了UNSODA 數(shù)據(jù)庫中實驗室條件下測得的含有8 個以上含水率-負壓數(shù)據(jù)且包含一個330 cm 以上負壓值的土壤樣品(以保證土壤樣本不被過度擬合,且在田間持水率以下有一個代表性的數(shù)據(jù)點);在此基礎(chǔ)上篩選出其中可以提取到質(zhì)地信息和土壤體積質(zhì)量信息的土壤樣本,并剔除其中含有明顯錯誤數(shù)據(jù)的樣本(θ-h 數(shù)據(jù)對明顯為異常值),得到篩選后的樣本共計408 個,其中包含飽和水力傳導(dǎo)度Ks數(shù)據(jù)的樣本共247 個。各質(zhì)地條件下的土壤樣本數(shù)量如表1 所示。
表1 各質(zhì)地條件下的土壤樣本數(shù)量Table 1 Number of soil samples for each texture
土壤水分特征曲線模型有較多種,其中VG 模型由于其形式簡單,適用性好,是當前應(yīng)用范圍最廣的土壤水分特征曲線模型。其形式如式(1)所示。
式中:θ 和h 為含水率和負壓;θr、θs、α、n 分別為待擬合的土壤水力參數(shù),即本研究所述VG 參數(shù)。
對VG 參數(shù)進行擬合的方法有很多,本研究擬采用遺傳算法與非線性最小二乘法相結(jié)合的方法。遺傳算法具有一定的隨機性,且若終止條件設(shè)置不合理,會使得優(yōu)化結(jié)果雖然可以接近全局最優(yōu)位置,但不一定恰好達到擬合的適應(yīng)度函數(shù)最小的最優(yōu)解。而非線性最小二乘法可以很好地解決這個問題。本研究使用遺傳算法優(yōu)化的結(jié)果作為非線性最小二乘法的初始參數(shù)。遺傳算法與非線性最小二乘法相結(jié)合的優(yōu)化方式使得擬合結(jié)果可以達到全局最優(yōu),同時避免了非線性最小二乘法初始參數(shù)設(shè)置不合理導(dǎo)致的算法不收斂的問題。
在此基礎(chǔ)上,利用UNSODA 數(shù)據(jù)庫中的土壤砂粒、粉粒、黏粒百分比、土壤體積質(zhì)量等基本物理指標為模型的輸入,以VG 參數(shù)和Ks為模型的輸出,建立機器學(xué)習(xí)模型。對于擬合得到的VG 參數(shù),由于α、n、Ks的絕對值跨越多個數(shù)量級,為了獲得可靠的預(yù)測結(jié)果,首先對這3 個參數(shù)進行對數(shù)化處理。由圖1 可以看出,處理后的數(shù)據(jù)更集中,其中α、Ks更接近于正態(tài)分布。此外,在建立機器學(xué)習(xí)模型之前還需要將數(shù)據(jù)(包括輸入和輸出)進行標準歸一化處理。處理后的數(shù)據(jù)被劃分為了訓(xùn)練集和驗證集。本研究通過交叉驗證,測試了訓(xùn)練集和驗證集數(shù)據(jù)的統(tǒng)計分布規(guī)律,結(jié)果顯示其統(tǒng)計量均在正常范圍,說明數(shù)據(jù)集的劃分方法具有可靠性。
本研究擬采用多隱含層神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network, ANN)作為待評價的一種機器學(xué)習(xí)方法。對于預(yù)測VG 參數(shù)的神經(jīng)網(wǎng)絡(luò)模型,通過超參數(shù)搜索,平衡模型復(fù)雜度與模型過度擬合的程度。本研究擬采用包含4 層隱含層的神經(jīng)網(wǎng)絡(luò),各層神經(jīng)元數(shù)目分別為10、12、5、13。對于預(yù)測Ks的神經(jīng)網(wǎng)絡(luò)模型,由于建模所用的數(shù)據(jù)量較少,因而擬采用3 個隱藏層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),各層神經(jīng)元數(shù)目分別為10、5、5。
支持向量機(Support Vector Machine, SVM)最初是用于分類的一種機器學(xué)習(xí)方法,其原理是通過構(gòu)造適當?shù)暮撕瘮?shù),將數(shù)據(jù)點投影到高維空間,然后在數(shù)據(jù)點之間尋找最大邊緣超平面作為決策邊界,由于該決策邊界取決于離決策邊界最近的若干數(shù)據(jù)點,即支持向量,故該方法被稱為支持向量機。在回歸問題中,超平面即為所建立的回歸模型。支持向量機有堅實的理論基礎(chǔ),適用于小樣本數(shù)據(jù)量的運算,故本研究選取支持向量機作為一種待評價的機器學(xué)習(xí)方法。本研究的支持向量機模型采用高斯徑向基核函數(shù),并通過參數(shù)搜索選取了合適的建模參數(shù)。
最近鄰居法(K-Nearest Neighbor,KNN)的思路是將特征空間中離待預(yù)測樣本最近的K 個數(shù)據(jù)的屬性值作為待預(yù)測樣本的預(yù)測值,該方法思路簡單直觀,預(yù)測值取決于周圍幾個樣本點的值,不需要進行模型訓(xùn)練,且在直觀上計算結(jié)果也較為可靠,因而本研究將該方法作為待評價的一種機器學(xué)習(xí)方法。本研究中選取的K 值為40。
本研究選取均方根誤差(RMSE)和決定系數(shù)(R2)作為評價指標。
式中:N 為樣本的數(shù)據(jù)點數(shù)量;yi和分別為實際值和預(yù)測值;y為數(shù)據(jù)的均值。
各模型在訓(xùn)練集和驗證集上預(yù)測VG參數(shù)的效果如圖2 所示。從圖2 可以看出,模型預(yù)測飽和含水率θs和n 的效果較好,而預(yù)測殘余含水率θr和lg(α)的效果較差,可能是由于其數(shù)值的絕對值較小,接近于0,因而在以決定系數(shù)為評價指標時,效果較差。
從訓(xùn)練集和驗證集來看,各模型的訓(xùn)練集的預(yù)測效果大部分要略好于驗證集。值得注意的是,參數(shù)lg(n)在驗證集上的表現(xiàn)效果要優(yōu)于訓(xùn)練集,可能的原因是由于數(shù)據(jù)集樣本量較小,使得某些異常值留在了訓(xùn)練集中,造成了訓(xùn)練集的預(yù)測效果反而降低。
從所選用的模型來看,在驗證集上,ANN 預(yù)測的飽和含水率θs和lg(Ks)明顯好于SVM 與KNN,且在其他參數(shù)上的預(yù)測效果也不明顯弱于別的模型。而SVM 模型在驗證集上對于lg(n)的預(yù)測效果較好,且在預(yù)測其他參數(shù)的時候也僅次于ANN 模型。
以UNSODA 數(shù)據(jù)庫中編號1351 的土壤樣本(該樣本被劃分在驗證集)為例,預(yù)測得到的土壤水分特征曲線數(shù)據(jù)與實測數(shù)據(jù)點如圖3 所示。該樣本使用ANN、SVM、KNN 預(yù)測參數(shù)并得到VG 模型的RMSE分別為0.0118、0.0159、0.0139。
對于整個數(shù)據(jù)集上樣本的表現(xiàn),如表2 所示。從總體上,SVM 在訓(xùn)練集和驗證集上均有較好的表現(xiàn),ANN模型次之,KNN模型的表現(xiàn)稍遜于其他2個模型。
為了直觀顯示各機器學(xué)習(xí)模型對不同土壤質(zhì)地樣本的預(yù)測精度,本研究將各模型的預(yù)測效果在土壤質(zhì)地三角形中進行了展示(圖4)。由圖4 可知,SVM 模型對各土壤質(zhì)地在訓(xùn)練集和驗證集上都有較為均衡的表現(xiàn),ANN 模型的預(yù)測效果次之,但對于黏性土的預(yù)測效果遜于SVM 模型。對于KNN 模型,無論在驗證集還是訓(xùn)練集上,對于處于土壤質(zhì)地三角形邊緣的樣本的預(yù)測效果欠佳,尤其是在樣本稀疏的區(qū)域。這可能是由于KNN 模型在進行預(yù)測時只與最臨近的若干點有關(guān),而對于土壤質(zhì)地三角形邊緣的數(shù)據(jù)點,由于邊緣數(shù)據(jù)點較少,預(yù)測效果較差。
表2 各機器學(xué)習(xí)模型的效果Table 2 The performance of each machine learning model
模型運行效率如圖5 所示。對訓(xùn)練數(shù)據(jù),ANN建立模型所需要的時長最長,而SVM 模型次之,KNN模型所需時間最短。而對驗證數(shù)據(jù)來說,ANN 模型預(yù)測用時明顯低于其他2 個模型。
從原理上來看,ANN 模型在訓(xùn)練時,需要進行迭代運算,使得計算成本加大。然而,對于訓(xùn)練好的模型,計算時只需將待預(yù)測的數(shù)據(jù)輸入模型,無須進行迭代運算即可獲得所需的參數(shù),因此,模型在訓(xùn)練與預(yù)測上的用時可能會相差若干個數(shù)量級。KNN 模型并不需要訓(xùn)練,而只需要數(shù)據(jù)讀入電腦內(nèi)存,KNN模型的訓(xùn)練用時即為數(shù)據(jù)傳輸?shù)挠脮r。在模型預(yù)測時,KNN 模型需要將待預(yù)測數(shù)據(jù)距離每個訓(xùn)練集中數(shù)據(jù)的歐氏距離計算出來,并進行排序比較,故模型預(yù)測用時會遠大于訓(xùn)練用時。
需要指出的是,雖然ANN 模型訓(xùn)練耗時較長,但對于大型數(shù)據(jù)集,可以采取mini-batch 等方法在基本不增加或少量增加計算成本的同時處理更大量的數(shù)據(jù)。ANN 模型在驗證或預(yù)測時,訓(xùn)練模型常常已完成,無須考慮ANN 模型訓(xùn)練耗時較長的問題。因而,在大型的數(shù)據(jù)集上要綜合考慮計算成本、預(yù)測精度等方面,ANN 模型在大數(shù)據(jù)集上構(gòu)建土壤轉(zhuǎn)換函數(shù)模型具有較大的優(yōu)勢。
將所建立的ANN,SVM,KNN 模型與廣泛使用的Rosetta 模型[19]進行對比。Rosetta 模型是2001 年提出的,并耦合于RETC、Hydrus 等土壤常用軟件中。其中,該模型根據(jù)輸入數(shù)據(jù)信息量的多少,分為5 個子模型,H1 模型只輸入樣品的土壤質(zhì)地分類;H2 模型輸入樣品的砂粒、粉粒、黏粒百分比(SSC);H3模型增加了土壤體積質(zhì)量(BD);H4 模型增加了在330cm 負壓下的含水率(θ33),通常認為該含水率可以代表田間持水率;H5 模型增加了在15000cm 負壓下的含水率(θ1500),通常認為該含水率可以代表植物萎凋點。Zhang 等[11]根據(jù)樣本擬合效果進行加權(quán),對Rosetta 模型進行了改進,在各模型后加字母“w”表示(如H1w 等)。各模型對樣本含水率的預(yù)測效果(RMSEw)如表3 所示。
表3 本研究建立的模型與Rosetta 模型的比較Table 3 Comparison between the model established in this study and the Rosetta model
由表3 可知,隨著輸入數(shù)據(jù)信息量的增加,Rosetta 模型的各個子模型的預(yù)測精度均有所增加(從H1 到H5,或從H1w 到H5w)。而在同一層級,對樣本進行加權(quán)改進后的模型(H1w 到H5w)較原模型(對應(yīng)的H1 到H5 模型)均有所提高。本研究建立的ANN,SVM,KNN 模型與Rosetta 模型的H3 或H3w 子模型所使用的輸入數(shù)據(jù)信息量相同。然而,Rosetta 模型由于采用單隱含層神經(jīng)網(wǎng)絡(luò),模型結(jié)構(gòu)簡單,其預(yù)測精度仍低于本研究使用的ANN 模型,說明增加模型的復(fù)雜度對于提高預(yù)測精度有積極意義。而本研究建立的KNN 模型和SVM 模型同樣優(yōu)于H3 模型或H3w 模型,說明改進建模方法同樣有利于提高預(yù)測精度。
值得注意的是,建立Rosetta 所使用的樣本容量更大,而本研究所采用的UNSODA 數(shù)據(jù)庫只是建立Rosetta 所使用的樣本的一部分。因而,在對比模型效果的時候,還應(yīng)該仔細考慮樣本量及數(shù)據(jù)質(zhì)量對標定模型的影響。
1)從VG 模型的參數(shù)預(yù)測來看,ANN 模型和SVM 模型均優(yōu)于KNN 模型,且二者對于不同的參數(shù)預(yù)測效果各有優(yōu)劣。從樣本的預(yù)測效果來看,SVM模型在訓(xùn)練集和驗證集上的預(yù)測精度要優(yōu)于另外2個模型,ANN 次之,KNN 遜于SVM 與ANN。
2)從模型運行效率來看,在訓(xùn)練集上,ANN 建立模型所需要的時長最長,而SVM 次之,KNN 所需時間最短。而從預(yù)測用時來看,ANN 模型預(yù)測用時明顯低于SVM 和KNN 模型。
3)SVM 模型的樣本預(yù)測精度最優(yōu),然而,SVM模型的計算復(fù)雜度會隨著數(shù)據(jù)量的增加而呈二次方增加;相對而言,ANN 算法在大數(shù)據(jù)量的時候可以選取mini-batch 等方法在基本不增加或少量增加計算成本的同時處理更大量的數(shù)據(jù)。因而,本研究推薦在小數(shù)據(jù)集上使用SVM,而在更大型的數(shù)據(jù)集上要綜合考慮計算成本、預(yù)測精度等方面合理選取土壤轉(zhuǎn)換函數(shù)模型。
由于土壤取樣和土壤水分特征曲線測試成本很高,本研究使用的UNSODA 數(shù)據(jù)庫樣本相對稀疏,導(dǎo)致其代表性并非特別好。隨著全球土壤物理數(shù)據(jù)庫的發(fā)展,數(shù)據(jù)量的增加、土壤水力特性的影響因素信息的進一步完善性,數(shù)據(jù)庫的代表性會進一步增強,屆時可以建立適用性更佳的土壤轉(zhuǎn)換函數(shù)模型。
限于研究者的水平和本文的篇幅,關(guān)于土壤轉(zhuǎn)換函數(shù),仍可以進行相關(guān)的探索,如在大型數(shù)據(jù)集上按照區(qū)域或土壤類型分組對土壤轉(zhuǎn)換函數(shù)的精度是否有提高效果;土壤轉(zhuǎn)換函數(shù)的不確定性來源以及可靠性如何量化;更合適的、可解釋性更好的土壤轉(zhuǎn)換函數(shù)建模技術(shù);增加哪些土壤信息輸入最有利于提高土壤轉(zhuǎn)換函數(shù)的預(yù)測精度等。
致謝:感謝天津大學(xué)地球系統(tǒng)科學(xué)學(xué)院張永根副教授在數(shù)據(jù)庫選取和土壤轉(zhuǎn)換函數(shù)理論方面的指導(dǎo)和幫助。