激光与光电子学进展, 2020, 57 (9): 093301, 网络出版: 2020-05-06   

基于Siamese网络的矿物拉曼光谱识别 下载: 893次

Mineral Raman Spectral Recognition Based on Siamese Network
作者单位
上海应用技术大学计算机科学与信息工程学院, 上海 201418
摘要
矿物分析在地质勘测及工程应用中都是一项极为关键的工作,在矿物分析中,相比于传统的物理方法和化学方法,拉曼光谱检测能提供更快速的定性定量分析,最重要的是,它对矿物的损伤可以忽略不计。而基于拉曼光谱的数据分析,传统的机器学习方法效果并不理想,尤其在矿物种类极其庞大的情况下。为此,提出一种基于Siamese网络的相似性学习方法,采用Hungarian算法来优化负样本,与传统的机器学习算法相比,得到了鲁棒性最好的结果。Siamese网络计算出矿物之间的相似度,除了能对矿物进行识别,还可以在一定程度上为该矿物的替代材料提供参考。
Abstract
Mineral identification is a critical task in geological surveys and in many engineering applications. Compared to the physical methods and chemical methods, Raman spectroscopy provides a faster qualitative and quantitative analysis, and most importantly, its damage to the original mineral is negligible in mineral analysis. But the data analysis based on Raman spectroscopy, results of traditional machine learning methods do not work well, especially in the case of minerals with a large categories. This paper proposes a similarity learning method based on Siamese network. After optimizing the negative samples by Hungarian algorithm, and compared with traditional models, we achieve the best robust results. What Siamese network computes is the similarity between minerals, in addition to the identification of minerals, it can also provide a reference for the alternative materials of the mineral to some extent.

1 引言

矿物的鉴定工作是开展一系列地质工作的前提条件,它能辅助地质工作人员作出进一步的决策。目前的鉴定方法主要有:显微镜法、热分析法、X射线物相分析[1]和谱分析法[2]

其中显微镜难以鉴定微鳞片状矿物;热分析法会改变矿物体积质量等物理特性;X射线物相分析则不能鉴别非晶质矿物。

拉曼光谱基于光与矿物内化学键的相互作用,可以在微米级别下进行定量分析。相比于其他方法,基于拉曼光谱的分析方法具有速度快、抗干扰、准确率高的优点。除此之外,拉曼光谱还可以测定矿物在不同形态、状态下的结构,进而追溯矿物的演化进程[3]。刘社文等[4]将拉曼光谱应用到了玉石鉴定领域;马朝龙等[5-6]结合拉曼光谱、X射线荧光光谱分析(XRF)与扫描电子显微镜(SEM)技术成功分析出龙门石窟壁画彩绘装饰颜料的矿物成分;陈铄等[7]分析秦岭造山带硅质岩的拉曼光谱等数据,得到了硅质岩的组构信息,追溯出硅质岩在造山作用中演变轨迹。

在光谱分析中,人工识峰进行光谱分类通常要求其具有较高的专业背景,而且这个过程相对比较漫长,所耗费成本是极其高昂的。利用机器学习算法识别拉曼光谱也是光谱分析中常用的手段。何欣龙等[8]使用K近邻算法实现了塑钢窗拉曼光谱的识别。李东明等[9]使用反向传播(BP)人工神经网络对血糖的拉曼光谱进行分类。史如晋等[10]基于集成学习Stacking算法成功区分开了光谱特征极其相似的大肠杆菌O157∶H7以及布鲁氏菌S2株。

针对种类数目超过一千的矿物数据集,本文提出了一种基于Siamese网络[11-12]的相似性学习方法,使用基于非对称最小二乘的Savitzky-Golay滤波器来进行平滑操作,将光谱中存在的噪音和荧光背底[13]等干扰滤除。与传统的机器学习算法相比,经Hungarian算法[14]优化负样本后的Siamese网络得到了鲁棒性最好的分类结果。

2 数据收集与预处理

2.1 实验样本

本文收集RRUFF、帕尔马大学等开放数据库的1375种矿物的高质量拉曼光谱数据,共3788个样本。激光相对于基准点的偏振方向均在780 nm左右。Actinolite、Albite和Andradite等矿物的数十个光谱如图1所示。收集的光谱数据类别数目大,但样本数相对较小,绝大多数类别下只有两到三个样本,这对大多数模型训练起来是十分困难的。将其中只有单个样本的类别划为干扰类后,类别数目下降为784种。采用分层采样的方法划分数据集,其中训练集有1705个样本,测试集有2083个样本。

图 1. 部分矿物的拉曼光谱

Fig. 1. Raman spectroscopy of some minerals

下载图片 查看所有图片

2.2 光谱预处理

首先是平滑处理。所收集光谱数据已经经过了部分去噪声处理,但仍然存在些许噪音和荧光背底干扰,使用Savitzky-Golay滤波器进行平滑处理,滤除光谱数据的背景干扰, Albite的处理过程如图2所示。

图 2. 拉曼光谱预处理

Fig. 2. Preprocessing of Raman spectroscopy

下载图片 查看所有图片

其次对光谱数据进行归一化处理。归一化处理有两个好处:1)提升模型的收敛速度;2)提升模型的精度,在涉及到距离计算的算法中效果更为明显。

本文所选择的归一化方法为最小值最大值归一化(Min-Max Normalization),公式为

x*=x-xminxmax-xmin,(1)

式中:xmax为特征值的最大值;xmin为特征值的最小值;x*为归一化后的特征值。

2.3 光谱特征降维

本文拉曼光谱的拉曼偏移范围均在0~2500 cm-1之间。由于光谱采集源的不同,样本的拉曼偏移区间也有所不同,采用最邻近插值法贴齐所有特征。对收集的光谱数据,其特征为拉曼偏移的离散采样,由于采样频率较高,各特征点(拉曼偏移)之间的耦合程度也较高,存在特征冗余的现象,故采取主成分分析(PCA)算法进行特征降维。当保留的主成分特征个数超过9时,计算得出每多保留一个特征所获得的增益不超过5%,故选择保留9个主成分特征来替代原先的3000多个特征,对平滑处理后的光谱数据进行计算得到帕累托图,如图3所示,9个主成分特征已经包括了3788个数据98%左右的信息量。

图 3. 主成分的帕累托图

Fig. 3. Pareto chart of the components

下载图片 查看所有图片

3 实验与讨论

3.1 构造训练数据

Siamese网络是一种二元网络,其输入为一对矿物光谱,Siamese网络为这对光谱打分并输出这对矿物间的相似度。

本文以如下的方法来构造训练数据集:

1) 匹配样本。对属于同一种矿物光谱对(A,B),标签值为1,代表AB完全相似。

2) 不匹配样本。对属于不同种类的矿物光谱对(A,C),标签值为0,代表AC完全不相似。

训练的光谱数据具有以下特性:1)包括1/3的匹配矿物样本和2/3不匹配矿物样本;2)训练集中每个矿物的光谱数据刚好被使用4次;3)根据对抗训练的思想,需要对相似度非常高但却不匹配的光谱对给予额外的关注,对这些网络难以区分的不匹配光谱对,会在特定阶段进行针对性的处理。

实施这样的策略来训练Siamese网络能大幅提升模型的准确率;其他方法在某种程度上也能贡献准确率,但相对来说所占比例不大。

3.1.1 匹配样本

半数的训练样本由匹配的矿物光谱组成,剔除掉干扰类,针对每一种矿物,将其类别下的样本次序完全打乱,令原始次序的为光谱A,扰乱次序后的光谱B,构造匹配光谱对(A,B),其中每个样本会被用到两次。

3.1.2 不匹配样本

不匹配样本将从整个训练集中挑选出来,满足以下两个条件:1)光谱对来自不同种类矿物;2)光谱对是网络难以区分的。

3.2 构造模型

Siamese网络对两个光谱进行比较来判断它们是否来自同一种矿物。因此,通过对训练集中所有的光谱与测试集中的每个光谱进行比较,然后将光谱输出的相似度进行排序来识别最可能的矿物。

Siamese网络主要由两部分组成,如图4所示。1)躯干网络:用于提取光谱特征,对一个光谱对中的两个光谱均使用同一个躯干网络。2)头网络:用于比较躯干网络中输出的特征向量,进而判断光谱对中的光谱是否匹配。

图 4. Siamese网络

Fig. 4. Siamese network

下载图片 查看所有图片

3.2.1 躯干网络

躯干网络使用常规的神经网络模型——多层感知机(MLP),其中网络层数设置为4,神经元个数分别为12、8、4、2,激活函数均为整流线性单元(ReLU)。为了防止过拟合,加入了L2正则化,正则化系数为10-6。采用网络输出二维特征来表示该矿物的光谱特性。添加L2正则化后的损失函数为

L*(ω)=L(ω)+λω22,(2)

式中:L(ω)为未添加L2正则化的损失函数;λ为正则系数。

由于训练数据集不大,本文试图保持学习参数的数量相对较小,同时保持模型具有足够的学习能力。

3.2.2 头网络

头网络使用单层的神经网络,激活函数为sigmoid,恰能将相似度控制在[0,1]区间。在头网络进行决策前,需要将躯干网络输出的特征向量转换为距离特征。

头网络比较两个特征向量的异同,这里涉及到了距离度量。通常的Siamese网络会选择反差损失函数作为度量方法,由于以下两个原因:1)距离度量应将距离为0的两个特征视为完美匹配,特征值略有不同的两个特征将被视为匹配良好。但其中特征值大多数为正值,尤其在激活函数为ReLU的情况下,距离度量会有一定的局限性。2)存在一个潜在的假设,当交换两个光谱时,必须产生相同的结果,即如果(A,B)是相同的矿物,则(B,A)同样也得是相同的矿物。

故本文所采取的度量方法为:1)对每对特征xy,分别计算其和、乘积、绝对差和平方差 x+yxy、|x-y|、(x-y)2。2)头网络依靠这4个特征产出相似度,通过学习,网络可以在匹配的零和非零值之间进行权衡。对每个特征使用具有相同权重的神经网络层。3)输出是转换后的特征的加权和,再通过sigmoid激活函数进行非线性变换。权重值其实是多余的,它只是特征的缩放因子,可由另一层学习。而且,权重应该允许为负值,否则ReLU激活时无法产生负权重。

3.3 训练模型

Siamese网络的训练是端到端的,相比单独训练躯干网络与头网络,能够获得更好的分类效果。在训练时,将网络输出的相似度打分取反,这意味着实际上网络的输出是矿物间的不相似度,两种矿物相似度越高等价于其不相似度越低,这样设置有利于网络的优化,更便于对十分相似却不相同的负样本的搜索,这时优化问题转换为线性分配问题。

随机初始化相似矩阵,将对角线上的相同矿物对以及同一类矿物的正样本的不相似度设置为无穷大,目的是为了在对负样本进行搜索时避免这些正样本被Hungarian算法所选中。

每生成一次相似矩阵,需用Hungarian算法来搜索最难区分的光谱对,算法原理如下。

Hungarian Algorithm The Hungarian method for the LAP
Input: Similarity Score Matrix M
Output: Similarity Score Matrix M been covered
Mi,jMi,j-minjMi,jfori=0,,n-1Mi,jMi,j-miniMi,jforj=0,,n-1Starthefirstuncoveredzeroinrowi,coverthecorrespondingcolumnjfori=0,,n-1
While All columns not covered
while Uncovered zeros
Prime the current uncovered zero
if There’s a starred zero in this row
Uncover the starred zero’s column and cover the row
else
Find an alternating augmented path from the primed zero
Unstar the starred zeros on the path and star the primed zeros on the path
Remove all the prime markings and cover all stared zeros
break
end if
end while
if Found path
continue
end if
M*=minMi,joveralluncoveredi,jMi,j=Mi,j-M*foralluncoveredcolumnsjMi,j=Mi,j+M*forallcoveredrowsi
end while
return Starred zeros // These are all the assignments

在每一轮训练后,将相似度矩阵中所选出的难匹配光谱对的不相似度设置为无穷大,将优化的注意力集中到这些光谱对上。图5选择出几组不相匹配的矿物对,其中相似矩阵的空白值为无穷大, Hungarain算法会选择出不相似度最小的组合,组合中的光谱对即为Siamese网络中的目标负样本,将其不相似度置为无穷大的意义在于扩大了负样本在特征空间中与正样本间的距离。

图 5. 相似矩阵。(a) Hungarian算法选择前;(b) Hungarian算法选择后

Fig. 5. Similarity matrix. (a) Before Hungarian algorithm selection; (b) after Hungarian algorithm selection

下载图片 查看所有图片

采用梯度下降法来更新权重等参数的梯度,表示为

w*=w-Lw,(3)b*=b-Lb,(4)

式中:w*b*为更新后的权重和偏置; LwLb为损失函数对权重和偏置的偏导数。学习率会在训练的不同阶段进行调整。对模型的随机权重进行训练其实是一件很困难的事情,如果最初提供给该模型的光谱对太难分辨,则模型很有可能就不会收敛。为了防止这种情况,早期训练会将相似矩阵的输出乘上一个放缩系数,使得负样本基本上是随机的不同光谱对。

3.4 结果与讨论

与传统的分类算法比较,结果如表1所示。

表 1. 光谱分类结果

Table 1. Results of spectroscopy classification

ModelAccuracy /%MAP5 /%
SVM59.75-
KNN57.5679.36
Logistic regresion49.34-
Random forest55.62-
Decision tree51.37-
Siamese62.2787.10

查看所有表

在准确率上,Siamese网络要略优于传统的机器学习算法;在前5个输出的加权平均正确率均值(MAP5)标准下,Siamese网络的优势比较明显,一些模型甚至很难同时做出多种预测。Siamese网络可以根据预测相似度的大小排序,预测出最为可能的5种结果。由于将单一样本的类别归为干扰类,数据集有近1/6的样本为干扰类,对传统的机器学习算法而言,出现了类别不均衡的问题,存在一定的过拟合现象;而Siamese网络通过样本配对将多分类转化为二分类,类别样本数之比为1∶2,再加上正则项系数,能有效控制过拟合。对岩矿进行鉴定时,通常通过其特性进行判断。而追究岩矿的某一特性时,Siamese网络输出岩矿样例与光谱库中岩矿间相似度更具现实意义。KNN算法虽然也能基于距离计算相关性,但其效率不高,每次都要遍历整个光谱库。

PMAP5=1Nn=1Nk=1min(K,5)P(k),(5)

式中:N为测试光谱的数目;K为第n个测试光谱模型的有效输出值数目;P(k)为第k个输出值。

表2所示为同一模型在多种预处理方法下的结果。

表 2. 不同处理方式的结果对比

Table 2. Results comparison for different processing methods

SmoothingNormalizationHungarianMAP5 /%
80.22
82.69
81.46
85.21
84.30
87.10

查看所有表

表2中数据计算不同预处理操作下与对照组的差值,平滑处理与归一化处理分别增加了2.47%和1.24%,而先进行平滑处理再进行归一化处理增加的4.08%比起单独的平滑与归一化处理还有0.37的提升。这是因为未进行平滑而保留的噪声在网络层间传输间被放大,所以平滑处理需要在归一化之前进行。选择Min-Max归一化的原因在于,样本均值与方差受最邻近插值的影响,而最大值和最小值在插值前后均未发生改变。Hungarian算法在每轮训练后给负样本施以惩罚,起到了正则化的作用,将错误率降低的同时不影响对正样本的预测。

4 结论

拉曼光谱发展至今,已经是一项较为成熟的技术。在矿物分类、鉴定方面,基于拉曼光谱的分析方法效果极为显著。本文根据拉曼光谱的性质,对其进行一系列处理(如平滑、归一化等),对提升模型预测的准确度有很大的贡献。通过对比实验可知,在类别数目大、样本数目相对较小的矿物拉曼光谱数据集下,Siamese网络的分类效果最佳。其中,Hungarian算法优化负样本对Siamese网络的训练极为重要。

由于神经网络的可解释性差,Siamese网络数据输出的相似度有一定的局限性,网络优化基于训练数据将不匹配样本的距离隔远,降低相似度,但对阈值以下的相似度只具备参考性。

为了进一步提升模型准确度可以增加更多的样本数据并设计提取特征能力更强的网络设计,以构建更加完备的矿物光谱库。

参考文献

[1] 张凤英, 张文捷, 刘春丽. X射线粉晶衍射( XRD)法在粘土矿物岩矿鉴定中的应用[J]. 低碳世界, 2018( 9): 279- 281.

    Zhang FY, Zhang WJ, Liu CL. Application of X-ray powder diffraction (XRD) in the identification of clay minerals and rocks[J]. Low Carbon World, 2018( 9): 279- 281.

[2] 陆婉珍. 现代近红外光谱分析技术[M]. 北京: 中国石化出版社, 2010: 174.

    Lu WZ. Near infrared spectrometry[M]. Beijing: China Petrochemical Press, 2010: 174.

[3] 何佳乐, 潘忠习, 冉敬. 激光拉曼光谱在岩矿鉴定中的应用[J]. 四川地质学报, 2016, 36(2): 346-349.

    He J L, Pan Z X, Ran J. The application of laser Raman spectroscopy to rock and mineral identification[J]. Acta Geologica Sichuan, 2016, 36(2): 346-349.

[4] 刘社文, 郭茂田, 梁二军, 等. 激光拉曼光谱在玉石鉴定中的应用[J]. 光散射学报, 1999, 11(3): 194-197.

    Liu S W, Guo M T, Liang E J, et al. The application of Raman spectroscopy to the identification of jades[J]. Chinese Journal of Light Scattering, 1999, 11(3): 194-197.

[5] 马朝龙, 刘照军, 程琳. 龙门石窟彩绘颜料的拉曼光谱、X射线荧光和扫描电镜分析[J]. 光散射学报, 2018, 30(4): 357-361.

    Ma C L, Liu Z J, Cheng L. Raman spectra, XRF and SEM analysis of the pigments from the color paintings of Longmen grottos[J]. The Journal of Light Scattering, 2018, 30(4): 357-361.

[6] 孙鹏飞. 基于拉曼光谱的混合矿物颜料检测分析[D]. 长春: 长春理工大学, 2017.

    Sun PF. Detection and analysis of mixed mineral pigments based on Raman spectroscopy[D]. Changchun: Changchun University of Science and Technology, 2017.

[7] 陈铄, 苏志华, 周永章, 等. 谱学分析在造山带硅质岩中的应用及其地质意义[J]. 光谱学与光谱分析, 2019, 39(4): 1128-1135.

    Chen S, Su Z H, Zhou Y Z, et al. Application of analytical techniques of spectroscopy on cherts in orogenic belt and its geological significances[J]. Spectroscopy and Spectral Analysis, 2019, 39(4): 1128-1135.

[8] 何欣龙, 陈利波, 王继芬, 等. 基于K近邻算法的塑钢窗拉曼光谱分析[J]. 激光与光电子学进展, 2018, 55(5): 053001.

    He X L, Chen L B, Wang J F, et al. Raman spectroscopy analysis of plastic steel window based on K nearest neighbors algorithm[J]. Laser & Optoelectronics Progress, 2018, 55(5): 053001.

[9] 李东明, 贾书海. 基于多光谱应用BP人工神经网络预测血糖[J]. 激光与光电子学进展, 2017, 54(3): 031703.

    Li D M, Jia S H. Application of BP artificial neural network in blood glucose prediction based on multi-spectrum[J]. Laser & Optoelectronics Progress, 2017, 54(3): 031703.

[10] 史如晋, 夏钒曾, 曾万聃, 等. 基于PCA-Stacking模型的食源性致病菌拉曼光谱识别[J]. 激光与光电子学进展, 2019, 56(4): 043003.

    Shi R J, Xia F Z, Zeng W D, et al. Raman spectroscopic classification of foodborne pathogenic bacteria based on PCA-stacking model[J]. Laser & Optoelectronics Progress, 2019, 56(4): 043003.

[11] BromleyJ, GuyonI, LecunY, et al. Signature verification using a siamese time delay neural network[C]∥Advances in Neural Information Processing Systems 6, 7th NIPS Conference, Denver, Colorado, USA, 1993. Morgan Kaufmann Publishers Inc.1993.

[12] ChopraS, HadsellR, LeCun Y. Learning a similarity metric discriminatively, with application to face verification[C]∥2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), San Diego, CA, USA. IEEE, 2005. 202.

[13] 朱磊磊, 冯爱明, 金尚忠, 等. 拉曼光谱检测中荧光抑制方法及其应用分析[J]. 激光与光电子学进展, 2018, 55(9): 090005.

    Zhu L L, Feng A M, Jin S Z, et al. Fluorescence suppression methods in Raman spectroscopy detection and their application analysis[J]. Laser & Optoelectronics Progress, 2018, 55(9): 090005.

[14] Kuhn H W. The Hungarian method for the assignment problem[J]. Naval Research Logistics Quarterly, 1955, 2(1/2): 83-97.

吴承炜, 史如晋, 曾万聃. 基于Siamese网络的矿物拉曼光谱识别[J]. 激光与光电子学进展, 2020, 57(9): 093301. Chengwei Wu, Rujin Shi, Wandan Zeng. Mineral Raman Spectral Recognition Based on Siamese Network[J]. Laser & Optoelectronics Progress, 2020, 57(9): 093301.

本文已被 2 篇论文引用
被引统计数据来源于中国光学期刊网
引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!