结合SFLA-XGBoost模型与高光谱的土壤有机质含量预测

2021-06-21 03:52杨素妨
河南科学 2021年5期
关键词:波段光谱精度

杨素妨

(百色学院,广西百色 533000)

土壤有机质泛指以各种形态方式存在于土壤中的所有含碳的有机物质[1].土壤有机质与农业生产力密切相关[2],也是精准农业应用、局地碳循环研究的重要环境变量[3].准确、实时、大范围的土壤有机质含量预测是了解土壤肥力情况、调节土壤质量水平的重要途径.传统的土壤农化分析方法通过破坏性的处理手段进行化学检测,其实验周期长,因而难以实现有机质含量信息的快速更新[4].相较于传统农化分析方法,高光谱遥感技术能够捕捉土壤成分在光谱上的响应,通过分析光谱特征的细微变化实现对土壤属性的反演[5].土壤中含有的有机化合物通过碳氢键(C—H、N—H、O—H、C—N和C—C)的分子振动(旋转、弯曲和拉伸)吸收可见光-近红外区域的电磁辐射[6],挖掘有机质在土壤光谱上特征信息,结合高光谱反射率与多种建模方法构建有机质反演模型,成为目前土壤有机质估算的重要方向[7-8],常见的反演模型包括多元线性回归[9]、偏最小二乘回归[10]、支持向量机[11]、人工神经网络[12]、随机森林[13]、主成分回归[14]等.

光谱变换能够增强土壤光谱细微的吸收特征,从而提高土壤高光谱预测模型的预测精度[15].同时由于高光谱数据相邻波段间具有较高的相关性,存在较多冗余和共线波段,部分光谱区间与目标成分弱相关或不相关,全谱段建模可能会影响模型的准确度[16].解决该问题需要在建立统计回归模型前进行特征变换和波段筛选,增强土壤光谱中有用的特征信息,提取出与目标变量显著相关的最优波段子集,进而构建出鲁棒性强的反演模型.

随着机器学习的迅速发展,目前出现了诸多新型波段选择与反演建模算法.混合蛙跳算法(Shuffled Frog Leaping Algorithm,SFLA)是一种新型元启发式算法[17],该算法对青蛙的觅食行为进行模拟,从而实现全局最优解的搜索,已发展成为元启发式算法领域的热点研究方向,并成功地应用于高维数据的特征选择之中.XGBoost在结构化数据分析上展现出巨大的优势.本文使用ICRAF&ISRIC全球土壤波谱数据,首先采取两种光谱变换算法:连续统去除方法(Continuum Removal,CR)和光谱倒数对数(Inverse-log Reflectance,log(1/R))对原始光谱进行特征变换,然后利用SFLA-XGBoost算法建立土壤有机质高光谱预测模型.模型根据随机蛙跳算法(Shuffled Frog Leaping Lgorithm,SFLA)进行波段筛选,继而使用XGBoost算法进行有机质含量估算.与其他算法的对比结果表明,本文所提出的模型具有较高的精度,为土壤有机质含量高光谱预测提供一种高效的新方法.

1 实验数据

1.1 光谱数据介绍与处理

为完成全球土壤制图项目,世界农林中心(ICRAF)联合国际土壤参考与信息中心(ISRIC)开发了ICRAF&ISRIC全球土壤波谱库.土壤样品采集于来自亚洲、欧洲、非洲等58个国家的785个土壤剖面,共计四千多个土壤样品.该波谱库使用ASD地物光谱仪(Analytical Spectral Devices)采集记录每个土壤样品的漫反射光谱,波长为350~2500 nm,光谱采样间隔为1 nm.

在光谱预处理阶段,首先使用蒙特卡洛交叉验证算法进行光谱奇异样本的剔除,然后采用Savitzky-Golay滤波算法对光谱曲线进行平滑处理,滤波窗口大小设置为9.考虑到波段间的相关性,将光谱重采样到10 nm间隔,最终形成了具有3000条光谱曲线及对应有机质含量的数据集,如图1所示.

图1 ICRAF&ISRIC全球土壤波谱库Fig.1 ICRAF&ISRIC global soil spectral library

1.2 光谱特征变换

土壤原始光谱中可能包含有背景及仪器暗电流本身的噪声干扰,造成相关吸收特征表现不明显,且会在建模过程中引入无关信息,进而导致模型精度较低.解决该问题的有效途径是对原始光谱进行特征空间变换,其主要目的为扩大不同性质土壤光谱的特征差异,减弱背景噪音对模型的影响[15].本文采取两种光谱变换形式,光谱倒数对数变换[18]和连续统去除变换.倒数对数变换能够扩大波形峰谷之间的深度和宽度差异,从而突出光谱数据随目标属性的变异情况,有利于敏感波段的提取和改善模型的预测精度.连续统一去除也称包络线去除,是一种能够增强吸收特征有效信息的光谱分析技术,能够将光谱反射率进行归一化处理,同时将光谱吸收峰归一化至统一的背景上,进而可以实现吸收深度的计算(图2).

图2 两种光谱特征变换示意图Fig.2 The schematic of two kinds of spectral feature transformation

1.3 基于SPXY方法的数据集划分

使用SPXY方法[19]将光谱数据及对应的有机质含量数据按照2∶1的比例划分为训练集与验证集.SPXY算法在Kennard-Stone(KS)算法的基础上进行了扩展,在计算样本间距离时考虑了光谱矩阵x和浓度矩阵y的差异,增加了样本的代表性,在保证样本分布均匀的同时更加有效地覆盖了向量特征空间.为了使N个样本在x和y空间的分布具有同等的重要性,将每对样本(p,q)之间的欧式距离dx(p,q)和dy(p,q)除以它们在数据集中的最大值,从而抑制了训练集与验证集中可能存在的偏差估计,进一步提高后续模型的稳定性.归一化后的光谱矩阵与浓度矩阵之间的欧氏距离表示为:

图3 有机质含量分布小提琴图Fig.3 Violin plot of distribution of organic matter content

本文使用2∶1的比例将原始数据集划分为训练集和验证集,其中训练集共2000条土壤光谱与对应的有机质含量数据,使用小提琴图来表示训练集、验证集的划分情况,如图3所示.

2 建模方法

2.1 基于SFLA算法的土壤有机质特征波段选择

相邻波段间反射率具有较高的相关性和共线性,使用冗余的波段参与建模会导致较高的计算成本,且会引入无关信息和系统误差.为了提高运算效率,抑制无关信息对模型精度的影响,需要进行特征波段的选取.目前常见的波段提取方法包括竞争性重加权采样[20](CARS)、遗传算法[21](GA)、无信息变量消除[22](UVE)等.近些年提出的混合蛙跳算法结合了SCE算法(shuffled complex evolution)和粒子群优化算法(particle swarm optimization)的优点,能够将全局信息交换和局部深度搜索相结合,在搜索过程中自动获取和积累有关搜索空间的知识,并自适应地控制搜索过程以求得最优解,具有较少的参数和更强的寻优能力,广泛应用于参数优化、信号处理、特征降维、模式识别等领域,取得了良好的实验效果.已有研究表明,SFLA算法在光谱特征波段选择问题上具有鲁棒性强、准确度高的特点.代永强等[23]针对高维生物医学数据包含大量无关或弱相关特征的问题,引入混沌记忆权重因子和平衡分组策略,实现了基于混合蛙跳算法的生物医学数据特征选择;程介虹等[24]使用基于改进联合区间随机蛙跳算法进行近红外光谱波长选择,该算法经过多次迭代计算各个波长被选择的概率,将概率较高的变量为特征波段,建模结果证明了该算法的有效性.

本文中使用SFLA算法进行有机质波段选择的算法步骤如图4.

图4 SFLA算法流程Fig.4 Flowchart of Shuffled Frog Leaping Algorithm

2.2 基于XGBoost的有机质含量预测

XGBoost(eXtreme Gradient Boosting,极端梯度提升树)算法[25]是以梯度提升为框架,基于决策树的集成机器学习算法,具有准确度高、扩展性强、抗过拟合能力强等特点.该算法将多棵分类树模型进行组合,将不同的弱学习器进行组合,使得模型复杂度逐渐逼近数据本身的复杂度,从而形成准确率更高的强学习器模型,如图5所示.在遥感应用方面,葛翔宇等[26]利用无人机高光谱影像,结合土壤湿度光谱指数对农业土壤含水量进行预测,结果表明XGBoost模型对于估计土壤含水量的具有最佳精度;齐建东等使用XGBoost模型对城市绿地净生态系统碳交换(NEE)进行分析,结果表明,基于XGBoost-ANN模型能够更为精确地模拟NEE动态变化情况.而在土壤有机质高光谱遥感反演方面,目前尚无XGBoost模型相关研究.

图5 XGBoost算法示意图Fig.5 The schematic of XGBoost algorithm

2.3 模型评价指标

采用确定系数(R2)、均方根误差(RMSE)和平均绝对误差(MAE)来评价模型的性能.

3 结果与分析

图6 不同有机质含量区间的土壤均值反射率曲线Fig.6 Mean reflectance curves of soils with different organic matter contents

3.1 土壤光谱特征分析

为了探究土壤有机质在可见光-近红外光谱上的响应特性,对有机质含量与光谱数据进行了相关性分析.图6显示了不同有机质含量区间的土壤平均光谱曲线.结果表明,随着有机质含量升高,对整个光谱区间的反射率都有不同程度的抑制作用,呈显著的负相关.因此可以通过建立反射率的非线性模型,进行有机质含量估算.

分别使用原始光谱、连续统去除光谱、倒数对数光谱计算了全波段反射率与有机质含量之间的Pearson相关系数,如图7所示.结果表明:①原始光谱在全波段上反射率与有机质负相关,表明随着有机质含量上升,对反射率具有降低效应.在1400、1900 nm和2200 nm附近,由于水分和羟基的吸收作用,光谱表现出明显的吸收峰,同时也抑制了有机质在光谱上响应,导致了相关性减弱.②两种光谱变换方式对相关系数均具有不同程度的提升作用,连续统去除变换的效果尤为明显.③620~750 nm为三种光谱相关性最高的波段区间,原始光谱在这一区间与有机质含量的相关性达到-0.5,连续统去除变换光谱达到0.58,倒数对数变换光谱达到-0.6.

图7 三种土壤光谱数据与土壤有机质含量的相关系数分布Fig.7 Distribution of correlation coefficients between soil spectral data and soil organic matter content

3.2 特征波段选择结果

本文中采用SFLA算法重复迭代100次,设置阈值为5,将出现频率超过该阈值的波段设置为有机质敏感波段.为了验证不同光谱变换方法的建模,分别使用原始光谱、连续统去除变换光谱和倒数对数变换光谱带入算法进行计算,结果如图8所示.

图8 特征波段选择结果示意图Fig.8 Schematic diagram of feature band selection results

经过SFLA波段选择,原始光谱选择了70个特征波段,连续统去除光谱选择了55个特征波段,倒数对数光谱选中了90个特征波段.

3.3 SFLA-XGBoost模型精度分析

分布利用三种不同形式土壤光谱的特征波段,使用训练集数据,结合XGBoost算法建立预测模型.XGBoost模型中包含若干超参数,不同的参数设置会对模型精度产生影响.经过反复试验,本文XGBoost模型参数设置为:生成树的个数为300,学习速率为0.1,每棵树的最大深度为5.模型预测结果如图9所示.

图9 土壤有机质含量SFLA-XGBoost模型预测值与实测值对比Fig.9 Comparison between the predicted values and the measured values of SFLA-XGBoost model of soil organic matter content

图9表明,使用连续统去除的特征波段得到的模型精度最高,验证集与测试集的R2分别为0.96和0.81,RMSE分别为0.21和0.26,预测值分布集中,和真实值具有良好的相关性.倒数对数光变换也取得了较好的精度,验证集与测试集的R2分别为0.87和0.77,与连续统去除光谱相比,预测值分布较为分散,但也均匀分布在1∶1线附近.原始光谱的精度在三种光谱中最低,训练集R2为0.87,RMSE为0.39;验证集R2为0.71,RMSE为0.33.实验结果表明:①SFLA-XGBoost模型的具有良好的精度与鲁棒性,验证集R2均在0.7以上;②对光谱进行适当的特征变换有利于增强有用信息,提高预测精度.为验证特征波段选择对建模精度的影响,使用全波段光谱数据进行了XGBoost建模,结果如表1所示.

表1中c代表训练集,p代表测试集.结果表明使用SFLA算法进行波段选择后,XGBoost模型的预测结果均有不同程度的提高,表明合适的波段变换方法能够提高模型预测精度.

表1 使用全波段光谱数据与特征波段数据的建模精度对比Tab.1 Comparison of modeling accuracy between full band spectral data and characteristic band data

3.4 对比其他反演模型

为了验证SFLA-XGBoost的优越性,对比了其他两种高光谱建模方法:①偏最小二乘回归模型(Partial Least Squares Regression,PLSR);②高斯过程回归模型(Gaussian Process Regression,GPR).这两种模型已经成功地应用于土壤有机质高光谱遥感反演[27-28],具有良好的预测效果.

图10 PLSR与GPR的预测结果Fig.10 Prediction results of PLSR and GPR

图10结果表明,PLSR的与GPR方法虽然在训练集数据上表现出较好的效果,R2分别为0.71和0.8,但是测试集数据的R2均在0.6以下,低于SFLA-XGBoost算法.

4 结论

本文首先使用两种方式(连续统去除、倒数对数)对原始土壤光谱进行特征变换,然后使用混合蛙跳算法对三种光谱进行特征波段选择,最后采用XGBoost算法实现土壤有机质含量高光谱预测.根据实验结果可得出以下结论:

1)使用合适的特征变换方法对原始土壤光谱进行预处理能够增强有机质在光谱上的响应,敏感波段的相关系数均有不同程度的提升.

2)由于结合了模因算法和群体智能行为算法的优势,混合蛙跳算法具有优良的敏感波段筛选能力.对于三种不同形式的光谱数据,使用经过SFLA算法选择的有机质敏感波段建立模型,均表现出较强的鲁棒性.

3)得益于XGBoost算法对结构化数据的强大拟合能力,与其他两种回归算法的对比结果表明,SFLAXGBoost算法具有更高的预测精度,能够为土壤有机质高光谱遥感反演提供理论依据.

猜你喜欢
波段光谱精度
基于三维Saab变换的高光谱图像压缩方法
最佳波段组合的典型地物信息提取
基于3D-CNN的高光谱遥感图像分类算法
热连轧机组粗轧机精度控制
高光谱遥感成像技术的发展与展望
基于DSPIC33F微处理器的采集精度的提高
基于PLL的Ku波段频率源设计与测试
小型化Ka波段65W脉冲功放模块
L波段kw级固态功放测试技术
以工匠精神凸显“中国精度”