本发明涉及水质检测,尤其涉及一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法及设备。
背景技术:
1、三维荧光光谱是一种分析水中荧光物质的技术,可以反映水质的有机物含量和结构特征。
2、三维荧光水质监测具有灵敏度高、选择性好、速度快、无需前处理等优点,可以提供普通荧光光谱所不能提供的信息,如所测污染物的来源、类型、结构、变化等。三维荧光水质监测在生活污水、工业废水、雨水、地表水、地下水等各种水环境中都有广泛的应用,可以实时监测水质的变化,评估水环境的污染程度,指导水环境的治理和保护。
3、氨氮是一种常见的水质污染指标,对水生态系统和人类健康有不利影响。通过三维荧光光谱快速预测水质中氨氮浓度可以实现水质的在线监测和实时预警,及时发现水质异常事件,提高水质管理效率和水环境保护水平;可以避免传统的化学分析方法所需的复杂的样品预处理和耗时的仪器操作,降低水质检测的成本、人为误差和二次污染问题。
4、现阶段三维荧光技术在水质检测领域主要用于污染物的溯源,还没有有效的方法直接从三维荧光强度中提取水质氨氮特征。目前,有对三维荧光光谱分析普遍采用主成分分析法(pca)和平行因子分析法(parafac)等降维的方法进行三维荧光数据的预处理,目的是从三维荧光光谱中提取有用的信息,同时去除噪声和冗余数据。然而,通过以上降维方法存在一些三维荧光特征的损失,不利于氨氮浓度特征的提取,建立氨氮浓度预测模型。
5、例如,公开号为cn115236048a的中国专利文献公开了一种基于三维荧光光谱监测水中氨氮浓度的方法,利用平行因子分析法对三维荧光光谱矩阵数据分析,首先获得有机组分分数,再根据有机组分的荧光强度与氨氮浓度建立相关性模型。该方法未能直接提取三维荧光中的氨氮特征,导致最终氨氮浓度预测模型准确度较低。
6、由于三维荧光数据量大,目前并没有高效方法对三维荧光强度数据中的水质氨氮浓度特征进行提取,并用于氨氮浓度的预测。本发明通过结合机器学习中的梯度提升回归树算法,将所有三维荧光强度作为独立特征进行模型训练,获取三维荧光强度中氨氮浓度的关键特征,建立预测模型,实现预测水质氨氮浓度的目的。
技术实现思路
1、本发明提供了一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,充分利用所有三维荧光光谱矩阵数据,在不遗漏任何一个信息的前提下最大限度地反应数据的真实情况,从而准确预测氨氮浓度。
2、本发明的技术方案如下:
3、一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,包括:
4、(1)采集水样的三维荧光光谱数据和氨氮浓度数据,预处理后构建数据集,所述的数据集包括训练数据集和测试数据集;
5、(2)构建梯度提升回归树(gbrt)模型,并采用训练数据集进行训练,生成氨氮预测模型;
6、(3)采集待测水样的三维荧光光谱数据,预处理后输入至所述的氨氮预测模型中对待测水样的氨氮浓度进行预测。
7、本发明通过结合机器学习中的梯度提升回归树算法,将水样的所有三维荧光强度作为独立特征进行模型训练,获取三维荧光强度中氨氮浓度的关键特征,建立氨氮预测模型,实现预测水质氨氮浓度的目的。本发明没有对三维荧光光谱矩阵数据进行降维,三维荧光特征没有损失,建立的氨氮预测模型准确度更高。
8、采集水样的三维荧光光谱矩阵数据时,检测条件为:激发波长(ex)220~450nm,扫描间隔5nm,狭缝宽5nm;发射波长(em)260~600nm,扫描间隔1nm,狭缝宽5nm;扫描速度为2400nm/min。
9、水样氨氮浓度数据采用纳氏试剂法进行检测。
10、为了消除不同特征之间的量纲差异,使得数据更适合用于模型训练,需要对水样的三维荧光光谱数据和氨氮浓度数据进行预处理。
11、优选的,采用z-score标准化对水样的三维荧光光谱数据的原始矩阵和氨氮浓度数据进行线性变换,获得标准化的三维荧光光谱数据和氨氮浓度数据。
12、采用z-score标准化对水样的三维荧光光谱数据的原始矩阵和氨氮浓度数据进行线性变换的公式为:
13、
14、式中,x为标准化处理后的数据值,x为原始数据值,xmean为原始数据值的平均值,xstd为原始数据值的标准差。
15、步骤(2)中,采用scikit-learn库中的梯度提升回归树算法构建梯度提升回归树模型并进行训练。
16、进一步的,步骤(2)包括:
17、(2-1)定义训练集d={(x1,y1),(x2,y2),…,(xn,yn)},n为训练集中训练样本数量,xi(i=1,2…n)为训练样本的三维荧光光谱数据,yi(i=1,2…n)为训练样本的氨氮浓度数据,m为最大迭代次数,损失函数为l(y,f(x)),f(x)为输出回归树模型;
18、(2-2)初始化弱学习器:
19、
20、其中,f((x)是弱学习器,l是损失函数;
21、(2-3)最小化损失函数:
22、
23、hm是第m∈(1,2,…,m)轮迭代中第j个叶子节点的预测值,j为第m棵回归树的叶子节点的个数,l是损失函数,yi是第i个样本的真实值,fm-1(xi)是第m-1轮迭代后的模型对第i个样本的预测值,h(x*)第j个叶子节点的预测值;
24、(2-4)更新模型:
25、fm(x)=fm-,(x)+γ·hm(x)
26、fm(x)表示第m轮迭代后的模型预测值,fm-,(x)表示第m-1轮迭代后的模型预测值,γ表示学习率,hm(x)表示第m轮迭代训练得到的回归树的预测值;
27、(2-5)重复步骤(2-3)-(2-4)直至达到最大迭代次数,累加模型得到最终的氨氮预测模型:
28、
29、优选的,以均方误差(mse)作为损失函数。
30、优选的,训练梯度提升回归树模型时,学习率γ设定为0.1,树的数量设为50-100,最大深度为2-4,节点分裂所需的最小样本数为2,叶子节点所需的最小样本为1,每棵树的样本采样比例为1.0。基于同样的发明构思,本发明还提供了一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测设备,所述的水质氨氮快速检测设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上执行的计算机程序,所述存储器中存有氨氮预测模型,所述处理器执行所述计算机程序时实现以下步骤:
31、将待测水样的三维荧光光谱数据预处理后输入至所述的氨氮预测模型中,对待测水样的氨氮浓度进行预测并输出预测结果。
32、与现有技术相比,本发明的有益效果为:
33、本发明的方法不需要对三维荧光光谱数据分析采用传统的降维技术如主成分分析法(pca)和平行因子分析法(parafac),通过将所有三维荧光强度作为独立特征进行梯度提升回归树模型训练,高效提取与水质氨氮浓度密切相关的关键光谱特征,建立预测模型,从而快速准确地实现预测水质氨氮浓度的目的。
1.一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,包括:
2.根据权利要求1所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,采集水样的三维荧光光谱矩阵数据时,检测条件为:激发波长220~450nm,扫描间隔5nm,狭缝宽5nm;发射波长260~600nm,扫描间隔1nm,狭缝宽5nm;扫描速度为2400nm/min。
3.根据权利要求1所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,采用z-score标准化对水样的三维荧光光谱数据的原始矩阵和氨氮浓度数据进行线性变换,获得标准化的三维荧光光谱数据和氨氮浓度数据。
4.根据权利要求3所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,采用z-score标准化对水样的三维荧光光谱数据的原始矩阵和氨氮浓度数据进行线性变换的公式为:
5.根据权利要求1所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,步骤(2)中,采用scikit-learn库中的梯度提升回归树算法构建梯度提升回归树模型并进行训练。
6.根据权利要求5所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,步骤(2)包括:
7.根据权利要求1或5所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,训练梯度提升回归树模型时,学习率γ设定为0.1,树的数量设为50-100,最大深度为2-4,节点分裂所需的最小样本数为2,叶子节点所需的最小样本为1,每棵树的样本采样比例为1.0。
8.根据权利要求7所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测方法,其特征在于,训练梯度提升回归树模型时,学习率γ设定为0.1,树的数量设为100,最大深度为3,节点分裂所需的最小样本数为2,叶子节点所需的最小样本为1,每棵树的样本采样比例为1.0。
9.一种基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测设备,其特征在于,所述的水质氨氮快速检测设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上执行的计算机程序,所述存储器中存有氨氮预测模型,所述处理器执行所述计算机程序时实现以下步骤:
10.根据权利要求9所述的基于梯度提升集成学习算法与三维荧光的水质氨氮快速检测设备,其特征在于,所述的氨氮预测模型的建立方法包括:
