基于卷积神经网络和便携式拉曼光谱仪的彩色矿物颜料成分分析
2022-05-24祁文博牟涛涛陈少华
祁文博 牟涛涛 陈少华
北京信息科技大学仪器科学与光电工程学院,北京 100192
0 前言
矿物颜料是古代制作艺术品常用的颜料,分析矿物颜料成分有助于文物的鉴定和修复,因此开发一种矿物颜料检测方法是必要的。
当前主流的检测技术有红外光谱[1]、拉曼光谱[2]和X-射线[3]等。这些技术被广泛应用于医学、农业和食品安全等领域。SI L等人[4]使用近红外光谱技术结合化学计量方法研究药品掺假情况,对Yaobitong胶囊做定量和定性分析,验证了红外光谱技术在药品检测中的可行性。UNAL M等人[5]提出利用拉曼光谱评估软骨水化状态的方法,取得了较好的效果。在这些技术中,拉曼光谱具有高灵敏度、抗干扰能力强等优点,适合应用于矿物颜料的检测。
1928年,印度科学家C.V.RAMAN发现了拉曼效应的存在。拉曼光谱是基于拉曼效应的检测技术,它是一种散射光谱,可以得到分子振动、转动方面的信息,从而分析物质成分。很多学者已经把拉曼光谱技术应用于颜料的检测分析中[6-7]。LEI Z等人[8]使用扫描电镜-能谱仪、拉曼光谱和偏振光显微镜对大高玄殿的彩绘颜料进行研究,实验中使用了不易移动的仪器,因此不能进行现场检测。COSANO D等人[9]使用显微拉曼光谱检测Annunciation sculptural group上的颜料,实验中进行了大量的光谱分析,这需要专业的光谱学知识。上述实验的局限性限制了拉曼光谱的应用。
深度学习算法可以自动提取拉曼光谱的特征并进行分类,不需要人工的光谱分析。卷积神经网络(Convolutional Neural Network,CNN)作为深度学习的一个分支,被广泛应用于医学[10]、自然语言处理[11]和图像识别[12]等领域,CNN通常包含卷积层、池化层和全连接层:卷积层用于提取特征,池化层用于减小特征图的大小,并消除冗余的信息,全连接层用于分类。拉曼光谱由于仪器定标、精度等问题可能发生少量偏移,卷积层的平移不变性特点可以很好地适应这种偏移。
本文提出一种Deep-CNN模型,结合便携式拉曼光谱仪,可以自动、准确地识别三元混合矿物颜料的成分,同时解决了实验室级别的拉曼仪器操作复杂、不易移动的问题。在使用便携式拉曼仪器时会引入较强的环境光[13]和噪声,给分类带来难度,Deep-CNN模型消除了这些影响。实验结果表明,该模型具备以下3点优势:(1)具有良好的抗噪声能力;(2)使用小数据集训练也能取得准确的分类结果;(3)对成分不同于实验样本的混合物也能做出准确的分类。
1 CNN算法原理
CNN是一种包含卷积计算的深度学习算法,通常包含卷积层、池化层和全连接层。卷积层通过卷积核在原始数据上滑动,进行卷积计算,由于卷积核共享参数的特性,使CNN具备平移不变性。卷积层运算公式如下:
其中,xin-1——第n-1层第i个输入特征图;
*——卷积运算;
yjn——第n层第j个输出特征图;
kijn——第n-1层与第n层卷积运算所使用的卷积核;
bjn——第n层第j个特征图的偏置;
f——卷积层的激活函数。
卷积层后通常使用池化层进行下采样,池化层可以在保留数据重要特征的同时去除冗余信息,常见的池化层包括平均池化层和最大池化层,它们分别是对池化窗口内的数据取平均值和取最大值。多个卷积层和池化层组合使用构成特征提取器。提取的特征输入全连接层进行分类,为了避免过拟合,全连接层通常会应用“辍学技术”(Dropout),即随机冻结部分神经元。全连接层的计算公式为:
其中,W——参数矩阵;
x——输入向量;
y——输出向量;
b——偏置向量;
n——神经元数量;
m——输入向量长度。
2 数据集建立和光谱预处理
2.1 样本制备和数据集建立
实验选用古代绘画中常用的3种矿物颜料(朱砂、雌黄和淡黄)制备样本,将这3种矿物颜料混合,最终得到7类样本,具体成分如表1所示:
表1 混合矿物颜料的成分
由于实验中使用的矿物颜料是彩色的,使用普通的拉曼仪器在较高功率下可能会对样本产生损伤,因此,本次实验使用基于数字镜像装置(Digital Mirror Device,DMD)和Lissajous模式调制的便携式拉曼仪器采集拉曼光谱[14],可以在保证不损伤样本的前提下获得更优质的光谱(使用更高的激光功率),光谱采集系统如图1所示。光谱仪的具体参数为:激光波长是785 nm±0.02 nm;分辨率是8~11 cm-1;激光功率设置为500 mW;光谱范围是200~1,800 cm-1。对每个样本采集40个光谱,共采集280个光谱作为训练集和验证集(训练集和验证集的比为3:1),其中,每个光谱是一个长度为801的一维数据。为了保证模型评估的准确性,按照上述样本制作方法再次制作7个新的样本,对每个样本采集20个光谱作为测试集,图2为7个样本的拉曼光谱。
2.2 数据增强
CNN是一种基于数据训练的模型,数据不足会导致模型过拟合,即在训练集上的表现良好,但在测试集上的表现很差,因此需要进行数据增强来扩充数据集。拉曼光谱由于仪器定标、误差和检测环境等影响会发生少量偏移,因此对光谱进行平移变换从而增强数据集是合理的。本实验通过随机去除光谱首尾共3个数据点的方法对光谱进行数据增强,将训练集和验证集扩充为原来的4倍(1,120条光谱)。
2.3 光谱预处理
为了减少拉曼光谱的噪声和基线漂移,实验使用Savitzky-Golay、airPLS和归一化算法对光谱进行预处理,Savitzky-Golay滤波算法可以对光谱进行平滑,减少噪声,其原理是通过线性最小二乘法将相邻数据点的连续子集与一个低次多项式进行拟合。airPLS基线矫正算法可以有效减少光谱的基线漂移,其采用了基于误差的迭代加权策略,即每一个数据点的权重更新基于上一个循环拟合的基线和原始信号之间的差异。归一化可以使不同数量级的特征易于比较,本实验为了最大程度保留光谱信息,保留基线矫正后光谱的负值部分,图3为朱砂、雌黄、淡黄混合物光谱的预处理效果图。
3 Deep-CNN模型
混合物检测属于多标签分类问题,实验中建立了3个Deep-CNN模型,分别用于判断样本是否包含朱砂、雌黄和淡黄。
本文提出的Deep-CNN模型,包含7个卷积层、7个池化层、2个全连接层和1个输出层。其中,池化层使用最大池化层,每个全连接层都包含512个神经元,输出层包含1个神经元。每个卷积层和全连接层都使用ReLU激活函数去线性化,输出层使用Sigmoid激活函数得到预测概率。激活函数公式如下:
模型使用RMSProp作为优化器,二值交叉熵损失作为损失函数,表2总结了该模型每个层的输出形状、过滤器尺寸和步长。图4展示了该模型的结构。经过多次训练确定3个模型的学习率都是0.0001,批大小(batch size)都是300。
表2 Deep-CNN模型各层的输出形状、过滤器尺寸和步长
4 结果与分析
4.1 模型准确性评估
汉明损失(HL)、one-error(OE)和准确率常被用于多标签分类模型的评估。
HL用于考察单个标签被误分类的情况,公式为:
其中,N——样本的数量;
Yi′——第i个样本的预测标签;
Yi——第i个样本的真实标签;
M——每个样本标签数量。
OE用于记录样本的预测标签集中概率最大的标签不在真实标签中的情况,其公式为:
其中,f——模型的映射;
xi——第i个样本;
y——样本的一个标签;
Y——标签集;
Yi——第i个样本的真实标签集。
准确率是样本所有标签都被正确分类的概率,它是最严格的评估标准。
使用测试集对模型进行评估,140个光谱全部被正确分类,准确率为100%,HL和OE为0,表明模型具备良好的性能。减少训练集和验证集大小到140条光谱,对模型进行训练,准确率依然保持在100%,这说明该模型对数据的依赖性小。在数据难以采集的场景下,本文提出的Deep-CNN模型是一种具备优势的分类方法。
4.2 模型鲁棒性评估
4.2.1 抗噪声能力评估
相比于实验室级别的拉曼光谱仪,便携式拉曼光谱仪具有检测速度快、方便携带等优势,但更容易受到噪声的干扰,因此模型需要具备较强的抗噪声能力。向测试集中加入不同大小的高斯白噪声,得到5个不同信噪比的测试集,信噪比分别为10 dB、20 dB、30 dB、40 dB和50 dB。图5是添加噪声后朱砂、雌黄、淡黄混合物的拉曼光谱,分别使用这5个测试集对模型进行测试,HL、OE和准确率见表3。
表3 加入噪声后模型的HL、OE和准确率
实验结果表明,Deep-CNN模型可以准确分类信噪比不低于30 dB的光谱。为了直观观察10 dB和20 dB 的测试集的分类情况,在图6中展示了这两个测试集分类结果的混淆矩阵,每个矩阵中的数字代表被分到对应类别的光谱的数量。
混淆矩阵表明,光谱信噪比为10 dB时,所有的朱砂都可以被正确分类,有40个包含雌黄的拉曼光谱被错误分类,60个不包含淡黄的拉曼光谱被错误分类;光谱信噪比为20 dB时,所有的朱砂和雌黄都可以被正确分类,60个不包含淡黄的拉曼光谱被错误分类。这说明分类器效果由好到坏依次是朱砂、雌黄、淡黄。结合图5拉曼光谱分析发现,强噪声会掩盖部分强度较弱的特征峰,因此,特征峰更明显的物质分类效果更好。
4.2.2 未知混合物分类性能评估
为了进一步评估模型的鲁棒性,制作5个新的样本,样本成分见表4。由于每个样本都加入了新的物质——蛤白,因此这些样本对于Deep-CNN模型来说是未知的。
表4 5个新样本的成分
每个样本采集20个光谱作为测试集,用于对模型测试,HL、OE和准确率分别为0、0和100%,这说明Deep-CNN模型可以准确识别未知的混合物。
5 结束语
本文提出了一种Deep-CNN模型,该模型可以自动、快速、无损地分析彩色矿物颜料的成分,准确率可以达到100%。当训练集和验证集的数量减少到140条光谱时,准确率依然保持在100%,这说明模型可以应用于一些不易采集光谱的场景中。
为了验证模型的鲁棒性,对模型进行了抗噪声能力的测试和对未知样本识别能力的测试。试验结果表明,该模型在对信噪比不低于30 dB的光谱进行分类时,HL、OE和准确率分别为0、0和100%,而在10 dB和20 dB的情况下,朱砂依然可以被准确分类,20 dB时雌黄也可以被准确分类,这是由于朱砂和雌黄的特征峰更加明显。使用未知的光谱(加入蛤白)对模型进行测试,准确率也达到了100%。上述结果表明:该模型具备良好的鲁棒性。
当前使用CNN模型识别矿物颜料拉曼光谱的研究非常少,本文为这个领域的研究提供了有价值的参考。