建立支持向量机SVM识别模型对翡翠产地进行识别
李浩东1,2, 李举子1,*, 陈彦霖1, 黄钰静1, 沈锡田1,*
1.中国地质大学(武汉)珠宝学院, 湖北 武汉 430074
2.湖北省珠宝工程技术研究中心, 湖北 武汉 430074
*通讯作者 e-mail: jzlgems@126.com; shenxt@cug.edu.cn

作者简介: 李浩东, 1998年生,中国地质大学(武汉)珠宝学院硕士研究生 e-mail: 1478354298@qq.com

摘要

为了实现翡翠产地的快速无损鉴别, 丰富宝玉石产地鉴别方法的多样性, 基于红外光谱分析得到的数据, 建立支持向量机(SVM)识别模型对三个产地的翡翠进行分析。 实验收集了缅甸、 俄罗斯和危地马拉3种翡翠的红外光谱数据共106条, 为了达到更好的模型识别效果, 建模前将原始的红外光谱数据进行反射率到吸光度的转化, 再对光谱进行不同的预处理。 预处理的目的是降低噪声、 基线漂移和散射现象等对模型识别效果的影响。 本次实验预处理使用的方法有SG平滑、 均值中心化、 标准化、 趋势校正、 多元散射校正、 最大最小归一化、 标准正态变换以及标准正态变换后再进行趋势校正。 实验结果表明, 对红外光谱进行预处理后模型得到的识别准确率均高于原始光谱的73%; 三个产地翡翠的红外光谱分开进行多元散射校正和最大最小归一化得到的模型识别准确率高于混合进行预处理得到的结果; 一些预处理方法结合使用也会提高模型的识别准确率, 如标准正态变换和趋势校正。 对三个产地翡翠的红外光谱分开进行最大最小归一化处理后得到的识别准确率达到了最高的95%, 说明这种采用红外光谱技术建立的支持向量机(SVM)识别模型可以实现对翡翠产地的快速识别。

关键词: 翡翠; 产地; 红外光谱; 预处理; 支持向量机
中图分类号:TN219 文献标志码:A
Establishing Support Vector Machine SVM Recognition Model to Identify Jadeite Origin
LI Hao-dong1,2, LI Ju-zi1,*, CHEN Yan-lin1, HUANG Yu-jing1, Andy Hsitien Shen1,*
1. Gemmological Institute, China University of Geosciences(Wuhan), Wuhan 430074, China
2. Hubei Gems and Jewelry Engineering Technology Research Center, Wuhan 430074, China
*Corresponding authors
Abstract

To realize the rapid and non-destructive identification of jadeite origins and enrich the diversity of methods for the identification of precious jadeite origins, a support vector machine SVM recognition model was established to analyze jadeite of three origins based on the data obtained from infrared spectral analysis. The experiments collected a total of 106 infrared spectral data of three jadeite species from Myanmar, Russia and Guatemala in order to achieve better model identification, the original infrared spectral data were transformed from reflectance to absorbance before modeling, and then the spectra were pre-processed differently. The purpose of preprocessing is to reduce the effects of noise, baseline drift and scattering phenomena on the model recognition effect. The methods used for preprocessing in this experiment are SG smoothing, mean centering, normalization, trend correction, multivariate scattering correction, maximum-minimum normalization, standard normal transformation and standard normal transformation followed by trend correction. The experimental results show that the recognition accuracy of the models obtained by preprocessing the infrared spectra is higher than that of the original spectra by 73%; the recognition accuracy of the models obtained by multivariate scattering correction and maximum-minimum normalization of the infrared spectra of the three emerald origins separately is higher than that of the results obtained by mixing preprocessing; some preprocessing methods used in combination also improve the recognition accuracy of the models, such as standard normal transform and trend correction. The recognition accuracy obtained after maximum-minimum normalization of the infrared spectra of the three origins of jadeite separately reached the highest 95%, indicating that this support vector machine SVM recognition model built using infrared spectroscopy can achieve rapid recognition of jadeite origins.

Keyword: Jadeite; Origin; Infrared spectroscopy; Pre-processing; Support vector machine
引言

对于宝玉石而言, 产地来源与其整体品质息息相关, 明明拥有相同的成分, 但由于成矿条件上的差异致使产出的宝玉石存在明显品质上的差异, 进而导致其价格上相差甚远[1]。 目前, 人们很容易将一类宝石的价值与产地联系起来, 比如翡翠, 在一些消费者眼中缅甸产的翡翠质量要比其他产地的质量好, 值得用更高的价格去购买。 同时现在假冒产地销售欺骗消费者的现象也屡见不鲜, 这种行为不仅会损害消费者和企业的利益, 同时也增加了整个珠宝市场的管理难度。 因此建立一种快速无损识别宝玉石产地的方法是目前迫切需要解决的问题。

在目前的宝石产地信息研究中, 常用的溯源手段有观察宝石内部的内含物和检测元素含量, 以一些特征的微量元素建立坐标系实现对宝石的产地分类。 不过, 前者对鉴别者有较高的技术以及经验要求, 后者的检测费用比较昂贵, 比如激光剥蚀电感耦合等离子体质谱仪, 同时这种技术也会对样品造成破坏。 而红外光谱分析是一种快速无损的技术手段, 利用红外光谱测试得到的数据结合数学识别模型的方法已经在许多学科领域中有较成熟的发展, 展现出了较好的应用前景: 雷蕾等利用PCA降维技术对红外光谱和拉曼光谱进行降维, 再建立BP神经网络模型对翡翠进行了产地鉴别[2]; 周娇娇等利用PCA降维对做了不同预处理后的近红外光谱提取特征, 再结合支持向量机SVM建立了淡水鱼鱼种的鉴别模型[3]; 杨春艳等利用红外光谱结合逐步判别分析对玛咖的产地进行了鉴别[4]; 彭彦昆等利用近红外光谱技术结合PCA-SVM方法建立了番茄种子质量的鉴别模型[5]

上述研究为利用红外光谱数据结合支持向量机模型对宝玉石产地识别提供了理论基础, 在使用原始红外光谱进行分析前通常会对其进行预处理, 前人一般是将所有的光谱集中到一起进行预处理, 这样可能会导致某一类样品的特征不再明显, 从而影响模型的精准度, 因此本次预处理拟对三个产地翡翠的红外光谱分别进行预处理再与一起预处理得到的结果进行比较, 探究其中的差异。 虽然有学者已经使用过神经网络的建模方法对翡翠的产地进行了鉴别, 并得到了较好的判别结果, 不过为了丰富建模方法的多样性、 降低所需使用的样本量, 拟建立支持向量机SVM模型对翡翠产地进行识别。

本次研究采用红外光谱仪对缅甸、 俄罗斯和危地马拉三个产地的翡翠进行测试, 对得到的红外光谱数据进行不同预处理后进行PCA降维, 再构建SVM模型对翡翠产地进行识别。 探究SVM模型对翡翠产地能否有效进行识别, 以及通过对比使用不同预处理方法对模型的影响, 选择最优的识别模型。

1 实验部分
1.1 仪器及参数

实验所有的数据均是在中国地质大学(武汉)珠宝学院实验室完成, 红外光谱测试使用的是BRUKER VERTEX80 型傅里叶变换红外光谱仪, 使用的测试方法为反射法。 测试条件: 分辨率为8 cm-1, 样品和背景扫描次数为32 次, 扫描范围为4 000~400 cm-1, 室温为25 ℃。

1.2 样品以及数据采集

实验所用到的样品有缅甸翡翠40块, 俄罗斯翡翠45块, 危地马拉翡翠21块, 部分翡翠样品如图1所示。 对三个产地翡翠进行红外光谱测试, 分别得到40条、 45条和21条对应的红外光谱数据。 以上所有的红外光谱都显示翡翠的主要组成矿物硬玉的特征峰, 一共106条红外光谱, 因为样品在1 200 cm-1后几乎没有任何特征峰, 且比较杂乱, 所以选择400~1 200 cm-1进行研究, 主要的峰包括SiO4四面体反对称伸缩振动在1 200~900 cm-1处有1 168、 1 087、 960 cm-1三个吸收峰; SiO4四面体弯曲伸缩振动在900~600 cm-1处有852、 744、 663 cm-1三个吸收峰; 两个八面体配位体的振动吸收、 金属阳离子和O2-的振动在600~400 cm-1处有588、 532、 469和430 cm-1四个吸收峰[6]。 由于反射法测试得到的数据值和变化都很小, 不适宜建模, 因此将红外光谱数据从反射率转化为吸光度后进行建模, 得到转换后的红外光谱图如图2所示。

图1 部分样品图片Fig.1 Part of the sample pictures

图2 所有样品的原始红外光谱图Fig.2 Original IR spectra of all samples

1.3 光谱预处理方法

红外光谱采集速度快, 操作简单, 是目前常用的一种光谱分析手段, 但是得到的数据常常会受到噪声、 仪器背景或漂移等因素的干扰, 同时样品自身颗粒分布不均也会对结果产生影响, 最终造成建模效果不理想。 因此需要对得到的红外光谱数据进行预处理之后再进行建模, 所使用的预处理方法有: SG平滑消除光谱中的噪声; 使用标准化、 均值中心化、 最大最小归一化来减弱数据尺度差异过大带来的影响; 使用趋势校正来消除光谱的基线漂移; 标准正态变换是消除由固体颗粒大小、 表面散射以及光程变化对漫反射的影响, 多元散射校正主要用于消除颗粒分布不均匀及颗粒大小产生的散射现象[7]。 本次实验将会逐一采取以上方法对原始数据进行预处理, 同时也会将一些预处理方法结合使用, 以期通过比较得到最优的识别效果。

1.4 模型的选择与建立

传统的机器学习理论神经网络虽然已经在故障诊断和容错控制等方面得到了充分的发展与完善, 但是神经网络的辨识建模方法还存在一系列的缺点[8]:

(1)没有完全解释清楚其学习算法的收敛性, 即很难揭示模型是如何工作的。

(2)需要的样本数据量大, 其使用的渐进理论是需要训练样本数目趋于无穷大时才能得到理论上的最优结果, 对于小数据集容易发生过拟合。

(3)训练时间长, 需要大量的计算。

(4)网络结构复杂, 不易优化。

(5)神经网络常用梯度修正算法的优化方法找到的局部极值不能确保就是全局最优解, 且难以选择优化参数。

实验所选用的模型是支持向量机(SVM), 是1995年Vapnik提出的一种新的机器学习方法, 是建立在一套坚实的理论基础之上, 在学习过程中通过得出最大化的分类间隔使得结构风险最小化, 可以确保得到的极值解就是最优解, 且支持向量机非常适合用来解决小样本问题[8]。 支持向量机SVM的数学模型如图3所示。

图3 SVM的数学模型Fig.3 Mathematical model of the SVM

这里以一个二维的二分类问题解释支持向量机的基本理论。 假设以x1为界限, 其右下角的点为一类数据, 以x2为界限, 其左上角的点为一类数据, 现在需要将两类数据分开。 首先, 如果是一个普通的线性分类器来划分的话如[图3(b)], 就会存在许多条线可以将二者区分, 并没有特殊的约束, 这种分类的问题在于如果存在一个不知类别的数据点, 很难将其进行正确的划分。 在使用支持向量机进行分类的时候如图[3(a)], 分别将x1x2作为支持向量, 在两个支持向量中间选择出一条直线使得两个支持向量到直线的距离相等, 那么这条直线就可以用来对两类数据点进行分割, 称为最优超平面, 在这个二维空间中超平面即为一维的线。

设最终划分数据点的最优直线为wx+b=0, 经过支持向量x1的直线为wx+b=-1, 经过支持向量x2的直线为wx+b=1, 经过数学运算最终求出wb。 同时为了达到高区分度的目的, 需要使两个支持向量到这条最优直线的距离的和最大, 即: D=max(d1+d2)。 对于一些特殊情况, 比如某一类数据点中存在异常点, 这个异常点非常靠近另一类数据点甚至进入其中, 按照上面的理论D的值就会非常小或者无法进行划分, 因此没有必要因为一些异常点来牺牲间隔距离。 由此引入了松弛变量以及惩罚系数C, C是对松弛变量的惩罚, C的值越大, 松弛变量越小, 表示这个异常点的偏离越小。

当数据在低维度时线性不可分, 这时需要通过升维转化将其映射到高维空间再进行分割, 其中用到的就是核函数。 常见的核函数有多项式核函数(polynomial kernel)、 高斯核函数(RBF kernel)、 线性核函数(linear kernel)。 为了得到一个具有良好性能的支持向量机(SVM), 在模型中设计了一个最优参数寻找, 会自动选择最合适的相关参数, 其中可供选择的核函数有多项式核函数、 高斯核函数和线性核函数, 多项式核函数的惩罚系数C有0.1、 1、 2、 10、 15, 高斯核函数的惩罚系数C有0.1、 1、 2、 10, 线性核函数的惩罚系数C的选择范围为0.1、 0.5、 1、 1.5、 2、 3、 5、 10、 15、 50和100, 划分训练集为80%, 测试集为20%, 并采用10折交叉验证。 最后为了将得到的结果可视化, 增加了一个混淆矩阵方便观察。

在将红外数据导入SVM模型之前, 由于红外光谱数据维度高, 若直接作为输入变量会使模型变得复杂, 降低模型的预测效果, 增加工作量。 因此在这之前先使用主成分分析(PCA)对原始的红外数据进行降维处理, 即尽可能保留较少的主成分, 但又可以保留较多的原始信息。 模型的建立以及对红外光谱的预处理均在Python软件上实现, 模型的内容及流程如图4所示。

图4 模型流程Fig.4 Model flow

2 结果与讨论
2.1 预处理结果

图5是对三个产地的原始光谱集中进行预处理后得到的光谱图。

图5 原始光谱集中预处理后的光谱图
(a): SG平滑; (b): 均值中心化; (c): 标准化; (d): 趋势校正; (e): 多元散射校正; (f): 最大最小归一化; (g): 标准正态变换; (h): 标准正态变换后趋势校正
Fig.5 Spectra after pre-processing in the original spectrum set
(a): SG smoothing; (b): Mean centralization; (c): Standardization; (d): Trend correction; (e): Multivariate scattering correction; (f): Maximum-minimum normalization; (g): Standard normal transformation; (h): Trend correction after standard normal transformation

[图5(a)]是经过SG平滑后得到的光谱图, 平滑窗口宽度选择的是21, 可以发现处理前后的光谱图差别并不是很大, 说明进行红外光谱数据收集的时候噪声很小。 [图5(b)]是经过均值中心化处理后的光谱图。 [图5(c、 f)]分别是经过标准化和最大最小归一化后得到的光谱图, 这种预处理方法采用的是数据增强算法, 将原始数据中无用的数据删除, 消除数据量纲的影响, 使数据之间具有可比性, 可以提高模型的预测性能。 经过处理后的光谱都集中在某一个特定的区间。 [图5(d)]是经过趋势校正后得到的光谱图, 主要是解释基线移动和曲线变换, 校正基线漂移, 在经过标准正态变换后使用效果更好, 即[图5(h)]。 [图5(e, g)]分别是经过多元散射校正和标准正态变换后得到的光谱图, 光谱的重合度增加, 即消除了散射水平不同造成的差别, 提高了光谱与数据之间的相关性。

2.2 SVM模型的识别效果及评价

以未经预处理的原始光谱在模型中得到的结果为例。 首先模型会输出一张预处理后的图, 即图5中的一种。 接着模型经过PCA降维后, 输出一张PCA可视化散点图, 如图6, 图中三种颜色的点分别代表三个不同的产地, 每一个点代表一个样本, 可以看出三个产地的主成分信息混合在一起, 无法进行区分。 接着输出的是SVM模型的识别结果, 如图7所示(其中0.0代表缅甸, 1.0代表俄罗斯, 3.0代表危地马拉), 根据最优参数寻找, 当选用线性核函数, 惩罚系数C=50时, 得到的整体准确率最高为73%, 缅甸、 俄罗斯和危地马拉测试集样本共22条, 各自的召回率recall分别为60%、 86%和80%, 可见部分产地的识别率较低; 线性核函数中的gamma值为1×10-7是为了防止过拟合。 为了将模型的识别效果更加直观、 以图像形式展现, 设计了一个混淆矩阵, 如图8所示, 纵坐标表示的是真实的产地信息, 横坐标表示的是预测的产地信息。 可以明显地看出10个缅甸翡翠有6个预测正确, 有一个错误地判断成俄罗斯翡翠, 3个判断成危地马拉翡翠; 7个俄罗斯翡翠6个判断正确, 有1个判错为缅甸翡翠; 5个危地马拉翡翠4个判断正确, 1个判错为俄罗斯翡翠。

图6 PCA可视化散点图Fig.6 PCA visualization scatter plot

图7 模型中的显示结果Fig.7 Display results in the model

图8 模型识别结果可视化Fig.8 Visualization of model recognition results

由于原始光谱数据得到的结果并不理想, 因此需要对原始光谱进行处理。 首先按照普遍使用的方式将三个产地翡翠的原始光谱混合在一起进行不同预处理, 再进行SVM模型识别; 另外再将三个产地翡翠的原始光谱分开, 各自进行相同的预处理后再集中进行SVM模型识别。 由此得到的SVM模型识别结果如表1所示。

表1 不同预处理方式模型识别的结果 Table 1 The results of model recognition in different pretreatment modes

所有预处理后模型所选用的核函数都是线性核函数。 从表1中可以看出, 经过预处理后得到的SVM模型识别效果均好于原始数据, 最低的识别准确率为77%, 分别为光谱混合预处理中的SG平滑、 均值中心化、 趋势矫正、 最大最小归一化、 标准正态变换, 和光谱分开预处理中的SG平滑、 均值中心化、 趋势矫正、 标准正态变换; 识别准确率为82%的有光谱混合预处理中的标准化、 多元散射校正、 标准正态变换后趋势校正, 和光谱分开预处理中的标准化和标准正态变换后趋势校正; 光谱分开多元散射校正的识别准确率为86%; 最大最小归一化的识别准确率最高达到了95%, 其结果可视化如图9所示, 只有1个危地马拉翡翠被判错为俄罗斯翡翠。

图9 光谱分开最大最小归一化的可视化结果Fig.9 Visualization of the maximum and minimum normalization of the spectrum apart

对比光谱混合和分开进行预处理得到的结果可以发现, 对于某些预处理方法, 分开进行预处理会提高模型的识别准确率。 一些预处理方法之间结合后得到的识别效果也好于单独进行预处理得到的结果, 如标准正态变换和趋势校正的结合使用。

3 结论

实验在对三个产地翡翠的红外光谱进行不同预处理的基础上, 进行PCA降维并建立了支持向量机(SVM)识别模型, 对翡翠的产地进行识别, 得到以下结论:

(1)使用原始数据进行模型识别得到的准确率为73%, 对原始数据进行预处理后进行模型识别得到的准确率均高于73%, 说明对红外光谱进行预处理有助于提高模型识别效果。

(2)将三个产地翡翠的红外光谱数据混合与分开进行预处理, 再进行模型识别, 发现分开进行某些预处理方法得到的识别准确率高于混合进行预处理得到的结果, 如多元散射校正和最大最小归一化。 标准正态变换和趋势校正的结合使用得到的准确率高于单独使用一种预处理的识别效果。

(3)将三个产地翡翠的红外光谱分开进行最大最小归一化后得到的模型识别准确率达到了95%, 具有很好的识别效果, 证实了利用红外光谱技术结合支持向量机SVM识别模型对翡翠产地识别的可行性, 且这种识别模型对于小样本也同样适用。

参考文献
[1] SHI Guang-hai, LEI Wei-yan(施光海, 雷玮琰). Forbidden City(紫禁城), 2018, (5): 42. [本文引用:1]
[2] LEI Lei, TENG Ya-jun, LIU Han-qing, et al(雷蕾, 滕亚君, 刘汗青, ). Laser & Optoelectronics Progress(激光与光电子学进展), 2021, 58(12): 1230002. [本文引用:1]
[3] ZHOU Jiao-jiao, XU Wen-jie, XU Jing, et al(周娇娇, 徐文杰, 许竞, ). Journal of Huazhong Agricultural University(华中农业大学学报), 2019, 38(5): 98. [本文引用:1]
[4] YANG Chun-yan, LIU Fei, WANG Yuan-zhong(杨春艳, 刘飞, 王元忠). Jiangsu Agricultural Sciences(江苏农业科学), 2017, 45(5): 170. [本文引用:1]
[5] PENG Yan-kun, ZHAO Fang, LI Long, et al(彭彦昆, 赵芳, 李龙, ). Transaction of the Chinese Society of Agricultural Engineering(农业工程学报), 2018, 34(5): 159. [本文引用:1]
[6] WENG Shi-fu, XU Yi-zhuang(翁诗甫, 徐怡庄). Fourier Transform Infrared Spectrum Analysis(傅里叶变换红外光谱分析). Beijing: Chemical Industry Press(北京: 化学工业出版社), 2016. 4. [本文引用:1]
[7] DIWU Peng-yao, BIAN Xi-hui, WANG Zi-fang, et al (第五鹏瑶, 卞希慧, 王姿方, 等). Spectroscopy and Spectral Analysis(光谱学与光谱分析), 2019, 39(9): 2800. [本文引用:1]
[8] HU Liang-mou, CAO Ke-qiang, XU Hao-jun, et al(胡良谋, 曹克强, 徐浩军, 等). Support Vector Machine Fault Diagnosis and Ccontrol Technology(支持向量机故障诊断及控制技术). Beijing: National Defense Industry Press(北京: 国防工业出版社), 2011. 11. [本文引用:2]