首页 理论教育 基于SVM的花生油掺伪检测方法研究

基于SVM的花生油掺伪检测方法研究

时间:2023-06-27 理论教育 版权反馈
【摘要】:加入的大豆油、菜籽油、调和油和橄榄油分别以10%的含量递增,各配制9个掺假样本。掺入油品的含量范围为10%~90%,该范围基本覆盖市场上可能存在的掺假的花生油中掺假成分的含量。本次实验,配制41个样本组成原始样本集,其中包括36个掺杂花生油样本和5个不同种类的纯花生油样本。图8-7显示掺杂棕榈油的纯花生油样本,其吸光度特性较其他样本有明显差异。

基于SVM的花生油掺伪检测方法研究

1.样本制备与光谱采集

在各大超市中购买不同批次不同厂家生产的花生油大豆油菜籽油调和油橄榄油5种食用油,按实验目的的要求,以纯花生油样本为主要背景成分,将样本分为4组配置,即纯花生油中分别掺入大豆油、菜籽油、调和油和橄榄油4组样本。加入的大豆油、菜籽油、调和油和橄榄油分别以10%的含量递增,各配制9个掺假样本。掺入油品的含量范围为10%~90%,该范围基本覆盖市场上可能存在的掺假的花生油中掺假成分的含量。图8-5所示为花生油掺入大豆油的9个样本中大豆油掺入量的分布情况。其他3组掺入的含量分布情况与此方法相同。

采用德国Bruker公司VERTEX70光谱仪对原始样本进行全谱测定。将原始样本分别装入50mm的实验用白色塑料瓶内,并且放置于温度为18~20℃的近红外光谱分析实验室中,静置样本一周左右,使配置的食用油混合物得以充分混合。

样本采集光谱前,将样本逐一摇动。由于棕榈油凝固点很低,在与花生油混合时出现分层现象。因此,需要对其进行外部加热使其成液态后与花生油充分混合,以便光谱扫描,从而得到准确的光谱图。

978-7-111-58430-8-Chapter08-9.jpg

图8-5 花生油样本中掺入的大豆油含量

978-7-111-58430-8-Chapter08-10.jpg

图8-6 判别花生油样本是否掺假流程

将光纤探头探入样本内部,采用透反射采样模式,对4000~12500cm-1谱区扫描,分辨率为8cm-1,扫描32次。食用油全部样本未经任何化学处理,将光纤探头伸入装有样本的小瓶中,逐一扫描样本,每次测量前均用石油醚清洗探头,避免样本间交叉污染。

本次实验的具体流程如图8-6所示。

本次实验,配制41个样本组成原始样本集,其中包括36个掺杂花生油样本和5个不同种类的纯花生油样本。原始样本的近红外光谱扫描图如图8-7所示。

图8-7中实线曲线表示在纯花生油中掺杂棕榈油样本的光谱图,点线曲线表示掺杂调和油样本的光谱图,虚线曲线表示纯花生油样本的光谱图,掺杂菜籽油样本的光谱图和掺杂大豆油样本的光谱图已被其他线覆盖。图8-7显示掺杂棕榈油的纯花生油样本,其吸光度特性较其他样本有明显差异。分析以上数据可以发现,在判断纯花生油样本是否掺假的实验中,原始样本的数据质量较好,使得有可能通过样本的光谱特性检测出花生油样本是否掺假其他食用油。在实验中,为了提高预测准确度和鲁棒性,先判别预测样本中是否掺杂棕榈油。如果检测到样本中含有棕榈油,则说明该预测样本肯定是非纯花生油;如果检测预测样本中不含油棕榈油成分,则需继续判断样本是否是纯花生油。

2.SVM模型训练

(1)选择训练集波段和数据处理

在利用SVM进行分类判别时,训练集选取的好坏直接影响判别的准确度。在实际的应用过程中,选择训练集的原则多种多样。在本实验中,通过对原始样本集的光谱数据进行分析,选择要分类的两类样本光谱图中吸光度最接近的几组样本组成训练集,剩下的样本作为校验集。利用这个原则选择训练集,使训练样本尽可能真实地反映这类样本的光谱特性,即使再加入新的待预测样本数据,同样可以最大限度提高判别的准确率。选取17个样本组成训练集,剩下的24个样本作为校验集。

由图8-7可知,为了使得判别过程简单、提高样本检测的准确率,并且使算法的鲁棒性较好,即使样本数据某些波数上受到噪声的干扰,依然具有较好的检测效果,在整个波数段的高、中和低3个部分选取5个有代表意义的波数段。波数段的选择原则是使训练集中的支持向量个数少。因为Vapnik指出测试未知样本的最大出错概率和支持向量的个数如式(8-6)所示:

978-7-111-58430-8-Chapter08-11.jpg

978-7-111-58430-8-Chapter08-12.jpg

图8-7 样本的近红外光谱扫描图

即支持向量的个数越少,SVM的期望风险的上界越小,其泛化能力则越强。

一般来说,在利用SVM进行样本数据分类时,为了最大限度提高支持向量的训练和预测能力,需要对样本数据进行尺度变换,把样本数据x变换到[-1,1]或者[0,1]范围内。在本次实验中,因为掺杂棕榈油样本的吸光度和其他样本有着明显差别,利用统一的尺度变化在判别上具有困难。在实验的判别中经过两次尺度变换:第一次尺度变换用来判别预测样本中是否掺杂棕榈油;如果检测样本中不含棕榈油成分,用第二次尺度变化来判断样本是否是纯花生油。经过两次判别,可以判断出待检测样本是否为纯花生油样本。

(2)核函数和核参数选择

在利用SVM进行样本分类判别中,核函数ker(xTx)和惩罚因子C的选择对判别的结果影响较大,目前国际上对核函数的选择还没有形成统一的模式,只有凭借经验和实验的对比进行寻优。惩罚因子C的选取需要在平衡最大分类间隔和最小分类误差中。在本次实验中,通过分析了不同种类的核函数和惩罚因子对判别结果的影响,对核函数和惩罚因子在SVM中有了一个直观的了解。

通过选取适当的核函数ker(xTx)和惩罚因子C,即可求解优化问题。利用SVM对训练集样本进行训练学习,求解可得拉格朗日乘子和偏置项,再利用分类判别函数,即可对待测样本进行分类。在本次实验中,在MATLAB6.5仿真环境下,采用SVM工具包来实现对样本数据的训练和预测,其中SVM工具包可见http://see.xidian.edu.cn/faculty/chzheng/bishe/index.htm。以选取高斯径向基函数(RBF)作为核函数,并且取σ=1;选择惩罚因子C=2000为例,对训练集样本进行训练学习的过程如图8-8和图8-9所示。(www.xing528.com)

978-7-111-58430-8-Chapter08-13.jpg

图8-8 判断棕榈油的SVM训练分析(支持向量数=2)

978-7-111-58430-8-Chapter08-14.jpg

图8-9 判断纯花生油的SVM训练分析(支持向量数=2)

其中图8-8b和图8-9b中直线即使分类决策函数fx)=0,虚线即使分类决策函数fx)=±1。在这个过程中,可以求得样本判别函数的拉格朗日乘子α和偏置项b

(3)预测样本的标记

利用上述计算得到的拉格朗日乘子α和偏置项b,通过分类决策函数978-7-111-58430-8-Chapter08-15.jpg,即可对预测样本进行分类判别。为了提高判别的准确率,利用式(8-7)对预测样本x的进行分类:

978-7-111-58430-8-Chapter08-16.jpg

给定某个待测样本,利用分类判别函数对预测样本进行分类,其分类过程如图8-10所示。

在SVM工具包中,设置程序使分类函数fx)>1的样本点用“x”表示;分类函数fx)>1的样本点用“·”表示;分类函数-1≤fx)≤1的样本点用“。”表示,即可根据分类结果图判别出预测样本的分类结果,当然也可以根据判别函数的值来对预测样本进行分类。因为预测样本中数据较多,可能出现判别结果不一致的情形。规定如果对预测样本中各点的判断准确率在85%以上则可以判定该预测样本属于某一类。在分类结果中,图8-10a表示分类判别函数fx)>1,对应图8-8中对训练集样本的设置,可以判断该样本中不含有棕榈油;然后进行下一步判断,图8-10b表示预测样本点的判别函数fx)>1,对应图8-9中对训练集集样本的设置,可以判断该预测样本为纯花生油。

978-7-111-58430-8-Chapter08-17.jpg

图8-10 预测样本的分类结果图

3.SVM模型测试

利用SVM,根据之前的步骤对原始样本集进行判别。选取不同的核函数和惩罚因子C,可以得到表8-1~表8-3的判别结果。

8-1 基于SVM的花生油掺伪判别结果

978-7-111-58430-8-Chapter08-18.jpg

8-2 多项式核函数的SVM分类结果(C=100)

978-7-111-58430-8-Chapter08-19.jpg

8-3 高斯径向基核函数(RBF)的SVM分类结果(C=100)

978-7-111-58430-8-Chapter08-20.jpg

(续)

978-7-111-58430-8-Chapter08-21.jpg

由实验结果可以看出,利用SVM对花生油的掺假进行判别是可行的,实验中几乎能够完全对预测样本进行判别。表8-1显示了惩罚因子C对判别结果的影响,随着惩罚因子C的值变大,表示不容忍判别错误的程度变大,支持向量的个数越来越小,这也说明对未知样本的判别错误概率变小。但是当支持向量大到一定程度,则其对判别结果的影响越来越小。表8-2显示多项式核函数中p对判别结果的影响,随着多项式次数p的变大,SVM的个数变小,则表示对未知样本判别的准确度的上界变小。表8-3显示高斯径向基核函数中参数σ对判别结果的影响,随着σ的变大,支持向量的个数变大,则表示对未知样本判别的准确率的上界变小,判别出错的概率变大。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈