杜鑫鈺,陳軍鋒,薛 靜,鄭秀清,杜 琦,楊小鳳
(1.太原理工大學水利科學與工程學院,太原030024;2.山西省水文水資源勘測局太谷均衡實驗站,山西晉中030800)
土壤蒸發作為無效水分損耗,是農田水分的主要消耗途徑,其變化過程直接影響干旱半干旱地區農作物的生長和土壤水資源的高效利用[1-4]。我國季節性凍土主要分布于干旱半干旱氣候區[5-7],該地區越冬期的土壤蒸發特征決定了春夏季播種前的土壤墑情,同時土壤凍結時水分相變及其與溫度的劇烈耦合作用加劇了土壤蒸發過程的復雜性[8]。因此,研究季節性凍融期土壤蒸發規律,準確預估凍融期土壤蒸發量對于提高干旱半干旱氣候區的水資源利用效率具有重要意義。
目前,學者大多基于水熱耦合運移數值模型[9,10]研究凍融期的土壤蒸發過程。Flerchinger[11]等根據SHAW 模型模擬研究了不同類型殘茬覆蓋物下的土壤蒸發及水熱運移情況;李瑞平[12]等運用SHAW模型探討了秋澆制度和土壤鹽漬化程度對凍融期土壤蒸發的影響;成向榮[13]等通過SHAW模型對黃土高原半干旱地區土壤蒸發進行了預測研究;陳軍鋒[8]等基于SHAW模型研究了不同地下水位埋深和土壤質地對凍融期土壤蒸發過程的影響。然而,這類數值模型需要大量精確地土壤和氣象資料驅動模型,并且需要花費大量時間對模型進行調參[14]。為進一步提高預測精度,簡化模型所需輸入的參數和調參過程,神經網絡和機器學習等人工智能方法在農田預測方面得到了普遍應用。其中,BP 神經網絡和支持向量機(SVM)應用較為廣泛[15-21]。但是,BP 神經網絡存在收斂速度慢、易陷入局部極小點、對樣本依賴性大等問題,支持向量機算法對大規模訓練樣本實施困難且對核參數和懲罰參數的選擇敏感[22]。
廣義回歸神經網絡(General Regression Neural Network,GRNN)是基于非線性回歸理論的典型前饋式局部逼近神經網絡,具有計算速度快、全局最優性等優點[23]。此外,模型構建過程中僅需調整光滑因子這一個參數,能夠降低人為因素對模型預測性能的影響。粒子群優化算法(Particle Swarm Optimization,PSO)是一種新型的全局進化尋優算法,通過PSO 算法對GRNN 網絡參數進行尋優,不僅使GRNN 的優勢得到保留,同時可解決GRNN 拓撲結構的不確定性問題,提高了模型的穩定性和預測精度[24]。因此,本文通過主成分分析(Principal Component Analysis,PCA)對數據進行降維處理并提取影響凍融土壤蒸發的主要因子,使其作為GRNN 網絡模型的輸入變量,將PSO 算法引入GRNN 模型優化模型的光滑因子,依此建立PCA-PSO-GRNN 的凍融期土壤蒸發預報模型,并采用實測凍融土壤蒸發量驗證模型的模擬精度和可靠性,以探索凍融期土壤蒸發預報模型的適用性。
試驗區位于山西省晉中盆地汾河沖洪積平原區,屬大陸性半干旱季風氣候區。試驗區多年平均氣溫9.9 ℃,年降水量約415.2 mm,年水面蒸發量1 642.4 mm(小型蒸發器:D20),多年平均相對濕度74%,歷史最大凍深92 cm(1960年)[15]。試驗區耕層深度約20 cm,土壤類型為壤土。
凍融土壤蒸發試驗于2017年11月至2018年3月在試驗站進行。土壤蒸發量監測采用自制微型蒸發器稱重法,地表土壤含水率監測采用烘干法,地表土壤溫度監測采用預埋熱敏電阻法,試驗過程中土壤蒸發量、含水率和溫度同步監測,且監測頻率為每7 d 一次,監測時間均為8∶00-9∶00,整個凍融期共監測17 次[15]。由于17 組樣本數據偏少,因此采用線性內插法生成130 組日數據以滿足建模需求并提高模型精度。試驗期間的日氣象數據由試驗站地面自動氣象站監測,監測項目包括氣溫、氣壓、日照時數、風速、凍深、水面蒸發、降水和相對濕度等。
季節性凍融作用使土壤水分發生劇烈相變,水熱耦合作用強烈,導致影響凍融土壤蒸發的因素復雜多樣。通過分析,本文選取氣壓(x1)、風速(x2)、日平均氣溫(x3)、地表土壤溫度(x4)、地表土壤含水率(x5)、相對濕度(x6)、水面蒸發量(x7)、降水量(x8)和太陽輻射(x9)9 個影響因素,對凍融土壤蒸發進行影響分析與建模預測分析。
1.3.1 PCA原理
主成分分析法(PCA)利用數據降維和變量篩選的思想,將具有一定相關性的多個原始相互重疊的變量通過線性組合的方式組成相互獨立的最小數據集,并從中選取少數綜合變量,即主成分以盡可能多的反映原始被評價變量的信息[25,26]。具體步驟如下。
(1)樣本數據標準化,以消除量綱影響。采用“minmax”法對上述9個因子進行歸一化,公式為:
(2)計算相關系數矩陣,求出其非零特征根和特征向量。
(3)根據累積方差貢獻率選擇主成分個數,并求出主成分載荷矩陣。
(4)計算主成分變量的取值。
1.3.2 PSO算法原理
PSO 算法首先初始化n 個粒子,每一個粒子都有可能成為所優化問題的最優解,比如本文中粒子代表GRNN 模型的一個光滑因子,隨后利用迭代循環找到問題的最優解[27]。在迭代循環過程中,粒子首先要尋找到自身最優解即個體極值Pbest,然后通過比較每個粒子的Pbest,尋找當前整個種群的最優解即群體極值Gbest,粒子通過跟蹤Pbest 和Gbest 利用下式(2)和(3)更新其速度V 和位置X(假設有n個粒子,D維空間),當全部迭代完成時,最終的Gbest 即算法的最優解。
式中:d = 1,2,…,D;i = 1,2,…,n;k 為當前迭代次數;ω 為慣性權重;Vid為粒子的速度;Xid為粒子的位置;c1、c2為加速度因子;r1、r2為[0,1]區間的隨機數;Pid、Pgd分別為第i個粒子的個體極值位置和群體極值位置。
1.3.3 GRNN理論與網絡結構
GRNN 以非線性回歸分析為理論基礎。設隨機變量x 和y 的觀測值分別為X 和Y,其聯合概率密度函數為f (x,y),則Y 的預測輸出為:
假設f (x,y)服從正態分布,則有:
式中:Xi、Yi為x 和y 的樣本觀測值;X 為模型輸入變量;n為樣本數量;p 為隨機變量x 的維數;σ 為模型的光滑因子。將f^(X,y)代替f (x,y)代入式(4)得下式:
GRNN網絡結構由以下4部分組成:
(1)輸入層。該層由源節點組成,其神經元個數等于輸入變量xi的維數,輸入變量經輸入層直接傳遞給模式層。本文將PCA法獲得的7個影響因子作為GRNN模型輸入變量,輸入層神經元個數為7。
(2)模式層。該層神經元個數對應訓練樣本的數量n,每一個神經元對應不同的樣本,傳遞函數為:
(3)求和層。該層有2種求和方式,一種是計算算數求和SD;另一種是計算加權求和SNj,傳遞函數分別為:
式中:Pi為模式層第i 個神經元的傳遞函數;yij為模式層第i個神經元與求和層第j 個分子求和神經元連接權值。
(4)輸出層。該層神經元個數與輸出變量yi的維數對應,本文取為1。將求和層的2種求和相除,得輸出結果:
GRNN模型性能的優劣取決于光滑因子這一參數,因此利用PSO 算法對GRNN 模型參數進行尋優。基于PCA-PSOGRNN模型對凍融土壤蒸發預報的建模步驟如下:
(1)數據集分割與歸一化處理。將前述PCA 法篩選出的7個主要因子作為GRNN 模型的輸入變量(xi),則凍融土壤蒸發量為輸出變量(yi)。按比例(4∶1)將總數據集(130 組)隨機劃分為104 組訓練樣本和26 組測試樣本,同時利用式(1)對數據進行歸一化。
(2)種群初始化。設置PSO 算法的基本參數,同時生成粒子初始速度和位置。
(3)構建適應度函數。以測試樣本的輸出值(預測值)和實際值的均方差為適應度函數計算各粒子的適應度值。
(4)尋找個體極值和群體極值。通過比較第i個粒子所經過位置的所有適應度值,最小適應度值對應的位置即個體極值Pbest,同理比較所有粒子的自身最優位置的適應度值,最小適應度值對應的位置即群體極值Gbest。
(5) 更新粒子的速度與位置。 更新公式見式(2)和(3)。
(6)迭代完成。取迭代過程中產生的最優Gbest 為光滑因子來構建GRNN模型。
(7)模型測試。利用建立的PCA-PSO-GRNN 模型對測試樣本進行預測。
PCA-PSO-GRNN 模型流程見圖1。
為驗證模型的預測精度,選取均方根誤差(RMSE)、決定系數(R2)、均方相對誤差(MSRE) 和平均絕對誤差(MAE)4個指標評價模型預測效果,計算公式如下:
凍融土壤蒸發受大氣蒸發能力和土壤輸水能力的共同作用。大氣蒸發能力主要包括氣溫、太陽輻射、降水等氣象因素,土壤輸水能力則包括土壤質地和地表覆蓋等。其中,大氣蒸發能力影響土壤蒸發過程的能量供給,土壤輸水能力則決定土壤剖面水分向上遷移的條件[14]。
利用SPSS 25.0 對歸一化后的樣本數據進行主成分篩選和分析,各主成分的特征根和貢獻率如表1 所示。由表1 可知,前3 個主成分(F1、F2、F3)特征值均大于1,且累計貢獻率高達83.00%,因此選取F1、F2、F3 主成分代替9 個原始變量。各影響因素與所選主成分之間的關系見主成分得分系數矩陣(見表2)。由表2 可知,F1 主成分中x3(0.47)、x9(0.47)、x7(0.45)、x4(0.41)和x1(-0.38)的系數相對較高;F2 主成分中x6(0.60)的系數最大;F3 主成分中x8(0.67)的系數最高。因此,根據表2 分析可以得出,影響凍融期土壤蒸發的主要因子依次為日平均氣溫(x3)、太陽輻射(x9)、水面蒸發量(x7)、地表土壤溫度(x4)、氣壓(x1)、相對濕度(x6)和降水量(x8)。
本文以2017-2018年凍融期連續監測的130 組凍融環境要素和大田土壤蒸發量作為整體樣本,并隨機選取104組作為訓練樣本訓練PCA-PSO-GRNN 模型,剩余26組作為測試樣本來驗證模型。訓練集與測試集的誤差分析見表3。

表1 各主成分特征值及貢獻率Tab.1 Eigenvalue and variance contribution rate of each principal component

表2 主成分得分系數矩陣Tab.2 The score coefficient matrix of principal component

表3 PCA-PSO-GRNN 模型預測誤差分析表Tab.3 The prediction error analysis of PCA-PSO-GRNN model
基于PCA-PSO-GRNN 模型的凍融期土壤蒸發模擬結果見圖2,可見,訓練樣本預測值與實際值的模擬結果吻合性較好,見圖2(a)。為了檢驗該模型的模擬精度和模型的泛化性能,利用測試樣本對該模型進行驗證,測試樣本的預測值和實際值基本一致,見圖2(b)。預報模型的評價指標RMSE、R2、MSRE 和MAE 見表4,可以看出,訓練樣本預測值和實際值的RMSE、R2、MSRE 和MAE 分別為0.013 1 mm/d、0.981 7、0.004 1和0.011 0 mm/d,說明模型訓練精度較高。測試樣本預測值和實際值的RMSE 為0.011 4 mm/d,較訓練樣本降低了12.98%,R2為0.992 1,較訓練樣本有所提高。此外,測試樣本預測值和實際值的MSRE 和MAE 分別為0.002 9 和0.007 0 mm/d,均較訓練樣本降低,說明模型模擬效果較優,精度較高。
為了進一步驗證PCA-PSO-GRNN 模型的泛化性能和優越性,選取BP 神經網絡、標準GRNN 網絡(光滑因子取為1.0)與PCA-PSO-GRNN 模型的模擬結果進行對比。將PCA 提取的7 個主要因子作為各網絡的輸入變量分別建立BP 模型和標準GRNN模型,并對凍融土壤蒸發分別進行預測,模型預測結果分析見表5。可見,PCA-PSO-GRNN 模型的模擬效果顯著優于其他2 種模型,決定系數R2分別較BP 模型和標準GRNN 模型高6.7%和8.7%,因此,采用PCA 降維處理且利用PSO 優化的GRNN 模型具有更好地泛化性能和判別能力,可應用于凍融期大田土壤蒸發的預報。

表4 凍融土壤蒸發模型性能評價指標Tab.4 Performance evaluation index of freeze-thaw soil evaporation model

表5 模型預測結果對比Tab.5 Comparison of model prediction results
(1)采用主成分分析法對影響凍融土壤蒸發的氣象因子數據進行降維處理,選出影響土壤蒸發的7個主要因子,即日平均氣溫、太陽輻射、水面蒸發量、地表土壤溫度、氣壓、相對濕度和降水量。利用粒子群算法對廣義回歸神經網絡參數進行優化,降低參數選取的隨機性和人為因素的影響。
(2)PCA-PSO-GRNN 模型訓練樣本和測試樣本的預測值與實際值擬合效果較優,模型模擬精度較高,可用于凍融期土壤蒸發的預報。訓練樣本的RMSE、R2、MSRE 和MAE 分別為0.013 1 mm/d、0.981 7、0.004 1 和0.011 0 mm/d,測試樣本的RMSE、R2、MSRE 和MAE 分別為0.011 4 mm/d、0.992 1、0.002 9和0.007 0 mm/d。
(3)PCA-PSO-GRNN 模型預測精度和泛化性能顯著優于BP 模型和標準GRNN 模型,可為凍融期土壤蒸發的預報提供新的思路。