激光诱导击穿光谱(LIBS)结合字典学习对气溶胶光谱数据筛选方法的研究

2024-01-13 13:47李雨亭陈靖陈文杰袁茼珊王启璇
中国无机分析化学 2024年2期
关键词:谱线气溶胶字典

李雨亭 韦 中* 陈靖 陈文杰 袁茼珊 王启璇 蒋 焱 丁 宇

(1.南京信息工程大学 江苏省大数据分析技术重点实验室,南京 210044;2.南京信息工程大学 江苏省大气环境与装备技术协同创新中心,南京 210044;3.南京信息工程大学 江苏省气象能源利用与控制工程技术研究中心,南京 210044)

气溶胶是气体介质中细小的固态或液态颗粒的悬浮体系[1],在大气辐射收支平衡、气候变化、以及环境污染研究等方面起着重要作用[2]。因此,利用有效的手段测量和分析气溶胶的元素组成具有重要意义。激光诱导击穿光谱(LIBS)是一种新兴的元素含量分析技术[3],具备多元素分析和原位测量等技术优势[4],已广泛应用于气溶胶以及颗粒物检测等实际应用场景[5-9]。然而,由于气溶胶中离散颗粒物的空间分布不均匀[10],导致发射的激光脉冲无法每次均能击中离散的颗粒,从而产生大量的无效光谱。这些无效的光谱数据将会对后续的定量分析产生不利的影响,通常需要研究人员耗费大量的时间进行剔除。因此,在LIBS应用于气溶胶分析时,迫切需要寻求一种方法来筛选有效光谱数据,从而改善后续定量分析等研究的效果。

近年来,研究人员针对气溶胶光谱数据筛选开展了大量研究。CARRANZA等[11]发现由于气溶胶中颗粒的采样率较低,将采集到的全部光谱数据进行平均可能会限制特征谱线的信噪比。故提出一种条件数据分析法来筛选光谱数据,通过比较特征谱线的强度与相邻无特征连续光谱区域的发射强度,若两者比值高于阈值,则识别为有效数据。筛选过的数据信噪比比未筛选的信噪比高出70%到150%。BUCKLEY等[12]采用LIBS检测焚化炉中有毒金属颗粒物的浓度,对采集到的光谱数据用条件数据分析法筛选。与全部光谱取平均值相比,采用筛选后的数据进行研究可以提高检测的灵敏度,得到更低的检出限(LOD)。LITHGOW等[13]通过计算元素谱线的峰基比(Peak-to-base,P/B)对城市环境中含金属的PM2.5浓度进行研究,与绝对峰值法相比,P/B可以减少等离子体能量变化对研究的影响。CARRANZA等[14]对比了P/B和信噪比法(SNR)的可靠性,随着阈值增加,无效光谱的误判率随之降低。此外,与P/B相比,SNR为光谱分析提供了更可靠的评价方法。YAO等[15]提出一种新的光谱筛选方案——标准差法(SD),通过对比SD法、SNR法和绝对峰值法对光谱数据的识别性能,得出SD法不仅可以更准确地区分光谱数据,且其阈值能适应检测条件的发生。

综上所述,SNR、SD等方法都属于阈值筛选法,这类算法虽然可以简便地对数据进行筛选,但是它只关注于单个特征值,通常忽略数据的整体分布。因此,本文提出一种结合字典学习的气溶胶光谱数据筛选方法(K-SVD-SVM)。其中字典学习以K-SVD算法为基础,结合SVM实现对有效光谱数据的筛选。研究中,使用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、精确率和召回率的调和平均(F1)来评估模型的性能。

1 实验部分

1.1 装置

本实验采用液体雾化的实验方式,实验装置如图1所示,由激光器、延时发生器、反射镜、聚焦透镜、光纤、光谱仪、气溶胶发生器、样品和计算机组成。激光光源为输出波长1 064 nm的Nd:YAG激光器(Dawa 200,Beamtech),脉冲能量200 mJ、重复频率2 Hz。激光脉冲经反射镜反射,被透镜(f=150 mm)聚焦到NaCl气溶胶气团内。诱导击穿产生的等离子体被水平放置的光纤探针收集并耦合进入光谱仪(Avantes,AvaSpec-ULS2048-2-USB2,198 ~ 400 nm、分辨率0.07 nm;AvaSpec-ULS4096CL-EVO,400~938 nm、分辨率0.3 nm)。

图1 实验装置图Figure 1 Experimental device diagram.

1.2 样品制备

本实验利用去离子水将氯化钠稀释制备成7种不同浓度梯度的NaCl溶液作为实验样品,如表1所示。NaCl溶液经气溶胶发生器雾化为气溶胶样品。首先,对NaCl溶液(10%)采集5 000条光谱,用于定性分析以评估分类算法的性能。再对7种不同浓度的NaCl气溶胶样本额外各采集500条光谱,总计获得3 500 条光谱,用于定量分析。

表1 标准样品中Na浓度Table 1 Concentration of Na in standard samples

1.3 算法介绍

1.3.1 字典学习

字典学习(Dictionary learning)是一种受到人类大脑的启发而发展起来的机器学习技术,旨在从高维数据中学习一组稀疏表示的基向量[16]。这一技术模拟了人类大脑如何从复杂的输入数据中提取有用信息的过程。

K-SVD(K-singular value decomposition)是一种用于字典学习的经典算法,旨在从数据中学习一组基向量的字典,以便能够有效地表示和重构输入数据[17]。从数学角度看,稀疏表示是针对不确定方程组Xm×n=Dm×K·SK×m求解提出的。其中,X(大小为m行n列)是训练样本集,D(大小为m行K列)是字典矩阵,S(大小为K行m列)是稀疏表示。K-SVD算法的核心思想是最小化重构误差且保证稀疏矩阵S尽可能稀疏,目标函数如下:

其中,si为训练样本xi的稀疏表示,T是稀疏阈值。

K-SVD算法步骤如下[18]:

1)初始化字典D0:每个基向量从标准正态分布中随机初始化。

2)稀疏表示:字典D固定,计算每个数据样本的稀疏表示S。本实验采用Lasso算法加入L1正则化来获得稀疏表示,对每个训练样本单独求稀疏表示:

3)字典更新:稀疏表示S固定,通过最小化重构误差,更新字典D中的基向量,是K-SVD算法的关键步骤。目标函数可转化为:

4)迭代:重复步骤2和步骤3,直到达到最大迭代次数或满足收敛容忍度的条件。

1.3.2 性能评估参数

关于分类算法的性能评估,评估参数是:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、召回率与精确率的调和平均(F1),计算公式如下[19]:

其中,TP(True positive)为正确的正例个数,即样本为正且预测为正。FP(False positive)为错误的正例个数,即样本为正但预测为反。TN(True negative)为正确的反例个数,即样本为反且预测为反。FN(False negative)为错误的反例个数,即样本为反但预测为正。F1表示Precision与Recall同样重要,可较为全面地评估一个分类算法的性能。

2 结果与讨论

2.1 定性分析

光谱中的波长及其对应的强度是用来表征被实验样品中元素含量的重要信息。如图2所示,参考美国国家标准与技术研究(NIST)数据库可知,本实验激发的NaCl溶液的特征谱线主要包含Na Ⅰ 589.59 nm、Cl Ⅰ 821.20 nm、O I 777.19nm、N Ⅰ 746.83 nm、H Ⅰ 656.28 nm等。如图3所示,不同浓度的NaCl气溶胶光谱中Na的强度有明显差异,随着浓度的增加,Na和Cl的谱线强度均呈上升趋势。

图2 NaCl气溶胶样品典型光谱Figure 2 Typical spectra of NaCl aerosol samples.

图3 不同浓度NaCl气溶胶样品的代表性LIBS光谱对比图Figure 3 The comparison of representative LIBS spectra of aerosol samples with different concentrations of NaCl.

2.2 分类算法的性能评估

本文首先对两种常规的阈值筛选法(SD和SNR)的分类性能进行评估。SD值是特征谱线强度与周围若干点的标准偏差,SD值越大,说明一组数据的离散程度越大,即峰值越明显。SNR值是特征谱线强度与相邻无特征连续背景强度的SD之比。由于阈值筛选法是通过判断SD值或SNR值是否达到阈值来进行光谱筛选,因此需要选定一条特征谱线。由于Na I 589.59 nm谱线的波峰较为明显,而且受附近谱线干扰较小,因此选取Na 589.59 nm作为阈值筛选法的特征谱线,计算不同阈值对应的评估性能,如图4所示。

图4 阈值法性能指标随阈值变化图Figure 4 Variation of performance indexes of threshold method with threshold value.

由图4可知,无论采用何种阈值法,精确率都随着阈值的增加而升高,而召回率都随着阈值的增加而降低,F1随着阈值的增加先升高后降低。导致这一现象的原因可能是,阈值越大,筛选条件越严苛,故误判(FP)少,精确率高;漏报(FN)多,召回率低。当F1取到最大值时,表示此阈值下的分类性能最佳。使用SD法的情况下,当阈值取到116时,F1值为最大值0.84,模型性能最优,此时准确率为91.2%。使用SNR法的情况下,当阈值取到14时,模型性能最优,F1值为最大值0.82,此时准确率为89.7%。

虽然阈值筛选法可以简便地对光谱数据进行筛选,但是它没有考虑光谱数据的分布和统计特性,导致了对数据的不准确分类。因此,本节采用字典学习中的K-SVD算法结合SVM(K-SVD-SVM)对光谱数据进行筛选,将原始光谱数据的8 190个数据点作为字典学习的输入,总样本的70%作为训练集,30%作为测试集。在使用K-SVD方法进行数据降维时,字典矩阵基向量的数量会对识别率产生影响,当基向量数较少时,字典矩阵不能充分反映训练样本的信息,当基向量数较大时,则会占用大量的计算资源。将字典矩阵基向量数分别设置为1~8,计算每个基向量数对应的Accuracy、Precision、Recall、和F1,实验结果如图5所示。

图5 性能指标随字典基向量数变化图Figure 5 Performance index changes with the number of base vectors of the dictionary.

由图5可知,当基向量数小于3时,性能指标均呈上升趋势。由于基向量数越多,字典矩阵能表征的光谱信息越全面,故识别率越高。当基向量数大于3时,性能指标均基本不变。分析其原因,含有3个基向量的字典矩阵已经能表征大部分光谱信息,冗余的基向量只会浪费计算资源,故将字典基向量数设置为3。

将学习得到的字典矩阵结合Lasso算法对测试集求稀疏表示,稀疏表示构成的矩阵作为SVM分类算法的输入量,得到的分类结果混淆矩阵如图6所示。混淆矩阵直观地表示了算法对光谱数据分类的性能,矩阵块颜色越深表示该分类样本数越多,颜色越浅表示该分类样本数越少。沿混淆矩阵对角线的值表示正确分类的样本数量,而对角线以外的值表示错误分类的样本数量。由图6可知,TP为375,FP为28,TN为1067,FN为30,根据公式计算可得准确率、精确率、召回率、F1值分别为96%、95%、95%、0.95。

图6 光谱数据的分类混淆矩阵Figure 6 Classification confusion matrix of spectral data.

较之前的阈值筛选法相比,该方法的分类性能有了明显提高,F1值从SD法的0.84和SNR法的0.82提高到0.95,准确率从SD法的91.2%和SNR法的89.7%提升到96%。通过K-SVD算法对原始光谱数据进行特征提取,从高维空间得到稀疏表示,再结合SVM分类模型可以有效地实现光谱数据的快速识别。

2.3 定量分析

采用K-SVD-SVM方法对7种不同浓度的气溶胶样品进行筛选后,使用结合遗传算法的极限学习机方法(GA-ELM)开展定量分析,同时将未筛选的全部原始光谱数据输入定量模型进行对比,进一步验证K-SVD-SVM方法的有效性。定量模型的性能评估参数是:均方根误差(RMSE)、相关系数(R2)。RMSE是预测值与真实值之间差异的平方和的均方根,RMSE越小说明GA-ELM模型的准确率越高。R2值越接近1,表示回归的拟合度越高。

2.3.1 全部原始光谱定量分析

总样本包括如表1所示的7个不同浓度的NaCl气溶胶样本,每个浓度500条光谱数据。为确保训练集能够包含最低和最高浓度的样本,选取浓度为1%、5%、10%、18%的NaCl气溶胶样本的全部原始光谱数据作为训练集,其余光谱数据作为测试集。将训练集输入GA-ELM算法建立定量预测模型,并对测试集进行浓度预测,结果如图7所示。测试集预测结果的RMSE=0.0303,R2=0.8726。图中预测结果的误差棒较大,可能是由于未经处理的原始光谱含有大量无效光谱,这将对定量分析等研究产生不利影响。因此,需要采用K-SVD-SVM方法对原始数据进行筛选。

图7 全部原始数据测试集的预测效果Figure 7 Prediction effects of all raw data test sets.

2.3.2 采用K-SVD-SVM筛选的光谱定量分析

采用K-SVD-SVM对各样本的原始数据进行筛选,剔除无效光谱数据。选取浓度为1%、5%、10%、18%的NaCl气溶胶样本的有效光谱数据作为训练集,筛选出的其余光谱数据作为测试集。将训练集输入GA-ELM算法建立定量预测模型,并对测试集进行浓度预测,结果如图8所示。测试集预测结果的RMSE=0.0187,R2=0.9809。由图8可知,有效光谱的预测结果误差棒较小,反映了预测值的离散程度较小。

图8 筛选出的有效光谱测试集的预测效果Figure 8 Prediction effects of the selected effective spectral test set.

两种方法的定量分析对比结果如表2所示。对采用K-SVD-SVM方法筛选过的有效光谱数据进行浓度预测,GA-ELM模型的预测性能有了明显提高,RMSE由全光谱建模的0.030 3优化到0.015 3,表明筛选后的数据预测值与真实值之间差异的平方和均方根更小,预测准确率更高。R2由0.872 6提升到0.979 5,表明筛选后的数据回归拟合度更高。此外,筛选后的数据预测值的误差棒明显小于原始光谱的预测值误差棒。

表2 定量分析对比结果Table 2 Comparative results of quantitative analysis

3 结论

提出了一种结合字典学习的气溶胶光谱数据筛选方法——K-SVD-SVM。将该方法与SD法和SNR法进行对比。结果表明,当字典基向量数设置为3时,模型性能最优,准确率、精确率、召回率和F1值分别为96%、95%、95%、0.95。而SD法的最优准确率为91.2%,SNR法最优准确率为89.7%。结果表明,K-SVD-SVM方法可以筛选出有效光谱数据,且在性能方面优于阈值筛选法。进一步地,采用K-SVD-SVM方法对7种不同浓度的气溶胶样品进行筛选后,将有效数据输入GA-ELM模型开展定量分析,同时将未筛选的原始光谱数据输入定量模型进行对比。未筛选的原始数据测试集RMSE和R2分别是0.030 3和0.872 6,筛选光谱后,分别提升至0.018 7和0.980 9。结果表明,K-SVD-SVM方法有着较好的分类性能,且采用此方法筛选出的有效数据可以为气溶胶中元素定量分析提供数据支撑。

猜你喜欢
谱线气溶胶字典
开心字典
开心字典
基于HITRAN光谱数据库的合并谱线测温仿真研究
气溶胶传播之谜
气溶胶中210Po测定的不确定度评定
铁合金光谱谱线分离实验研究
四川盆地秋季气溶胶与云的相关分析
锶原子光钟钟跃迁谱线探测中的程序控制
我是小字典
正版字典