基于PCA-PSO-GRNN模型的冻融期土壤蒸发预报
2021-01-27杜鑫钰陈军锋郑秀清杨小凤
杜鑫钰,陈军锋,薛 静,郑秀清,杜 琦,杨小凤
(1.太原理工大学水利科学与工程学院,太原030024;2.山西省水文水资源勘测局太谷均衡实验站,山西晋中030800)
0 引 言
土壤蒸发作为无效水分损耗,是农田水分的主要消耗途径,其变化过程直接影响干旱半干旱地区农作物的生长和土壤水资源的高效利用[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 的冻融期土壤蒸发预报模型,并采用实测冻融土壤蒸发量验证模型的模拟精度和可靠性,以探索冻融期土壤蒸发预报模型的适用性。
1 材料与方法
1.1 试验区概况
试验区位于山西省晋中盆地汾河冲洪积平原区,属大陆性半干旱季风气候区。试验区多年平均气温9.9 ℃,年降水量约415.2 mm,年水面蒸发量1 642.4 mm(小型蒸发器:D20),多年平均相对湿度74%,历史最大冻深92 cm(1960年)[15]。试验区耕层深度约20 cm,土壤类型为壤土。
1.2 数据收集
冻融土壤蒸发试验于2017年11月至2018年3月在试验站进行。土壤蒸发量监测采用自制微型蒸发器称重法,地表土壤含水率监测采用烘干法,地表土壤温度监测采用预埋热敏电阻法,试验过程中土壤蒸发量、含水率和温度同步监测,且监测频率为每7 d 一次,监测时间均为8∶00-9∶00,整个冻融期共监测17 次[15]。由于17 组样本数据偏少,因此采用线性内插法生成130 组日数据以满足建模需求并提高模型精度。试验期间的日气象数据由试验站地面自动气象站监测,监测项目包括气温、气压、日照时数、风速、冻深、水面蒸发、降水和相对湿度等。
1.3 研究方法及模型构建
季节性冻融作用使土壤水分发生剧烈相变,水热耦合作用强烈,导致影响冻融土壤蒸发的因素复杂多样。通过分析,本文选取气压(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种求和相除,得输出结果:
1.4 PCA-PSO-GRNN模型构建
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。
1.5 模型评价
为验证模型的预测精度,选取均方根误差(RMSE)、决定系数(R2)、均方相对误差(MSRE) 和平均绝对误差(MAE)4个指标评价模型预测效果,计算公式如下:
2 结果与分析
2.1 冻融土壤蒸发影响因素分析及主成分提取
冻融土壤蒸发受大气蒸发能力和土壤输水能力的共同作用。大气蒸发能力主要包括气温、太阳辐射、降水等气象因素,土壤输水能力则包括土壤质地和地表覆盖等。其中,大气蒸发能力影响土壤蒸发过程的能量供给,土壤输水能力则决定土壤剖面水分向上迁移的条件[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)。
2.2 模型预测结果分析
本文以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,均较训练样本降低,说明模型模拟效果较优,精度较高。
2.3 模型优越性分析
为了进一步验证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
3 结 论
(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 模型,可为冻融期土壤蒸发的预报提供新的思路。