基于自然语言处理的山楂果实品种近红外无损鉴别方法

2023-11-20 07:45邓志扬邵淑娟
食品工业科技 2023年22期
关键词:山楂贝叶斯预处理

邓志扬,廖 强,邵淑娟,刘 军,

(1.中国农业大学食品科学与营养工程学院,北京 100083;2.菏泽市食品药品检验检测研究院,山东菏泽 274000)

山楂(Crataegus pinnatifidaBunge)在我国具有悠久的药用以及食用历史,山楂果实及其制品深受消费者欢迎[1]。我国的山楂品种资源丰富,据不完全统计约有500 余份,经《中国果树志·山楂卷》核实收载的代表性品种资源有142 份[2]。不同品种的山楂果实往往在感官品质、营养成分等方面存在差异,适合不同的加工食用方式。例如,昌黎紫肉山楂果实大而整齐、果肉紫红、味酸微甜,适宜鲜食;敞口山楂果实常加工制成山楂片,出片率高且质量好[2]。因此,在加工前有必要对山楂果实品种进行鉴别,以适应不同加工食用方式的要求。传统的农产品鉴别分类主要依赖感官品评或者理化鉴定,感官品评受主观影响较大,而理化鉴定则步骤繁琐且成本高[3]。近红外光谱检测技术具有无损、快速、高效、操作简便等特点[4]。近红外光谱在农产品检测中具有广泛应用,如产地鉴别[5],营养成分定量分析[6-8],霉变鉴定[9]等。

近红外光谱数据包含信息复杂,解析困难。近红外光谱主要采集C-H、O-H、N-H 等含氢基团的化学键伸缩振动的倍频或合频吸收所反映的光谱信息,该区域谱峰较宽且重叠严重,加之吸收强度低,因此难以得到分子中官能团的特征吸收峰[10]。合适的数据处理方法可有效分析光谱信息,构建准确率较高的预测模型。常用于鉴别农产品品种的模型有偏最小二乘判别分析法(Partial Least Squares Discriminant Analysis,PLS-DA)、支持向量机(Support Vector Machine,SVM)和最小二乘支持向量机(Least Squares-Support Vector Machines,LS-SVM)等[11]。

自然语言处理(Natural Language Processing,NLP)的主要对象具有序列特性,如文本信息是文字按照语法规则的逻辑顺序排列;语音信息是单位时间的音频信号按照时间顺序排列构成的。NLP 模型大多有较强的序列信息处理能力[12]。近红外光谱数据亦是一种序列数据,是按照波长或波数的大小,将吸光度按顺序排列构成,因此,可考虑将NLP 运用到近红外光谱数据解析。目前已有研究者将NLP 运用到农产品的无损检测中并取得了良好的效果,如长短期记忆网络(Long Short-Term Memory,LSTM)、门控循环单元(Gated Recurrent Unit,GRU)神经网络、时间卷积网络(Temporal Convolutional Network,TCN)模型可根据草莓酱的中红外光谱数据实现对草莓酱掺假的鉴别[13];卷积神经网络(Convolutional Neural Networks,CNN)、长短期记忆网络(Long Short-Term Memory,LSTM)以及CNN-LSTM 模型可分析近红外高光谱数据,实现对新鲜茶叶中掺入陈年茶叶的鉴别[14]。

本研究将NLP 应用于山楂果实的近红外光谱数据解析,实现对山楂果实品种的无损鉴别。共采集了4 个品种240 个山楂果实样本的近红外光谱,训练模型,检验模型鉴别的准确率,旨在为基于近红外光谱的农产品无损鉴别分析提供参考。

1 材料与方法

1.1 材料与仪器

山里红大果山楂果实 产自吉林四平;五棱大果山楂果实 产自山东烟台;棉球大果山楂果实产自山东临沂;甜红子樱桃山楂果实 产自山东临沂。

Antaris II 型傅立叶变换近红外光谱仪 赛默飞世尔(上海)仪器有限公司。

1.2 实验方法

1.2.1 样品预处理与近红外光谱数据采集 对收集所得的不同品种山楂果实进行随机取样(n=60),山楂果实清水洗净后擦去果实表面水分,将果实放置于近红外光谱仪的光源中央,确保光源平行于山楂果实的赤道面照射,采集山楂果实的近红外光谱数据。光谱采集参数为:分辨率4 cm-1;扫描信号次数32 次;扫描范围10000~4000 cm-1。每次采集后将山楂果实以果柄为轴线旋转120°,每个山楂果实样本采集三个不同角度的光谱数据,取对应波数吸光度的平均值作为该样本的近红外光谱。

1.2.2 光谱数据的预处理 为提升模型的准确性,使用主成分分析结合马氏距离法剔除异常光谱[15],使用主成分分析法(Principal Component Analysis,PCA)、SG 滤波法(Savitzky-Golay,SG)、一阶差分(Difference of First Order,D1)、二阶差分(Difference of Second Order,D2)对山楂果实的近红外光谱数据进行预处理,以提升模型的分类效果。

1.2.3 深度学习模型的搭建

1.2.3.1 长短期记忆网络 LSTM 是由循环神经网络(Recurrent Neural Network,RNN)改进而来。RNN广泛应用于时间序列信息的处理,但其在训练中存在梯度消失的问题,即某一时刻的梯度无法很久地影响结果[16]。而LSTM 可通过添加的“遗忘机制”使得网络对长序列信息的记忆更好,可有效解决长序列训练过程中的梯度消失和梯度爆炸问题[16]。LSTM 网络的单元结构如图1 所示。

图1 LSTM 单元结构[17]Fig.1 Structure of LSTM unit[17]

其中xt为当前时刻的输入数据,上一时刻的存储单元信息ct-1以及上一时刻的隐藏层信息ht-1也作为t 时刻的输入;当前时刻的存储单元信息ct以及隐藏层信息ht为t 时刻的输出。it为输入门,ft为遗忘门,ot为输出门,通过遗忘门可以选择性地记忆信息,从而对长序列信息有更好的记忆效果[12];激活函数tanh 可将实数输入映射到[-1,1]范围内[18],σ表示sigmoid 激活函数,可将实数输入映射到[0,1]范围,激活函数的作用为加入非线性因素,提高神经网络解决非线性问题的能力[19]。

本研究的山楂果实样本数为240 个,采集的山楂果实的近红外光谱数据序列较长,每个样本的近红外光谱数据包含1556 个波数下的吸光度,即为1556 维的向量,为序列数据,因此采用LSTM 网络模型对其进行分析。本研究中搭建的LSTM 模型结构如图2 所示。

图2 LSTM 网络模型Fig.2 LSTM network model

每个样本的近红外光谱数据按照时间步长被分成若干个向量(x1,x2,x3.......xt)后按顺序输入LSTM单元中,最后输入全连接层Dense,再经过Sigmoid函数计算后获得分类结果。

1.2.3.2 门控循环单元网络 GRU 是LSTM 单元结构的一种变体,是将LSTM 单元结构的输入门和遗忘门合并为更新门(Zt),输出门改为重置门(rt)(图3)[20]。因此,GRU 相较于LSTM 单元结构简单,参数更少,更便于训练。图3 中Xt为本时刻输入的向量,ht-1为上一时刻的输出,ht为本时刻的输出[21]。用GRU 代替图2 中的LSTM 单元,可构成GRU 神经网络模型。

图3 门控循环单元[21]Fig.3 Gated recurrent unit[21]

1.2.4 传统机器学习模型建立 本研究采用逻辑回归、朴素贝叶斯、决策树、K 近邻算法四种NLP 常用的传统机器学习模型对山楂果实的近红外光谱数据进行分析。

1.2.4.1 逻辑回归模型 逻辑回归模型[22]的数学表达式如下所示:

其中,x 是自变量,w 是参数,ŷ是估计值。本研究将山楂果实的近红外光谱特征作为多维自变量x,品种作为因变量y,建立逻辑回归模型预测山楂果实的品种。

1.2.4.2 朴素贝叶斯模型 采用朴素贝叶斯模型对山楂果实样本的近红外光谱数据进行分析,以期实现山楂果实品种分类。设C 为山楂果实品种的集合,n 为品种数,则集合为C={c1,c2,c3......cn}。x 为某一待分类山楂果实样本的光谱特征集合x={a1,a2,a3.......am},m 为光谱的特征数,依据贝叶斯定理,计算每个山楂果实品种对于该待分类山楂果实样本的光谱特征集合x 的条件概率P(cj|a1,a2......am),其中j=1,2,.....m,条件概率中最大的一项的类即为待分类山楂果实样本所属的品种[23]。

1.2.4.3 决策树模型 采用决策树模型从根节点出发对待分析山楂果实样本的近红外光谱的一个特征进行判断,根据判断的结果分配到子节点中,进而对山楂果实样本的近红外光谱的下一个特征进行判断分类,如此循环,直到将最后一个特征分配到带有山楂果实品种标签的叶子节点中,实现山楂果实品种的分类[24]。

1.2.4.4 K 近邻算法 K 近邻算法根据距离函数计算待分类的山楂果实样本近红外光谱X 与训练集中每个山楂果实样本的近红外光谱之间的距离,选择与待分类山楂果实样本距离最小的K 个样本作为X 的K 个最近邻,最后依据X 的近邻中的大多数样本的类别作为X 的类别[25]。

1.2.5 数据集划分与模型评价验证 将数据集按照训练集:验证集:测试集=6:2:2 划分,训练集用于模型的拟合调试,验证集用于模型超参数的调整,测试集不参与模型的调试只用于检验模型的预测能力。采用外部验证法以验证集和测试集预测的准确率来评价模型的预测能力[26]。

1.3 数据处理

在Jupyter Notebook 6.0.1 开发环境下,利用Python 3.7.0 对近红外光谱数据进行分析建模,深度学习框架采用Keras 2.3.1,机器学习库采用Scikitlearn 0.21.3,异常光谱检验采用SciPy 1.3.1。

2 结果与分析

2.1 山楂果实的近红外光谱

本研究采用PCA 结合马氏距离法进行异常光谱的检测与剔除。共从光谱样本中剔除异常样本9 个,其中甜红子樱桃、山里红大果样本各剔除3 个,棉球大果样本剔除1 个,五棱大果样本剔除2 个。图4 为剔除异常光谱后的山楂果实的近红外光谱图,由图4 可知在5200 cm-1附近有吸收峰,可能与C-H 和C=O 伸缩振动的合频 有关[10];7000 cm-1附近的吸收峰可能与水中O-H 的一级倍频有关[27]。该光谱图与Dong 等[27]收集的山楂果实的近红外光谱图形状相近。由于山楂果实的近红外光谱吸收峰范围相近,形状相似,难以直接区分品种。

图4 不同品种山楂果实样本的近红外光谱图Fig.4 Near-infrared spectra of four hawthorn species

2.2 模型构建

2.2.1 深度学习模型训练 利用四个品种山楂果实的近红外光谱数据训练LSTM 与GRU 神经网络模型进行品种鉴别,优化后的两种深度学习模型的训练参数与训练结果如表1 所示。由表1 可知,LSTM与GRU 神经网络模型在训练集中的准确率分别为98.30%±0.46%和97.87%±0.46%,在验证集中的准确率分别为95.47%±0.83%与96.01%±0.63%。

表1 LSTM 与GRU 神经网络模型的训练参数与结果Table 1 Training parameters and results of LSTM and GRU neural network models

采用混淆矩阵对验证集预测结果进行可视化处理,进一步分析深度学习模型对山楂果实品种鉴别的准确率。如图5 所示,LSTM 与GRU 神经网络模型对棉球大果鉴别的准确率均较高,均为100%。LSTM对甜红子樱桃、五棱大果品种的鉴别能力较差,准确率低于90%。GRU 神经网络模型对四种山楂果实品种的鉴别准确率较为稳定,均在90%以上。本研究中GRU 神经网络模型的准确率略优于LSTM 模型,原因推测为数据集规模较小,GRU 神经网络模型在较小规模的数据集中的性能往往优于LSTM[28]。

图5 LSTM 与GRU 神经网络模型验证集混淆矩阵Fig.5 Confusion matrix of validation sets for LSTM and GRU neural network models

2.2.2 不同预处理方法对深度学习模型训练结果的影响 对光谱进行预处理往往可以提升近红外分析模型的准确性,因此,本研究尝试在训练深度学习模型之前对近红外光谱数据进行预处理。光谱进行预处理后,由于数据发生了变化,深度学习模型的参数需要优化调整才能得到较优的效果。优化后的参数如表2 所示,深度学习模型在验证集中的准确率如图6 所示。

表2 深度学习模型的训练参数Table 2 Training parameters of the deep learning model

图6 不同预处理方法对深度学习模型验证集准确率的影响Fig.6 Influence of different preprocessing methods on the validation set accuracy of deep learning models

在未预处理的条件下,LSTM 与GRU 神经网络模型的山楂果实品种鉴别的准确率分别为95.47%±0.83%与96.01%±0.63%,准确率高,表明两种NLP常用的深度学习模型对序列数据特征提取能力强[29],即使在无预处理情况下,也可以充分提取分析不同品种山楂果实近红外光谱数据特征。因此,LSTM 与GRU 神经网络模型不但对文本数据有强的分析能力,对光谱序列数据也有较好的分析效果。经过PCA 预处理后,两种模型的准确率提升至99.46%±0.00%,可见PCA 预处理进一步提升LSTM 与GRU神经网络模型对不同品种山楂果实光谱特征的提取能力。利用D1 预处理后,两种模型的山楂果实品种鉴别的准确率分别提升至98.55%±0.31%、98.73%±0.31%,较之于PCA 略低。利用D2 预处理后,两种模型的准确率下降,分别降为93.12%±1.37%、92.57%±0.31%。利用SG 预处理后,LSTM 模型的准确率下降,GRU 神经网络模型的准确率略有提升,准确率分别为93.66%±1.13%、96.20%±1.09%。光谱经预处理后,准确率下降的可能原因为,SG、D2 预处理虽降低了噪声,但影响了模型对近红外光谱数据的特征提取能力,导致模型对山楂果实品种鉴别的准确率降低[30]。

2.2.3 传统机器学习模型的构建 传统机器学习模型在验证集中的准确率如图7 所示,常用于文本分类问题的逻辑回归模型在本研究中的准确率最高,其在无预处理条件下,采用PCA 或SG 算法预处理光谱数据后准确率均为100%。

图7 预处理方法对机器学习模型验证集准确率的影响Fig.7 Influence of preprocessing method on accuracy of machine learning model validation set

朴素贝叶斯模型在无预处理的条件下对山楂果实品种鉴别的准确率仅为76.09%,推测原因为朴素贝叶斯模型的假设条件是特征之间相互独立[31],而山楂果实近红外光谱各波长的吸光度数据之间存在着多重共线性问题,即具有较强的相关性[32],不满足朴素贝叶斯模型的假设条件。光谱数据经过PCA 预处理后,朴素贝叶斯模型在验证集中的准确率提升至95.65%。PCA 预处理可将光谱特征降维,组成若干相互独立的、新的一组特征,符合朴素贝叶斯模型成立的假设条件[33]。而D1 预处理近红外光谱数据后,朴素贝叶斯模型的准确率提升至89.13%。D1 预处理可消除近红外光谱基线漂移、平缓背景干扰,提供比原光谱更高的分辨率和更清晰的光谱轮廓变化信息,因而可提升朴素贝叶斯模型的准确率[34]。决策树模型和K 近邻算法在光谱数据无预处理的情况下在验证集准确率仅为75%左右,而经合适的预处理后,其品种鉴别的准确率显著提升。其中,决策树模型对经D1 处理后的光谱鉴别的准确率可达89.13%;K 近邻算法对经D1 处理后的光谱鉴别的准确率可达93.48%。

综上,NLP 常用的传统机器学习模型可用于解决基于近红外光谱的山楂果实品种鉴别问题,而PCA 及D1 预处理方法可有效提升传统机器学习模型的准确率。

2.3 模型预测能力的对比与验证

PLS-DA、SVM 是两种基于近红外光谱的农产品品种鉴别常用模型[11]。分别采用这两种模型对不同品种山楂果实的近红外光谱数据进行建模分析并与本研究中使用的NLP 模型的品种鉴别准确率进行对比分析,采用外部验证法对构建模型的预测能力进行验证[26]。

如表3 所示,在验证集中,PLS-DA 模型准确率高(无预处理以及使用不同预处理方法,准确率均为100%)。SVM 模型准确率低(准确率均低于80%)。本研究中的NLP 模型在合适的预处理条件下准确率均高于85%,优于SVM 模型。LSTM、GRU 神经网络、逻辑回归、朴素贝叶斯模型在光谱数据经合适的预处理后准确率均可达到或接近PLS-DA 模型的准确率。

在测试集中,PLS-DA 模型的准确率均为100%。SVM 模型的准确率均在75%以下。PCA 预处理结合LSTM 与PCA 预处理结合GRU 神经网络模型在测试集中的准确率为100%±0.00%,说明模型具有很强的预测能力,与PLS-DA 模型的准确率相当,且LSTM 与GRU 神经网络模型在光谱经其他方式预处理的条件下准确率也均高于95%。逻辑回归模型在光谱无预处理、D1、PCA 或SG 预处理条件下,准确率均为100%,与PLS-DA 模型的准确率相当。PCA 预处理结合朴素贝叶斯模型的准确率为95.83%。决策树和最近邻算法在测试集中的表现相对较差,D1 预处理后模型的准确率均为91.67%。

3 讨论与结论

农产品的近红外光谱无损鉴别研究多将近红外光谱数据视为高维度、具有多重共线性且包含复杂信息的数据[10],常采用SVM、PLS-DA 等模型实现对农产品的鉴别[11]。本研究认为近红外光谱数据与自然语言数据均为序列数据,可采用NLP 模型实现近红外光谱数据解析。以本研究中的光谱数据进行建模分析,逻辑回归、朴素贝叶斯以及LSTM、GRU神经网络模型均能实现与PLS-DA 模型等同的分类准确率(最优预处理条件下,测试集准确率均为100%)。Hong 等[14]将近红外高光谱数据视为序列数据,使用CNN-LSTM 以及LSTM 等NLP 方法对茶叶样本的近红外高光谱数据进行分类,可实现对新鲜茶叶中掺入陈年茶叶的鉴别且与SVM 的效果接近。CNN-LSTM、LSTM 以及SVM 模型的验证集准确率分别为83.102%、82.548%以及80.332%,表明了NLP 相关模型适用于序列数据—近红外高光谱的分类,这与本研究的结果相近。

Dong 等[27]收集了我国三个省份共96 枚山楂果实的近红外光谱,构建了PLS-DA、反向传人工神经网络模型(Backpropagation Artificial Neural Networks,BP-ANN)对山楂果实的产地进行预测。PLSDA 在测试集中的准确率为83%,BP-ANN 在测试集中的准确率为95.8%,本研究使用的深度学习模型以及逻辑回归、朴素贝叶斯模型,在最优的预处理条件下测试集准确率均可达到或接近100%,与之相较,准确率更高。Peng 等[35]采用气相色谱飞行时间质谱法对333 份武夷肉桂岩茶样品的挥发性成分进行了测定,并建立了多层感知机器、SVM、随机森林等多种机器学习模型,发现多层感知机在测试集中的准确率最高(83.2%)。本研究与之相比,不会破坏农产品,无须复杂耗时的检测分析,便可实现极高的分类准确率(最优可达100%),由此可见近红外光谱无损鉴别农产品的优势。

然而,本研究仅可实现对四种山楂果实品种的鉴别,对于实现更多品种的鉴别以及同时实现山楂果实营养成分的测定,仍有待研究。该目标的实现,依赖于充足、高质量的数据集以及更加可靠的模型,而目前少有公开的农产品的近红外光谱数据集,这一定程度上限制了农产品的近红外光谱无损检测研究。当今NLP 技术蓬勃发展,一系列功能强大的NLP 模型如Transformer、GPT-3 相继诞生[36-37]。可考虑将更复杂、功能更强的NLP 模型运用于近红外光谱解析中,为农产品的近红外光谱解析提供更多、更有效的方法。

本研究使用NLP 对山楂果实的近红外光谱数据进行分析,实现对山楂果实品种的无损鉴别。逻辑回归模型在光谱无预处理条件下以及经PCA 或SG预处理后,验证集、测试集准确率均为100%。LSTM和GRU 神经网络模型在光谱无预处理条件下,验证集准确率分别为95.47%±0.83%和96.01%±0.63%,测试集准确率分别为97.74%±0.30%和97.57%±1.08%,光谱经PCA 预处理后验证集准确率可达99.46%±0.00%,测试集准确率可达100%±0.00%。朴素贝叶斯模型,在光谱经PCA 预处理后,验证集准确率为95.65%,测试集准确率为95.83%。深度学习模型(LSTM 和GRU 神经网络模型)以及传统机器学习模型(逻辑回归模型和朴素贝叶斯模型)依据山楂果实的近红外光谱鉴别山楂果实品种的准确率高,逻辑回归模型与深度学习模型(LSTM 和GRU神经网络模型)的鉴别准确率最优。本研究表明基于自然语言处理的模型可用于山楂果实品种近红外无损鉴别,为农产品近红外光谱数据分析提供了更多可参考的模型,为更复杂、功能更强的NLP 模型运用于该领域提供参考。

猜你喜欢
山楂贝叶斯预处理
山楂花
山楂花开白如雪
山楂更可化瘀滞
山楂
基于预处理MUSIC算法的分布式阵列DOA估计
贝叶斯公式及其应用
基于贝叶斯估计的轨道占用识别方法
浅谈PLC在预处理生产线自动化改造中的应用
一种基于贝叶斯压缩感知的说话人识别方法
络合萃取法预处理H酸废水