基于太赫兹时域光谱和机器学习的新旧贝壳识别研究
2023-01-12白雪杰廉飞宇付麦霞
白雪杰, 廉飞宇,2, 付麦霞,2
(1. 河南工业大学信息科学与工程学院,河南 郑州 450001; 2. 河南工业大学 粮食信息处理与控制教育部重点实验室,河南 郑州 450001)
0 引 言
珍珠有着特殊的功效,在药材、美容、装饰等领域有着广泛的应用,贝壳内层的化学组成与珍珠相似,也有着相同的应用,用贝壳粉制作的珍珠,称为贝珠。其中贝珠有用新鲜贝壳制作的,品质较好,也有用死亡半年以上贝壳制作的,品质较差,近年来出现了很多用死亡贝壳冒充新鲜贝壳的案例,侵害了消费者的权益。因此快速准确地鉴别贝壳种类,对保证产品质量和保护消费者权益有着重要的意义。目前对贝壳粉的检测有较为经典的液相色谱仪测量贝壳氨基酸含量法[1],但是该方法对样品有损且过程缓慢。还有光谱学方面的傅里叶变换红外光谱法,文献[2]以不同贝壳粉的碳酸钙文石在红外光谱中的特征吸收峰位不同作为鉴别方法[2],但是碳酸钙文石的颗粒粒径大小、晶体结构受贝壳粉样品的制备差异影响较大,使得即使是同一种贝壳粉,在不同的制备条件下,其热相变[3]行为也存在着不可忽略的差异,因此该方法误差较大。除此之外还有X射线衍射法、指纹图谱法、电感耦合等离子等分析方法[4-5],这些方法操作复杂,耗费时间长,人力要求高,对贝壳样品的破坏程度大,难以做到实时检测。与这些方法不同,THz-TDS技术操作简单、不同物质的特征区分明显、鲁棒性高。尤其在同类的光谱分析技术中,THz-TDS技术具有较宽的探测带宽和较高的探测信噪比,而且很容易就可获得所需的光学参数,同时由于THz较小的脉冲能量,也不会对样品造成破坏[6-8]。但是在太赫兹光谱中,新旧贝壳分别对应的谱之间相互存在交叉,无法人工分辨。
在分类识别方面,支持向量机(SVM)被广泛应用,但是对于数据维数较多,特征存在较大冗余的问题,单纯使用支持向量机算法,精度方面仍有欠缺。目前常用于降维的机器学习算法主成分分析(PCA),不仅可以提取到数据最主要的特征,降低冗余,还可以极大地减少计算量,故产生PCA—SVM的结合算法。但使用该算法只能将4种太赫兹光谱分别进行实验,从中选取精度最高的1种,这样就造成了其余3种光谱数据的浪费。
综上,本文经过研究拟提出一种PCA—Adaboost—SVM的识别模型,利用太赫兹时域光谱技术得到不同种类贝壳的太赫兹时域光谱、频域光谱、折射率谱和吸收谱的数据,再通过PCA降维、Adaboost多维特征融合以及SVM分类的方法,得到新旧贝壳分类预测模型。该模型重在将特征进行融合,充分利用4种光谱数据。经实验研究表明,与其他算法相比,本文算法模型具有更好的分类精度。
1 模型的构建
1.1 提出方法
为了充分利用4种光谱信息,本文开发了一种PCA—Adaboost—SVM识别模型。该模型首先采用主成分分析法(PCA)从4种光谱中提取特征信息,以降低用于识别的特征维数[9],然后把提取到的主成分进行Adaboost多维特征融合,最后输入到核函数为 Radial Basis Function 的支持向量机 (SVM)对贝壳种类进行分类预测,其算法机制架构如图1所示。此方法旨在提高识别的准确率、模型的稳定性以及模型的可行性。
图1 算法机制框架
1.2 建立模型
1.2.1 主成分分析(PCA)
1) 数据归一化,也称作数据标准化。数据归一化的方法有很多,这里选择Z-score标准化,对上述数据做如下处理:
1.2.2 支持向量机(SVM)
如果原始数据是线性的,那么可以找到一个或多个阈值将数据进行分类,但如果原始数据是非线性的,那么无法直接找到这些阈值,此时就需要利用SVM算法。SVM算法本质就是将低维数据映射到高维,因为从理论上说非线性可分的原始数据被升到无限维时一定可以变为线性可分[11]。假设输入训练集为:
其中C是事先设定的参数,没有固定值,需根据实际情况确定,为松弛变量,为正则项。公式(4)就是要在满足限制条件的情况下求的最小值,但是直接求解较为困难,故可根据优化理论将上述问题转换为等价的对偶问题进行求解。将(4)化为对偶问题得到公式(5),故需求解公司(5)即可。
1.2.3 自适应提升(Adaboost)
在实际情况中,一个分类器往往难以达到很好的分类效果,就算是考虑了全方面,其分类效果也不尽如意,而且上升空间极其受限,而Adaboost很好地解决了这一问题。Adaboost是一种集成学习算法,其核心思想是将多个分类器加权组合成一个强分类器,各个分类器的结果是相互关联的,后面的分类器会受到前面分类器分类效果的影响并根据影响调整和设定当前分类器的权重,每一级的分类器的关注点并不一样,所以通过加权联合起来便可以达到很好的效果[12]。
Adaboost算法分类精度高,其具体步骤如下。设输入数据集为: T ={(xi,yi)},i=1~N,输出为二分类暂定为。
1)初始化采样权重:
3)更新权值分布:
4)回到步骤2)循环M次;
5)得到最终的分类器:
图2 Adaboost算法图解
2 实验与分析
2.1 仪器与材料
2.1.1 实验原料与样品制备
本次实验选择新鲜贝壳1种,陈旧贝壳3种,每种随机选取10个作为样本。实验前需制备成样品,每种贝壳的10个样本均需研磨,然后随机抽取部分粉末进行组合,作为该种贝壳的粉末,再经过干燥、称重、压片、厚度测量、样品编号等步骤完成制作。4种贝壳样品的制备方式如表1所示。
表1 样品制作方式
2.1.2 实验仪器
实验装置采用河南工业大学粮食信息处理与控制教育部重点实验室的Zomega-Z3型THz-TDS系统。装置如图3所示。
图3 THz-TDS系统
THz-TDS系统采用的是钛蓝宝石飞秒锁模脉冲激光器,其产生的激光通过偏振射束分离器分为泵浦光和探测光。泵浦光可经调制入射到GaAs光电导天线,激发产生THz脉冲[13]。穿过贝壳样品的THz脉冲被抛物镜集聚在ZnTe探测器上,并与探测光在此会聚。由于穿过样品时THz脉冲的相位和幅值会发生改变,这样样品的信息就以幅值与相位的形式被THz脉冲携带并聚集到探测器上。最后利用探测系统对THz脉冲信号进行测量,通过不断改变延迟线,即可得到THz信号的时域波形,然后将得到的信号送入锁相放大器进行放大,接着输进计算机作数据处理。
测量时为减少空气中其他物质(主要为水分)对测量产生的影响,将THz的整个光路密封在充满干燥氮气的容器里,以提高测量结果的信噪比。
2.2 样品测试
样品测试之前设置测试条件:温度20 ℃;湿度小于1.0%(充干燥空气);激光中心波长800 nm、重复频率 80 MHz、脉冲宽度 100 fs、输出功率 1.10 mW;泵浦光强 150 mW;探测光强 13 mW;天线电压 79 V;系统信噪比 5 000;谱分辨率 29.3 GHz。每个样品测量3次,取其平均值。
2.3 数据处理
太赫兹的波谱范围在0.1~3 THz均有效,但是越靠近边界受到干扰等不确定因素的影响越大[14],所以通过数次的实验和观察,确定0.2~1.6 THz频谱范围作为分析重点关注范围。通过实验得到了4种样品的时域光谱图、频域光谱图、折射率光谱图以及吸收光谱图,已知no.1、no.3、no.4为陈旧贝壳,no.2为新贝壳。
图4显示了4种贝壳样品的典型太赫兹时域光谱。从时域谱中可见样品对太赫兹光吸收较多,与参考信号(ref)氮气相比,在幅度上衰减很大,在时间上有一定的延迟。图4(a)为参考信号和4种贝壳样品的时域光谱,图4(b)为四种贝壳样品的时域光谱。
图4 太赫兹时域光谱
通过对时域波形(如图4所示)进行快速傅里叶变换(FFT),得到频域谱(如图5所示),由频谱可见,贝壳样品主要吸收的是太赫兹的高频部分,从而使频谱宽度变窄。图5(a)为参考信号和4种贝壳样品的频域光谱,图5(b)为四种贝壳样品的频域光谱。
图5 太赫兹频域光谱
通过公式计算,可以得到样品的折射率谱如图6所示。由折射率谱上读出,1 THz处折射率:贝壳1号的折射率为2.035, 贝壳2号的折射率为2.78,贝壳3号折射率2.034,贝壳4号的折射率为1.703。由图中可得,在0.2~0.8 THz之间,贝壳1号和贝壳2号的折射率相似,而在1.0 THz 之后,贝壳1号和贝壳3号的折射率相似。
图6 4种贝壳样品的太赫兹折射率光谱
由公式计算,可以得到样品的吸收光谱如图7所示。由吸收谱可见4个样品的吸收均随频率的增加而增加,其中贝壳1号和贝壳2号的吸收系数光谱的总体趋势基本一致,在0.842 THz处存在明显的吸收峰。而贝壳2号在0.732 THz处存在一个较大的吸收峰,贝壳 4 号在 0.586 THz、0.805 THz处存在两个较小的吸收峰。
图7 4种贝壳样品的太赫兹吸收光谱
2.4 结果与分析
虽然从粉末样品外观来看,新旧贝壳区别并不明显,但是太赫兹谱并非完全重叠,在特征频率处仍有较大差别。由图4可知,与参考信号氮气相比,贝壳样品的时域光谱幅值衰减较大,而且存在时延,但是它们均集中在一个区域,且波形相似,这说明贝壳样品有着自己的特征时域光谱。观察图4(b)可知4种贝壳样品的时域光谱彼此交叉,直接人工分别变得不切实际而且误差较大,所以需要利用更复杂的机器学习算法来提取特征并进行分类。
图5中4种贝壳样品的频域光谱表现好一些,在0.3~0.4 THz间,新旧贝壳频谱存在幅值上的差别,可进行分类的判决依据,但是为了更准确,仍采用机器学习进行分类。
图6所示的太赫兹折射率光谱图中,在0.78 THz之后,新旧贝壳区分非常明显,新贝壳样品的折射率明显高于其他3种陈旧贝壳。利用这一方面可以做很好的区分。图7太赫兹吸收光谱图中新贝壳样品在0.732 THz处存在一个明显的较大的吸收峰,而其他3种陈旧贝壳在此及其附近吸收光谱却较为平滑,它们的吸收峰则多出现在后面的较高频率部分,据此可作为分类的重要依据。针对上述问题,本文采用的机器学习算法为PCA、Adaboost与SVM联用的方法。
2.4.1 PCA 分析
PCA降低了原始数据的特征维度[15],以太赫兹频域光谱为例,本次实验运用的PCA算法提取到了4个特征向量并按从大到小的顺序排列,4个特征向量对应的特征值分别为90%、6%、1.4%和0.3%,集成了原始数据97.7%的信息量,从理论上来说,已经满足大于80%,可用这4维代表原始256维的数据。在实验中发现,因为第一个特征值为90%,已经占据了原始数据大部分的信息,只用它自己去做分类,分类准确率已经能够达到81%,而将4个主成分全部用于训练的话,会对分类的准确度进一步提高。
2.4.2 PCA—SVM 分析
使用PCA分别处理了太赫兹时域光谱、频域光谱、折射率谱以及吸收谱的数据。分别得到主成分个数为4、4、5和4个。将4种主成分特征分别作为SVM的输入特征用作分类测试。在进行PCA—SVM联合算法之前,需确定参数和C的最佳值。从理论分析角度,C应从范围内寻找最佳值,应从范围内寻找最佳值。按照平常的暴力搜索法可以找到结果,但是由于本次实验数据量较大,使用此方法不便,故采用网络搜索优化算法,确定参数C的最佳值为2.1。利用1.2.2提到的均方根误差(RMSE)方法,根据经验缩短搜索范围,得到与均方根误差的统计折线图表,如图8所示。通过图8可以得到最优值为4.4。
图8 本次实验参数与RMSE统计关系图
为了实现最好的分类效果,本文将1.2.2提到的3种核函数均分别进行了分类实验,以太赫兹时域光谱为例得到识别效果如表2所示。从表2可知,PCA—SVM算法的分类效果会因核函数不同而受到影响[16-17],在本次实验中,效果最佳的是径向基核函数,其次是多项式核函数,最差的为线性核函数。与此同时还可知所有样本的分类预测准确率均在85%以上,说明PCA—SVM已经达到初步预测分类要求,但为了更加准确,还需进行后续改进实验。根据结论,在后续实验中,均采用径向基核函数进行分类预测工作。
表2 不同核函数识别效果
2.4.3 PCA—Adaboost—SVM 分析
在2.4.2已经给出核函数为径向基核函数的PCA—SVM算法利用太赫兹时域光谱数据进行分类识别的总识别准确率为90%,同样地,以径向基核函数的PCA—SVM算法处理太赫兹频域光谱、太赫兹折射率谱和太赫兹吸收谱的总识别准确率分别为90%、91%和92%。虽然识别结果已经非常不错,但只是每种光谱数据单独作用的结果,如果将4种光谱融合起来,相信仍有提升空间。故决定采用PCA—Adaboost—SVM算法,其核心思想是将上述通过4种光谱数据分别利用PCA—SVM算法分类器得到的4种总识别准确率,使用Adaboost加权系数计算原理,将4种光谱的主成分分别赋予权重,组合成新的主成分,也就是实现了多维特征的融合[18-22],最后将融合后的主成分特征送入SVM进行训练。其结果等效于将4个强分类器集成为更强的分类器。
在1.2.3已经讨论了Adaboost的具体流程,但在这里需稍加修改,这里的输入数据集为4种光谱的主成分即4、4、5和4个主成分。不使用错误率,而使用总识别准确率记为。然后给4种光谱提取到的主成分分别乘以对应的加权系数,得到新的组合主成分特征集,实现主成分的融合,虽然这样做使得特征维度升高,但毕竟汇集了4种光谱的特征信息,信息量得到大幅提升。表3列出了该模型的识别效果。
表3 PCA—Adaboost—SVM模型识别效果
2.4.4 模型性能比较
为了说明PCA—Adaboost—SVM模型在新旧贝壳方面分类预测性能更优,本文特测试了常用到的BP神经网络、PCR、PLS三类模型对新旧贝壳的分类预测效果,加上2.4.2的PCA—SVM模型,共5种结果列于表4所示。
表4 5种模型的分类预测性能
通过表4可知,PCA降维后再使用SVM分类使得准确率大大提高,达到了91%,而常用的BP、PCR、PLS识别准确率却在80%以下,有的甚至刚到50%。这样的准确率用于实际工程是不可取的。为了再次提高准确率,本文又使用了PCA—Adaboost—SVM模型,利用多维特征的融合,将4种光谱信息得到的主成分组合到一起使用SVM进行分类预测,而且将准确率提升至98%的高度。综上所述,对比可得结论为PCA—Adaboost—SVM模型在新旧贝壳方面的识别性能优于其他模型。
2.4.5 识别方法性能比较
为充分说明本文提出的预测分类方法的优越性,特做红外光谱法、X射线衍射法、液相色谱法等分类实验,并就1)样品破坏程度、2)总识别准确率、3)识别方法的稳定性三个关键指标的测试分析,给出综合评判结果,证明本文方法最优这一结论。
其中每种分类方法做三次实验,取均值作为前两个指标的测试结果,第三个指标取第二个指标的方差作为测试结果。所有测试数据均采用1.2.1提到的Z-score算法作归一化处理,并用百分比的形式表示。测试计算结果如表5所示。
由表5可知,X射线衍射法虽然对样品的破坏程度较低,稳定性较好,但是存在辐射,安全性差;红外光谱法与热相变动力学法[23]由于对样品的高温煅烧,已使得物质的化学组成发生改变,无法重复利用,故破坏程度是100%的,识别准确率也较低,由引言的理论分析可知,其稳定性不会很好,与实验结果吻合;液相色谱法与电感耦合等离子法以提取化学组成元素为目的,对样品也是完全破坏,但是准确率和稳定性较为可观;指纹图谱法应用较少,不过破坏程度低,识别准确率与稳定性均在可接受范围内;本文方法在三个关键指标中均位居前列,是相较最优的方法。
表5 测试计算结果
3 结束语
本文研究表明,太赫兹时域光谱技术结合机器学习算法,对识别新旧贝壳有着良好的效果。新旧贝壳样品其实是在水分子含量方面有着较大的区别,而太赫兹时域光谱技术正好可以将其以数据的形式直观地表现出来,得到时域光谱、频域光谱、折射率谱和吸收谱,然后采用PCA降维,Adaboost多维特征融合,SVM分类的方法,将识别准确率提升至98%的高度。同时与其他文献提到的红外光谱法、X射线衍射法、液相色谱法等方法相比,太赫兹时域光谱加机器学习分类法具有破坏性小、识别率高、稳定性好等优点。