APP下载

基于变量选择技术的FTIR光谱识别算法研究

2021-06-13沈先春徐亮孙永丰胡运优金岭杨伟锋徐寒扬刘建国刘文清

量子电子学报 2021年3期
关键词:光度定性光谱

沈先春,徐亮,孙永丰,胡运优,金岭,杨伟锋,徐寒扬,刘建国,刘文清

(1中国科学院合肥物质科学研究院安徽光学精密机械研究所环境光学与技术重点实验室,安徽 合肥 230031;2中国科学技术大学,安徽 合肥 230026;3安徽省环境光学监测技术重点实验室,安徽 合肥 230031)

0 引言

被动傅里叶变换红外光谱(Passive-FTIR)在测量毒害危险气体时具有在线、远距离、非接触等特点,广泛应用各种监测场合[1−6],在危险气体预警监测过程中,光谱识别算法是预警功能的核心技术。传统的FTIR定性识别算法一般采用谱库检索的方式[7−11]在低维度的光谱数据库中进行识别分析,例如点积运算、混合匹配校正等方法,然而此类算法不能够在光谱吸收种类较多或者干扰成分较多的情况下进行定性识别分析[10,11]。近年来,在模式识别和人工智能技术的蓬勃发展环境下,FTIR光谱定性识别算法的研究也更加普及。例如2012年Lavinea等[12]采用基于模式识别的谱库检索方法对化合物进行识别分析;2015年Zhou等[13]通过半监督支持向量机的方法实现对食用油和地沟油的快速识别,2006年Bai等[14]利用基于核主成分分析的支持向量回归方法对混合烷烃进行了识别分析;2004年Liu等[15]采用多重交叉与定量变异、自适应变异相结合的遗传算法对FTIR测量的光谱进行定性定量分析,利用选择概率和适应度值控制整个识别过程,并用101种有毒有机化合物的标准数据库对6个未知样本进行了定性定量分析,取得了理想的识别效果。

随着标准光谱数据库种类的不断扩增,用传统的方法对光谱数据库进行建模或训练需要大量的时间,除此之外,在利用大光谱数据库进行定性识别分析时,光谱之间存在一定的多重共线性问题。为了克服以上问题,本文根据SFS、LASSO和Elastic Net变量选择方法[16−18],结合广义交互验证方法[19]对采集的光谱进行变量的初步选择,然后利用实际气体浓度大于0的物理特征,对初步选择的浓度变量小于0的予以剔除,再用最小二乘法对剩余变量重新拟合,计算得到新的浓度大小,循环该步骤直到所有变量的浓度均大于0为止,此步骤称为迭代最小二乘,然后利用待选变量在拟合向量中的占比大小对变量进行筛选,得到最终的目标识别组分。以上所有步骤组合形成定性识别算法。下文中,为了简便描述,不同识别算法用各自的变量选择方法名称来表示。最后用两组外场试验验证了不同算法的识别性能,并将识别的结果与基于数字光谱合成校准思想的非线性最小二乘方法(NLLSQ)[20]定量分析浓度的相对误差进行联合分析。实验结果表明所建立的识别分析算法具有无需进行样本训练分析、平均识别一条目标波段内的光谱成分速度为秒级响应、并且识别准确率高达98%以上等优点,能够为被动FTIR光谱实时在线预警监测应用提供技术支持。

1 方法原理

基于朗伯-比尔定律将FTIR测量得到的透过率光谱表示为吸光度形式,并依据光谱数据库的光谱参数信息,把目标气体吸光度的线性表达式表示为

式中:Am×1为测量得到的一列含有m个光谱数据点的吸光度光谱数据;Km×n为m行n列标准光谱的吸光度矩阵,其中m为光谱数据点个数,即波数点个数,n为参与吸收的成分个数;Cn×1为n个成分的浓度组成的列矩阵;L为气体吸收的光程。定性识别方法的本质就是要选出变量Km×i使得拟合的结果与测量吸光度的差值平方和最小,其中i即为识别出的气体成分。

1.1 序列前向选择

经典的SFS算法应用于定性识别中的本质是将光谱从标准数据库集合T中一个个筛选到集合S中,然后利用待选集U中的光谱与当前残差谱的绝对相关性进行不断筛选,最终初步筛选得到光谱组分,算法的一般流程如下:

1)初始化:令组分选择集合S为空集,对集合T进行编号,初始化i为0时,代表浓度的自变量Ci=0,其中i为循环变量,i∈ {0,1,···,n−1}。

2)搜索原理:先求出残差向量A−KCi与未选中组份KU的相关系数R,并利用相关系数的最大值进行筛选得到初步目标组分,而KU为集合K中与未选择集合U中编号对应的列矩阵。最大相关系数对应的组分R可表示为

式中上标T为矩阵转置运算,然后将R从集合U中不断筛选到集合S中。

3)迭代:通过CLS方法迭代更新浓度自变量,则

4)循环:迭代计算以上2)、3)两步,直至i达到n−1时停止计算,最终识别得到组分变量的集合V=[C(0)···C(n)]。

上述流程便是完整的SFS识别方法。

1.2 LASSO

LASSO方法的本质是在CLS算法的最优化目标函数基础上,增添一个L1范数的惩罚项,达到对模型系数压缩的目的,使一些系数变小甚至变成0,达到选择变量的功能。根据线性模型(1)式,LASSO方法的最优化目标函数可表示为

式中第一项为CLS的最优目标函数,第二项为添加的正则化项。其中λ为非负数的惩罚参数,控制参数压缩程度,其值越大,参数的惩罚压缩力度越大,导致LASSO方法估计得到的非零变量个数越少,易得到稀疏解。数学原理上,(4)式第一项表示模型准确性,该项值越小,模型的拟合误差越小,精度越高;第二项表示模型的稳定性,通常情况下,其值越小,模型越稳定。LASSO方法应用于光谱识别算法的具体步骤如下所示:

3)输出结果:完成循环步骤2)后输出变量选择的集合V=[C(0)···C(k)]。以上算法步骤称为LASSO识别分析算法。

1.3 Elastic Net

Elastic Net方法集成了岭回归和LASSO方法的特点,惩罚项中既有L1范数项又有L2范数项,故Elastic Net方法可表示为

由(5)式可知,λ=0时就是岭回归方法,而δ=0时则为LASSO方法。故Elastic Net方法不仅具备组效应性质,还具备LASSO方法的变量选择能力。

对于岭回归确定的参数δ,(6)式的变换过程说明Elastic Net问题可转换为LASSO问题,进而可用上述LASSO解的步骤解Elastic Net问题,此处不再重复赘述。以上变量选择方法选择出来的结果用广义交互验证进行变量评判,基于以上变量选择方法的定性识别分析方法在整体算法分析流程上可表示为图1。

2 实验与分析

为验证以上各识别算法的准确性和实用性,分别采用两组不同方式的模拟排放实验进行验证分析。

2.1 CH4排放实验与结果分析

在空旷场地上,利用浓度为2%的CH4标准气体进行排放实验对识别算法进行验证,而被动FTIR遥测系统的检出能力取决于目标气体与背景的温差,实验时气温为32.7°C,湿度约为21%。将光谱仪固定在三脚架上,让远处的楼墙充满光谱仪的视场,然后打开光谱仪,仪器参数设置为32次平均,分辨率为1 cm−1,扫描频率选择375 kHz挡,待仪器稳定后,连续采集当前的背景光谱,在光谱仪视场上释放CH4气体,然后用以上建立的定性识别算法对采集的CH4气体吸收光谱进行定性识别分析,试验现场和采集得到未定标的原始光谱数据如图2所示。

用简化的三层大气传输模型对采集的CH4透过率光谱进行反演,并根据朗伯-比尔定律转换成吸光度光谱,再用自动基线校正方法[21]对得到的CH4吸光度光谱进行基线校正,校正后的光谱如图3中黑色实线所示,并用不同识别分析方法对得到的吸光度光谱进行识别分析,识别的组分结果如表1所示,并且识别过程中的拟合光谱如图3中虚线所示。

图1 光谱识别算法流程图Fig.1 Flow chart of the spectral identification algorithms

图2 (a)实验场地;(b)原始光谱数据Fig.2 (a)Experimental field;(b)Original spectral dataset

根据图3和表1结果可知,三种不同的变量选择算法能够准确地识别出目标气体CH4,除此之外,也能够识别出干扰成分H2O,并且各自的拟合光谱谱形相似,且LASSO与Elastic Net的拟合光谱几乎相同,SFS、LASSO、Elastic Net三种不同识别算法耗时分别为0.376、2.06、2.02 s,各自拟合均方根误差分别为0.576、0.579、0.579,满足实际应用的需求,表明所建立的识别算法可以应用于简单的被动遥测应用场景。

表1 不同算法下CH4的识别结果Table 1 Identification results of CH4gas by different algorithms

图3 基线校正后的吸光度光谱和识别算法对应的拟合光谱Fig.3 Absorbance spectrum with baseline corrected and spectrum fitted by recognition algorithm

2.2 SF6分间断连续排放实验与结果分析

上述CH4排放实验是光谱识别分析方法最初级的外场应用研究[22],因为其只对单次CH4测量光谱进行了识别分析方法研究,而此次采用不同时间段内连续排放SF6气体的实验对光谱识别算法的准确性和灵敏性进行验证,用识别结果中准确的个数与确切目标个数的比值衡量识别准确率,用不同时间段内目标波段气体的识别耗时来衡量灵敏性。实验采用自主研制的OP-FTIR光谱仪对SF6气体释放区进行连续测量,SF6气体的释放间隔人为控制为由短到长,采集光谱数据参数设置为2次平均,分辨率为1 cm−1。整个过程的SF6释放气体时间纪录如表2所示,OP-FTIR光谱仪连续采集的光谱如图4所示,此次实验共采集124条光谱。

图4 SF6原始光谱数据Fig.4 Original spectra of SF6

表2 放气时间表Table 2 Outgassing schedule

用所提出识别算法对上述采集到的124条光谱进行识别分析,识别分析波段采用900~980 cm−1,选择变量在拟合向量中的占比值设置为0.5,为了检验识别结果的准确性,采用精准的非线性最小二乘(NLLSQ)方法对测量的光谱进行定量分析,在定量拟合分析过程中,如果强行拟合不存在的目标气体种类,定量结果的相对误差较大,故识别结果的准确性可依据此现象来辅助判断。如图5显示了不同算法的识别结果和NLLSQ定量计算浓度的相对误差大小,图中方型曲线中的1表示识别出SF6气体,0则表示未识别出SF6气体,SF6定量计算浓度的相对误差用星号表示,其中虚线代表相对误差为0.1的直线,根据以上判断规则,定量计算的相对误差高于0.1的光谱可看作没有SF6气体,反之则有。

从图5可以看出,各识别算法识别的结果与实际放气时间相一致,并且不同识别算法的识别结果基本一致,除了第110条光谱,LASSO和Elastic Net方法未识别出SF6气体,而SFS识别出SF6气体,为了进一步验证两者之间的准确性,给出了第109、110和111条原始数据和第110条光谱的不同识别算法拟合图,如图6所示。由图6(a)可知,110和111号光谱的SF6气体的特征吸收峰很弱,几乎接近噪声水平,但是三种识别方法均识别出111号光谱中含有SF6气体,从图6(b)的拟合效果可以看出SFS算法识别拟合误差小,再根据实际现场气体排放过程和顺序信息对应关系,第110号光谱中应含有少量的SF6气体,定量浓度为2.68µmol/mol,符合阈值基准线判断标准。综上可得,当光谱信噪比较低时,LASSO与Elastic Net方法的识别准确率下降。不同时间段内的SF6气体识别结果反映了各识别算法能够快速识别出目标成分,识别准确率达99%以上,三种不同识别算法在气体目标波段内识别的平均时间为0.16、1.37、1.31 s,充分说明建立的FTIR光谱识别算法能够满足危险气体预警监测的需求。

图6 (a)基线校正后的三条光谱;(b)不同算法的拟合结果Fig.6 (a)Three spectra after baseline correction;(b)Spectra fitted by different algorithms

3 结论

提出了基于变量选择技术的光谱识别分析算法并进行了实验研究,巧妙地利用NLLSQ定量分析浓度相对误差来辅助判断识别结果的准确性,实验结果表明各识别算法均能够有效且快速准确地识别目标气体成分,还能识别出干扰组分水汽,整个过程无需采样建模和模型训练,平均识别一条目标波段范围内的光谱所需时间为秒级,是快速有效的识别分析方法,大大提高了被动FTIR对有毒有害气体泄露的预警监测能力,为灾害现场的智能防控提供了技术支持。

SF6连续间断排放实验表明:当光谱信噪比较低时,LASSO和Elastic Net光谱识别算法的准确性降低,而对于不同信噪比的光谱定性识别算法需要进一步研究分析。根据吸光度光谱进行识别分析时,需要对测量得到的吸光度谱中漂移的基线进行校正,而基线校正的程度决定了定性识别过程中的浓度大小,想要在识别目标组分的同时获取准确的浓度信息则需要准确的基线校正方法,基线校正的准确性对识别算法的影响也值得深入研究。

猜你喜欢

光度定性光谱
一种基于SOM神经网络中药材分类识别系统
基于三维Saab变换的高光谱图像压缩方法
近红外光谱分析技术在纺织品定性定量分析上的应用
基于3D-CNN的高光谱遥感图像分类算法
分裂平衡问题的Levitin-Polyak适定性
基于UPLC-Q-Tof-MS/MS和HPLC的牙膏中叶绿素铜钠主要成分的定性与定量研究
带定性判断的计分投票制及其公理刻画
薄膜光伏组件在不同光谱分布下的测试差异
乘用车后回复反射器光度性能试验研究
皎皎月光