APP下载

基于光谱和改进极限学习机的土壤含盐量分析

2022-08-07宋妮娜高宇洁

光谱学与光谱分析 2022年8期
关键词:学习机盐碱地光谱

宋妮娜, 肖 冬*, 李 森, 高宇洁

1. 东北大学信息科学与工程学院, 辽宁 沈阳 110819

2. 东北大学冶金学院, 辽宁 沈阳 110819

引 言

盐碱地形成的实质是土壤中不同方向的易溶性盐发生渍化沉积, 使得盐分逐渐积聚在盐密集区的地表, 通过这种方式形成的有盐渍土、 碱化土和各种盐碱土等。 农业生产受土壤盐渍化影响较大, 因此研究盐碱地的性质和组成对后续实施生态恢复、 土地利用和改良措施具有重要意义。

传统的含盐量测定方法大多基于化学分析, 其测量精度高的优点仍不能使人们忽视其成本高、 效率低的缺点, 将化学分析应用于大面积土地的可行性大大降低。 随着时代的发展, 光谱法在含量检测中的应用发展迅速。 将土壤指标与光谱指标相结合分析盐碱地土壤性质是一种高效率、 低损耗的流行方法[1], 考虑到硅、 硫、 铁等金属元素和一些复杂有机质对盐碱土样品原始光谱数据的影响较大, 使正常情况下直接得到的光谱数据中包含有大量无效信息, 且获得的样本数据相关性过大。 极限学习机(extreme learning machine, ELM)作为一种基于前馈神经网络构建的机器学习系统, 在许多研究中作为一种光谱处理方法被成功应用[2-3]。 有研究将其结合卷积神经网络(convolutional neural network, CNN)应用到煤炭分类上。 在探索过程中, 利用ELM算法构建的光谱特征数据预测分析模型具有诸多优点, 自2006年以来迅速发展[4]。 例如有将粒子群算法(particle swarm optimization algorithm, PSO)加入ELM中进行参数优化[5]。 根据ELM初始参数的特点, Chen等[6]提出了一种集成ELM算法对近红外光谱进行标定。 Xiao等[7]利用主成分分析法对采集到的大量初始煤矿数据进行降维, 并采用多层极限学习机(M-ELM)建立煤种识别模型。 2019年Xiao[8]也提出了一种改进的PSO-ELM算法(IPSO-TELM), 其每个神经网络都有不同的隐含层, 其中每个隐含层的神经元个数不同, 能够通过改进算法找到最优的神经元数目。 ELM模型已经被许多人改进, 如I-ELM(增量ELM)[9]。

在对光谱数据进行主成分分析法(PCA)预处理后, 提出了基于随机值改进粒子群优化算法(improved particle swarm optimization (PSO) algorithm with random values, RVIPSO-MELM)优化的多层极限学习机模型。 随着隐含层的增加, 极限学习机能够保证模型性能不断提升的同时, 提高模型的优化速度。 本研究对于隐含层之间参数的两种选择方法进行了模型性能与优化时间之间相关讨论。

1 模型的建立

1.1 数据收集

研究地区为吉林省镇赉县盐碱地, 位于松宁平原西北部。 中国的松宁平原属于碱性土地, 是中国重要的粮食产区, 也是中国最大的碱土盐碱地。 在该盐碱地上采集表层样本62个, 利用SVCHR-1024光谱仪测量了这些样品的光谱数据。

图1 样品的反射光谱曲线

SVCHR-1024的光谱范围为350~2 500 nm, 波长数为1 024。 在测量光谱数据实验中, 为减少周围环境对光谱测试的干扰, 在一个封闭室内完成实验。 对每个样品进行了三次测试, 取平均值作为样品的最终反射率。

从图1的光谱曲线可以看出, 在400~600 nm的范围内, 光谱反射率较低。 每个样品的光谱彼此相似, 但在1 000~2 500 nm范围, 不同盐含量的光谱特征更为明显。

1.2 基础算法

1.2.1 主成分分析法

实验得到的盐碱地原始光谱数据有973个波段, 如果将这些未经处理的数据用于建立的模型算法, 不仅计算困难, 而且样本数据相关性差且严重冗余[10]。 会降低模型的准确性。 主成分分析(principal component analysis, PCA)可对数据线性降维, 是最普遍的使用方法。

PCA作为一种常用的数据降维方法, 可以将高维数据转换为“信息”损失较少的低维数据, 极大地促进了模型的建立, 可到节省训练时间的目的。

考虑到盐碱土的复杂性, 为了减少有效信息损失, 避免影响最终建模效果, 选取前10个主成分表征原始光谱数据信息, 贡献率由图2所示。

图2 前10个主成分的贡献率

1.2.2 粒子群算法(PSO)

有研究提出了一种进化计算技术——粒子群优化算法(PSO), 即基于种群的元启发式OA算法, 源于对鸟类捕食行为的研究。 粒子群算法的基本思想是通过群体间的协作和信息交换来寻找最优解。

将整个群扩展到N维空间, 将每只鸟视为具有位置向量和速度向量的粒子,xi=(xi1,xi2, … ,xiN),vi=(vi1,vi2, … ,viN),i=1, 2, … ,m。 在每次迭代中, 粒子将根据式(1)和式(2)改变其位置

(1)

(2)

其中c1和c2是学习因子,ω是惯性权重, rand()为(0, 1)上的随机数, pbest为第i个粒子最佳位置。

1.2.3 极限学习机(ELM)

ELM的结构如图3所示。

图3 ELM的结构图

对于N个任意不同的样本(xi,ti), 其中x=[xi1,xi2, …,xin]T∈Rn,ti=[ti1,ti2, …,tim]T∈Rm,L个神经元的单个隐层前馈神经网络可以建模为

bi,βi∈R;ai∈Rn

(3)

式(3)中,a=[ai1,ai2, …,ain]T∈Rn为输入层神经元与隐藏层第i个神经元之间的输入权重,βi和bi为输入权重和偏置,ai·xj表示ai和xj的内积。

极限学习机的目标函数可以表示为式(4)—式(6)

Hβ=T

(4)

H(a1,…,al,b1,…,bL,x1,…,xL)=

(5)

(6)

H和T是神经网络隐藏层的输出矩阵和期望输出。 Feng等[11]提出了随机选择输入权重和隐藏层偏置值的算法。 训练这个网络结构就等于得到Hβ=T的最小二乘解β

Minimise: ‖Hβ=T‖

(7)

β=H+T

(8)

式(7)和式(8)中H+为Moore-Penrose广义逆矩阵, 且最小二乘解的最小值是唯一的。

1.3 带随机值的改进粒子群优化算法(RVIPSO)

在基本粒子群算法中,ω是一个固定值, 表示粒子本身的惯性权重。 随着迭代次数的增加, 问题的细节也会发生变化, 固定值在整体求解过程中存在诸多缺陷。 引入可变惯性权重可动态适应问题求解过程。

(9)

学习因子c1和c2反映粒子群之间的信息共享。 为了有效地控制粒子的速度, 使算法在全局搜索和局部搜索之间达到有效的平衡, CLERC构造了带收缩因子的PSO模型, 并引入了压缩因子。 这种调整方法确保了参数的适当选择。 PSO算法的收敛性取消了对速度的边界限制。 自学习因子c1和群学习因子c2均取2.05,C=c1+c2=4.01, 压缩因子φ表示为式(10)

(10)

速度公式(1)可以更新为式(11)

(11)

1.4 RVIPSO-MELM模型的建立

ELM算法的缺点是初始权值和偏差是随机产生的, 很难保证模型的准确性。 Xiao[7]提出了具有随机值的多层极限学习机(RV-MELM)算法来不断优化模型的性能, 然而这种方法需要随机生成和选择数据, 可能导致优化结果不能达到真正的最优问题。 本工作首先采用蒙特卡罗方法这一随机实验的思想, 随机产生一组足够的数据作为输入层和隐层之间的权重和偏差, 并根据测试集的结果选择最优的一组权值和偏差输出。 理论上分组数据会更接近最优解, 然后使用IPSO算法以此为初值进行搜索, 比直接优化更快收敛到最优解, 避免陷入局部最优解。

当扩展到多层时, 在RVIPSO和公式计算之间选择后续层的权重和偏移量有两种方法。

在为每一层选择RVIPSO时, 将第一层的输出矩阵H1作为第二层的输入矩阵, 将第二隐层视为第一隐层进行再次计算。 测试集的实际输出为式(12)

T1=H1β1

(12)

PH2=[B2W2]第二隐藏层的输入和输出变量为式(13)和式(14)

X2=[1H1]

(13)

H2=g(PH2×X2)

(14)

T2=H2β2

(15)

即计算测试集计算模型的性能, 确定初值, 然后寻求最优解。 要求第二层的性能标准要优于第一层, 以保证模型性能的持续提升。 其结构如图4所示。

图4 MELM的结构图

根据RVIPSO确定参数的模型流程图如图5所示。

图5 模型流程图

当只对第一个隐含层的权值和偏移量进行RVIPSO优化以获得最优值时, 再直接使用MELM中的计算方法, 得到的结果也会发生改变。 根据式(16)可以提供第二隐层的期望输出矩阵H2EO

(16)

然后使PH2=[B2W2], 其中B2和W2是第二隐层的输入偏置和权重。PH2可以通过式(17)获得

(17)

M2=[1H1]

(18)

通过式(18)辅助矩阵可以获得第二隐藏层的实际输出结果H2AO, 并且可以通过式(19)和式(20)获得第二隐藏层的输出权重β2

H2AO=g(PH2M2)

(19)

(20)

根据上述计算方法进行递归计算, 可以得到第i个隐藏层的期望矩阵HiEO、 实际矩阵HiAO和输出权重βi。 最后, 整个网络的结果可以表示为式(21)

f(x)=HKβK

(21)

根据计算所建立的模型流程如图6所示。

图6 模型流程图

2 结果与讨论

2.1 数据预处理

采用五点采样法在镇赉县采集了62个盐碱土样本点, 并将其按照国家标准进行风干、 研磨、 过筛、 溶解, 最后使用干燥法测得的相应含盐量数据如图7所示。

图7 样本数据对应的含盐量情况

每个光谱反射率数据对应一个土壤含盐量, 根据土壤的含盐量情况, 将其分为4组, 即[0, 5], [5, 10], [10, 15], [15, 30]。 图8中的每条光谱曲线分别表示以上四组具有特定盐含量的区间, 即区段内所有相应光谱反射率数据的平均反射率。

2.2 模型的建立

对于盐碱地具体情况的直接分析研究中, 在该盐碱地不同的位置和深度上采集样本, 在经过降维处理之后选择了45个样本作为训练集和校正集, 17个样本作为测试集。 在上述算法的基础上建立了基于随机值改进粒子群优化算法(RVIPSO-MELM)优化的多层极限学习机模型, 并且借助MATLAB平台进行仿真实验, 在单层隐含层的条件下, 得到的模型准确率如图9所示。 根据仿真结果分析, 实际上, 由于样本数量不够丰富加上所使用的降维方法PCA具有一定的局限性, 无论使用的极限学习机具有几层隐含层, 从图10可以看出只要将模型训练好, 基本都能达到近95%的准确率。

图8 不同区段对应的平均反射率

图9 模型的迭代情况

图10 蒙特卡罗时的模型准确率情况

图10所显示的趋势, 模型的收敛速度很快, 能够在迭代次数不多的情况下就能够稳定在一个较好的准确率。 由于首先进行蒙特卡洛根据随机数确定初值, 随机生成2 000次, 随机生成的数据对应的模型准确率情况如图9所示, 可以看到模型的准确率可以最高达到0.7以上, 保留并且与其他数据比较之后, 输出该数据, 并以此作为初值再来进行IPSO优化。 因此模型能够在一开始就达到0.7以上的准确率, 在此基础上进行稳步提升。

考虑到粒子群算法用时长, 如果每一层都去套用RVIPSO算法进行优化权值和偏重, 可以保证在隐含层数足够并且训练效果好的条件下有更高的准确率, 但是可能会产生较多的时间损失, 经济效益不大, 因此选择初始权值和偏重使用RVIPSO选取最优值, 而后的计算选择经验函数进行计算, 在保证较高准确率的条件下能够提高模型的速度, 在实际应用方面经济效益更大, 两种模型在不同的隐含层数下的仿真运行时间对比如图11。

图11 两种方法运行时间对比图

在两个隐藏层的情况下, 使用两个模型进行仿真, 得到的准确率如图12所示。

图12 两种方法下模型准确率对比图

3 结 论

提出了一个RVIPSO-MELM模型, 该模型第一层的权值和偏重的选取使用了RVIPSO进行优化, 该模型能在提升模型性能的同时提高模型的优化速度。 相比于IPSO-ELM, 增加了随机值选优的一个步骤, 以此为初值进行启发式搜索最优值, 不仅在一定程度上保证了能达到全局最优值, 还提高了模型的优化速度, 不需要进行长时间搜索就能得到最优解。 而相比于RV-MELM, 所选取的启发式算法结合蒙特卡洛的方法, 提高了模型精度, 不需要太多隐含层就能训练得到一个较好的结果, 更具有现实意义。 对于所研究的盐碱地, 研究中建立的模型能够达到一个需要的准确率, 并且具有着优化速度快的优势, 在一定程度上节省时间成本和经济成本, 贴近实际, 推广性强。 进一步的研究包括提取数据特征的方法改进和优化算法并进一步提高模型准确率。

猜你喜欢

学习机盐碱地光谱
基于三维Saab变换的高光谱图像压缩方法
高光谱遥感成像技术的发展与展望
张巍婷 盐碱地上拓出“常丰”路
盐碱地枸杞提质增效关键技术
三种土壤改良剂对盐碱地冬枣园的影响
基于思维进化优化极限学习机的滚动轴承故障的智能诊断
基于改进极限学习机的光谱定量建模方法
分层极限学习机在滚动轴承故障诊断中的应用
星载近红外高光谱CO2遥感进展
苦味酸与牛血清蛋白相互作用的光谱研究