APP下载

基于XGBoost的掺伪茶油光谱鉴别模型

2023-10-18龚中良李大鹏管金伟易宗霈

中国粮油学报 2023年8期
关键词:茶油波长预处理

龚中良, 刘 强, 李大鹏, 文 韬, 管金伟, 易宗霈, 申 飘

(中南林业科技大学机电工程学院,长沙 410004)

茶油是世界四大木本油脂之一,在食品保健、医疗、美妆、化工等领域极具发展潜力[1,2]。由于茶油所具备的优越理化指标导致其售卖价格为普通植物油的5~10倍[3],面对市场诱惑,不良商贩通过在高价茶油中掺入低价油非法牟利,从而损害消费者利益。

用于食用油鉴伪的方法主要有色谱法[4]、核磁共振法[5]、电子鼻[6]、光谱法[7]等,但色谱法、核磁共振法、电子鼻检测分别存在试剂污染油样、设备操作复杂、仪器数据稳定性低等问题,因此无法满足无损、便捷、稳定的茶油快速鉴伪需求。近年来,各类光谱检测技术依靠其直接、无损的特点被广泛应用于食用油鉴伪中,Zhang等[8]通过12 000~4 000cm-1(833~2 500 nm)光谱波段对5种油掺伪玉米油制作多元样本,通过偏最小二乘(PLS)模型的建立得到预测集决定系数(R2)均在0.93以上。Wu等[9]利用紫外可见光谱(350~800 nm)和加权多尺度支持向量机(EMD-SVR)建立大豆油、花生油、芝麻油组成的二元、三元定量模型,其相关系数(R)分别为0.953 3和0.986 6,证明低频波段也可以作为食用油有效鉴伪的依据。郭文川等[3]以833~2 500 nm的近红外光谱完成对茶油掺伪4种低价油的光谱采集,并通过对比多种方法得出在连续投影法(SPA)波长选择后的随机森林(RF)模型的效果最佳,其识别准确率为99.34%,但其光谱采集是使用傅里叶光谱仪的近红外波段,鉴别成本较高。韩建勋等[10]通过4 000~650cm-1(2 500~15 385 nm)的光谱波段结合主成分分析法(PCA)实现山茶油掺伪大豆油、菜籽油、玉米油的定性判别,同时以偏最小二乘回归算法(PLSR)建立山茶油掺伪大豆油的定量模型,其校正集和验证集的决定系数(R2)均能达到0.99。荣菡等[11]利用10 000~4 200 cm-1(1 000~2 381 nm)的光谱波段以马氏距离聚类分析法和反向传播神经网络分别建立茶油掺伪菜籽油、棕榈油定性模型(掺伪质量分数10%~40%),其准确率均为100%,但未能实现掺伪质量分数10%以下的快速鉴伪。基于光谱法的茶油鉴伪研究通常采用近红外光谱(1 000~2 500 nm),尽管可以较准确的鉴别出掺伪茶油,但是其采用的光谱设备成本显著高于紫外-可见-近红外光谱(200~1 100 nm)[12],因此限制了掺伪茶油光谱鉴别仪器的开发和推广。

研究采用紫外-可见-近红外光谱(200~1 100 nm)进行掺伪茶油的鉴别,通过对比多种预处理方法、特征波长选择方法和建模算法,建立了准确率、灵敏度和特异性较高的掺伪茶油鉴别模型,从而为开发低成本的掺伪茶油光谱检测装置奠定了基础。

1 材料与方法

1.1 材料

市售不同品牌植物油,包括3种成品茶油、2种成品花生油、2种成品葵花籽油、2种成品玉米胚芽油。实验用植物油均为压榨工艺生产,这些成品茶油均符合GB/T 11765—2018,实验期间所用油品均在保质期内。

在制备掺伪茶油样品时,以10 mL液体容量为标准,将2种花生油、葵花籽油、玉米胚芽油分别混入3种茶油中,并按照掺伪比例分别为1%、3%、5%、7%、9%、12%、15%、20%、35%制备162个掺伪茶油样品。制备时,将油样放入磁力搅拌机中,在35 ℃下搅拌1 h,随后静置24 h。另外,为增加纯茶油的区分性,按照茶油品牌各制备20个样品,共得到60个纯茶油样品。

1.2 实验装置

搭建了用于油样透射光谱采集的实验平台(图1),该平台主要由暗箱、比色皿固定支架、2个探头固定支架、2根光纤、OceanView Maya2000 pro光谱仪、HL1000卤钨灯光源、OceanView光谱采集软件、石英比色皿组成。

图1 透射光谱采集实验平台

光谱采样范围为200~1 100 nm,设置光谱积分时间为32 ms,扫描次数为100次。实验前,将光谱仪与灯源设备提前开启40 min,以达到预热效果。

同一样品采集3次光谱后计算平均值,并通过式(1)得到样品吸光度数据。

(1)

式中:Aλ为吸光度;Sλ为采集样本光谱强度;Dλ为暗光谱背景强度;Rλ为空比色皿参考光谱强度。

1.3 分析方法

1.3.1 光谱预处理与样本划分

在采集油样光谱过程中会出现杂散光、基线偏移、电噪声等问题,从而使光谱有效信息混乱、丢失。为提高模型准确性,选用标准正态变量变换(SNV)、多元散射矫正(MSC)、Savitzky-Golay(S-G)平滑处理、移动平均平滑法(MA)、一阶导数(1stDeriv)、二阶导数(2ndDerive)、SG-1stDeriv、SG-2ndDerive、SG-连续小波变换(CWT)等方法进行光谱预处理。

样品训练集与测试集的划分合理性影响模型的预测能力,以Kennard-Stone(K-S)方法对数据集进行有效划分。

1.3.2 特征波长选择

为实现茶油快速鉴伪,以竞争性自适应重加权算法(CARS)、连续投影算法(SPA)、Boruta算法对全光谱进行特征波长筛选。

CARS以权重较大波长点建立PLS模型,经过多次循环筛选出特征波长[13]。CARS运行时设置蒙特卡洛运行次数为1 000次,每次抽取80%样品作为校正集,通过10折交叉验证循环筛选。

SPA利用向量投影来优选出冗余度低、共线性小、反应样品光谱关键信息的有效特征波长[14]。设置SPA降维后的波长数量范围为1~30。

Boruta算法是基于随机森林(RF)[15]构建出的特征筛选方法,它通过加入与真实光谱变量相同数目的乱序影子变量构建新特征集,并基于RF计算影子变量和真实光谱变量之间的重要性得分(Z-scores),将得分大于影子变量的光谱变量认定为特征变量[16]。Boruta以全光谱2 068个波长变量和对应产生的2 068个乱序影子变量组成4 136个全新子集,运行过程中将影子变量中重要性得分最大值标记为Max_Shadow,得分大于Max_Shadow的波长变量被认定为特征变量。

1.3.3 模型的建立与评价

拟采用XGBoost算法建立掺伪茶油鉴别模型。XGBoost[17]是基于梯度提升决策树的改进,利用不断新增树的形式来学习新函数,通过新函数去拟合前次产生的残差,从而不断降低误差。XGBoost通过权重缩减参数(η)调节每棵树的影响,为后续迭代余留更大的学习空间[18]。由于XGBoost算法具有高效可扩展、鲁棒性强等优势,研究以gbtree作为弱学习器类型建立XGBoost茶油鉴伪模型。

另外,还将XGBoost算法与常用的支持向量机(SVM)和极限学习机(ELM)的建模效果进行对比。SVM常被用来处理非线性、高维模式识别方面的问题[19],选取径向基函数作为核函数建立SVM鉴别模型。 ELM属于单隐层神经网络,其具备计算快、泛用性强等优势[20],将Sigmoidal函数作为激活函数建立ELM鉴伪模型。

研究以准确率(ACC)、灵敏度(TPR)、特异性(FPR)作为各模型分类能力的评价指标。其中,ACC代表所有正确分类样本数与总样本数的比例。TPR代表被正确分类为纯茶油的样本数与总纯茶油样本数的比例,检验了模型对纯茶油的鉴别能力;FPR代表被正确分类为掺伪茶油的样本数与总掺伪茶油样本数的比例,检验了模型对掺伪茶油的鉴别能力。具体见式(2)~式(4)。

(2)

(3)

(4)

式中:TP为正确分类为纯茶油的样本数量;TN为正确分类为掺伪茶油的样本数量;FP为错误分类为纯茶油的样本数量;FN为错误分类为掺伪茶油的样本数量。

2 结果与讨论

2.1 光谱分析

样品吸光度曲线如图2所示。在200~1 100 nm范围内出现了5个吸收峰,其中紫外光部分在250 nm左右处出现吸收峰,可见光部分在430 nm左右处、660 nm左右处出现吸收峰,近红外光部分在930 nm左右处、1 050 nm左右处出现吸收峰。250 nm左右处吸收峰由二元共轭结构产物和三元共轭结构产物产生,430 nm左右处为索雷特特征峰,660 nm左右处吸收峰为—C—H伸缩振动的五级倍频,940 nm左右的吸收峰为—C—H三级倍频,1 050 nm左右的吸收峰为—O—H伸缩振动的二级倍频[21-23]。样品光谱曲线之间重叠严重难以直接进行区分,因此本研究借助化学计量学和机器学习方法对全光谱进行进一步分析。

图2 样品原始光谱

2.2 光谱预处理及样本划分

全光谱数据分别以MSC、SNV、MA、SG、1stDeriv、2ndDerive、SG-1stDeriv、SG-2ndDerive、SG-CWT等方法进行预处理,其中SG-CWT预处理中分解尺度(n)按照2n应小于全光谱波长数目(2 068)的原则,将其分为10个尺度。光谱预处理后将光谱矩阵带入SVM茶油鉴伪模型中,通过对比各光谱矩阵交叉验证率与验证集准确率来选取最优预处理方式。

通过图3综合分析多种预处理后的SVM茶油鉴伪模型的交叉验证率和验证集准确率,得出SG-CWT(L5)在各指标的综合性能上优于其他预处理方法,原因在于 SG-CWT预处理中起初将光谱曲线中不显著的特征峰谷逐步放大(L1~L5),但后续随着分解尺度的增大光谱曲线变得更加平滑(L6~L10),从而使一些不明显的特征峰谷被逐步去除,增大了光谱特征信息的捕捉难度。因此后续模型建立中只针对SG-CWT(L5)预处理方法进行分析。

图3 不同光谱预处理方法对应的验证集准确率与交叉验证准确率

通过K-S划分法按照3∶1的比例将预处理后的222个样品光谱数据分为训练集与测试集。训练集共167个数据,其中纯茶油样品47个掺假油样品120个;测试集共55个数据,其中纯茶油样品13个掺假油样品42个。

2.3 特征波长选择和分布特性

2.3.1 特征波长选择

CARS算法在1~60次筛选过程中RMSECV值在不断减少,在60次后RMSECV值不断增大。由于第60次筛选时RMSECV值为最小值为0.208 4,因此60次筛选后剩余的33个波长变量即为所选择的最优特征波长。

SPA算法在选择21个波长数目时RMSE值最小为0.259 68,之后虽然选择波长数目增加但RMSE降幅很小,因此RMSE最低处所选择的21个波长即为所筛选的特征波长。

Boruta特征选择算法中通过网格搜索法,得到RF模型优化后的最佳决策树数量为61棵。Boruta通过100次迭代对比各光谱变量与Max_Shadow之间的重要性得分,将47个波长认定为重要性特征波长,1 954个波长认定为不重要性波长,67个波长认定为可能重要的波长,其中67个可能重要的波长经后续判断被全部认定为不重要的波长。

2.3.2 特征波长分布特性研究

通过CARS、SPA、Boruta方法对光谱数据进行特征波长筛选,分别将波长数目降至全光谱的1.59%、1.01%、2.27%。对比紫外、可见、近红外光光谱波段占比特征波长数量(表1),发现CARS提取的特征波长主要集中在近红外波段,SPA提取的特征波长在3个波段的比重较为均匀,Boruta提取的特征波长主要集中在紫外波段,同时对3种方法所筛选的波长分布特性进行研究(图4),可见CARS相较于SPA、Boruta其所筛选波长在可见光波段主要分布于一端处,忽略了400~900 nm主要波段内峰谷周围的重要信息,SPA相较于CARS、Boruta其所筛选波长分布相对疏散,Boruta相较于CARS、SPA其所筛选波长分布集中且更加趋向于陡峭位置。

表1 各光谱波段占比特征波长数量

图4 基于CARS、SPA、Boruta波长分布特性

2.4 模型预测与评估

2.4.1 XGBoost模型的建模结果

XGBoost模型利用参数η调节学习过程中的权重缩减进而提高模型的鲁棒性,研究通过十折交叉验证以0.05为步长对参数η进行循环优选,将最高准确率下的η作为XGBoost模型建立的依据。表2给出了不同特征波长选择算法对应的最优η值。在此基础上,采用最优模型参数建立的XGBoost模型评价指标如表3所示。

表2 SVM、ELM、XGBoost模型参数选择

表3 XGBoost茶油快速鉴伪模型评价指标

Boruta-XGBoost模型的预测性能最佳,其鉴伪准确率、灵敏度和特异性均高于CARS-XGBoost和SPA-XGBoost模型,而采用全光谱建立的XGBoost模型对应的各项评价指标均为最低(表3)。以测试集评价结果为例进行详细说明。首先,Boruta-XGBoost模型的鉴伪准确率达到了98.18%,而CARS-XGBoost和SPA-XGBoost模型均为96.36%,全光谱XGBoost模型的准确率(89.09%)最低。Boruta-XGBoost可以将鉴伪灵敏度从CARS-XGBoost和SPA-XGBoost的92.31%提升到100%,并显著高于全光谱XGBoost模型(84.62%)。最后,在鉴伪特异性上Boruta-XGBoost、CARS-XGBoost和SPA-XGBoost模型表现相当,三者的特异性均为97.62%,但与全光谱XGBoost模型(90.48%)相比得到了明显提升。结果表明,Boruta算法与CARS和SPA相比可以有效提升XGBoost模型对掺伪茶油的鉴别能力,体现了Boruta使用特征波长与随机影子变量在多次迭代下相互竞争的优势。

进一步探讨了不同掺伪比例下各个XGBoost模型的鉴别性能,结果见表4。由于表4仅考虑了掺伪茶油的样品,因此以特异性指标说明鉴别精度。可见当掺伪比例在3%及以上时,CARS-XGBoost、SPA-XGBoost、Boruta-XGBoost的特异性均达到了100%;但当掺伪比例1%时这3种模型的特异性下降至83.33%,而全光谱XGBoost模型的特异性仅为50%。

表4 不同掺伪比例下XGBoost茶油快速鉴伪模型测试集特异性

2.4.2 模型对比

为进一步阐明XGBoost模型的鉴别能力,对比了2种传统的模型,即SVM和ELM。SVM模型通过十折交叉验证和网格搜索法确定最优的惩罚因子c与核函数γ,将最高准确率下c和γ作为SVM模型建立的依据。ELM模型中由于隐含层神经元个数要小于训练集样本数[24],因此在小于训练集样本数范围内以2为步长寻优隐含层神经元数量n,将最高准确率下的n作为ELM模型建立的依据。SVM和ELM在不同特征波长选择算法下对应的最优模型参数如表2所示。在此基础上,以最优模型参数分别建立的SVM和ELM模型评价指标如表5所示,可见通过Boruta算法筛选特征波长建立的SVM和ELM模型的各评价指标均优于CARS、SPA以及全波长建立的模型,这也再次显示了Boruta算法的优势。因此将仅以Boruta算法为例对比XGBoost、SVM和ELM模型的鉴别能力。

表5 SVM、ELM茶油快速鉴伪模型评价指标

对比表3和表5得到,XGBoost模型的准确率和特异性最高、ELM模型次之、SVM模型最差,而3种模型的灵敏度均达到了100%。其中,XGBoost模型的准确率与ELM和SVM模型相比分别提高了1.82%和3.63%,特异性分别提高了2.38%和4.76%。结果表明,相比于SVM和ELM模型,基于梯度提升原理的XGBoost模型通过不断拟合前一棵树的残差来弥补真值与预测值的误差范围,从而有效提升了掺伪茶油的鉴别精度。

3 结论

采用紫外-可见-近红外光谱建立掺伪茶油鉴别模型的方法。首先,对比了MSC、SNV、MA、SG、1stDeriv、2ndDerive、SG-1stDeriv、SG-2ndDerive、SG-CWT(L1-L10)等方法对全光谱的预处理结果,得到SG-CWT(L5)算法的预处理效果最佳。然后,通过CARS、SPA、Boruta算法对预处理后的全光谱进行特征波长筛选,得到了不同波段中特征波长的分布特性;进一步对比得到,Boruta-XGBoost模型表现出最佳的鉴别能力,鉴伪准确率、特异性和灵敏度分别达到了98.18%、97.62%和100.00%。最后,通过将XGBoost模型与常用的SVM和ELM模型进行对比,进一步验证了XGBoost可以有效提高掺伪茶油的鉴别能力;XGBoost模型的准确率与SVM和ELM模型相比分别提高了3.63%和1.82%,而特异性分别提高了4.76%和2.38%。

猜你喜欢

茶油波长预处理
HPLC-PDA双波长法同时测定四季草片中没食子酸和槲皮苷的含量
林安娜 茶油飘香 绿色扶贫
茶油飘香
基于预处理MUSIC算法的分布式阵列DOA估计
双波长激光治疗慢性牙周炎的疗效观察
山里茶油郎
日本研发出可完全覆盖可见光波长的LED光源
浅谈PLC在预处理生产线自动化改造中的应用
茶油总DNA提取技术及扩增适用性
络合萃取法预处理H酸废水