An Electronic Nose Food Quality Detection Method Based on CNN-WSN and SHO-KELM
The detection of food quality is of great importance for human health and industrial production, but the current common detection methods are difficult to achieve the fast, accurate and non-destructive detection needs. Therefore, in this work, an electronic nose food quality detection method based on the combination of CNN-WSN and SHO-KELM is proposed. Firstly, CNN-WSN fusion features that can effectively characterize the original information of food quality are obtained based on convolutional neural network (CNN) and wavelet scattering network (WSN). Then the kernel parameters and regularization coefficients of the kernel-extreme learning machine (KELM) model are optimized using the hippocampus optimization algorithm (SHO), which solves the problem of the difficulty in selecting key parameters. In order to verify the validity of the proposed method, finally, an electronic nose system was built independently and milk samples were collected and tested. The experimental results confirm that the proposed method has good food quality detection effect.
Electronic Nose
电子鼻的历史最早可以追溯到20世纪初Zwaardemaker和Hogewind在气味检测方面的工作
在电子鼻系统中,利用气体传感器阵列获取气味信息,其响应信号包含了表达气味种类与浓度的关键信息。利用预处理方法、特征提取方法及判别模型对哺乳动物嗅觉神经系统进行模拟,可以实现对气味的分析。当前的主要研究重点集中在对食品气味信息的特征提取与判别模型的建立两个方面。对于特征提取,PCA方法是最常用的方法之一。Ren等人
对于电子鼻判别模型建立方面的研究,最常用的学习方式是有监督学习,实现的任务包括分类和回归。He等人
目前,电子鼻技术发展的瓶颈在于无法避免气体传感器中敏感材料对气体的交叉敏感特性及外界环境干扰对气味信息的准确表达。因此,在气敏材料的固有限制下,对特征提取方法和判别模型的研究是提升电子鼻系统性能的重要手段之一。
卷积神经网络是一种多层的监督学习神经网络,其中卷积层和池化层是实现卷积神经网络特征提取功能的核心模块
(1)
(2)
式中, 代表卷积核, 代表卷积核的数量, 代表输入 的通道编号, 是与内核相对应的偏差, 是激活函数, 是卷积操作。
WSN是一种用于自动提取输入信号特征的框架,需要小波核卷积、非线性化和平均运算
(3)
(4)
(5)
式中, 是低通滤波器, 是不变部分即散射系数, 是高频小波, 是协变部分,表示尺度 的高频信息。
输入信号从0阶到g阶依次迭代,形成从0阶到g阶的散射系数如式(6)所示。
(6)
CNN能够自动提取表征数据本质的抽象特征,对低频或高频信息的特征提取效果较好。但是在电子鼻系统检测过程中,噪声往往是难以避免的,而且通常分布于高频范围。因此单纯地使用CNN方法易受到源自高频信息中噪声的干扰。WSN方法能够有效去除电子鼻所采集到的高频信息中的噪声,这能够有效地补偿CNN模型对噪声敏感的问题。基于以上原因,本文提出了一种基于CNN-WSN的特征融合方法,以实现对食品质量特征数据的融合,融合方法的示意图如
对电子鼻数据进行特征提取与融合的具体步骤如下所示。
1) 对传感器阵列响应信号数据进行Z-score标准化。
2) 将预处理后的数据信号输入到CNN中,设置卷积核大小为3,个数为2,并使用最大池化方法来处理每个特征图,选择预定窗口范围内的最大参数作为输出特征值。
3) 将预处理后的数据信号输入到WSN中,选择Gabor小波作为小波核卷积,选取0到2层的WSN散射系数作为特征。
4) 将CNN与WSN提取到的特征进行融合,最终得到CNN-WSN融合特征。
KELM方法源自ELM方法,与ELM方法相比,不需要给出隐藏层节点的数量,并且用核函数表示隐藏层的未知非线性特征映射,可以以更快的学习速度提供更好的泛化性能
(7)
(8)
式中, 与 为输入向量, 为隐层节点输出, 为给定训练样本, 是正则化参数, 是单位矩阵, 为期望输出。
经验结果表明在一般光滑性假设下,高斯径向基函数往往具有良好的性能,特别是在没有数据集的额外知识的情况下。高斯径向基函数如式(9)所示。
(9)
式中, 是核函数参数,代表高斯核函数宽度。
SHO是从自然界中海马的运动、捕食和繁殖方式入手,提出的一种基于群体智能的MAs
(10)
式中, 为 之间的随机数,i为 之间的正整数。 和 代表分别从雄性种群和雌性种群中随机选择父母个体。
电子鼻数据在分析过程中极易产生过拟合现象。由于KELM模型具有泛化性能好、训练速度快和鲁棒性强的特点,因此选用KELM模型是较为理想的模式识别方法。然而KELM模型中的核参数和正则化系数难以精确设置,这对KELM模型的性能有很大影响,也会导致电子鼻系统检测精度的下降。因此本文使用SHO来优化KELM的核参数和正则化系数,提出了SHO-KELM方法。该方法的流程图如
具体的优化步骤如下所示:
1) 将KELM的核参数和正则化系数设置为SHO算法中粒子的位置,并将实验样本划分为训练集和测试集。然后对种群相关参数进行初始化。
2) 通过初始化的海马种群,计算适应度函数值。
3) 依靠海马的运动增强其种群的局部寻优能力,利用海马的捕食来增强种群早期的全局搜索能力,并形成新的海马种群,避免过度依赖原始种群。根据新的海马种群位置更新适应度值,并找出种群的个体极值和群体极值。
4) 确定是否达到最大迭代次数,如果是,输出最佳适应度值,如果否,返回步骤(3)继续迭代。迭代结束后,在历史迭代中确定KELM的最优核参数和正则化系数。
5) 将最优核参数和正则化系数返回到KELM中,实现SHO-KELM模型的建立。
其具体步骤如下:
1) 通过标准化和基于OMP的小波去噪对传感器阵列响应信号进行预处理,保证数据的量纲一致。
2) 结合CNN提取的抽象特征矩阵与WSN提取的散射特征矩阵获得了基于CNN-WSN的融合特征矩阵。
3) 将CNN-WSN融合特征按一定比例分成训练集和测试集两部分,选用KELM作为对食品质量的初始检测模型。
4) 通过SHO优化算法中的运动、捕食和繁殖行为对KELM模型中的核参数和正则化系数进行寻优。
5) 将自行采集的食品质量数据集输入到所建立的CNN-WSN与SHO-KELM模型中,以获取食品质量检测结果。
本文设计的电子鼻系统包含了硬件部分与软件部分。该系统具有对食品变质气味的信号采集、进气与洗气操作、数据处理与传输、以及人机交互等四项功能。
电子鼻系统的硬件部分用于检测变质食品的气味,其功能是获取食物气味对应的传感器响应数据,其中最重要的部分就是气敏传感器的选择。本文使用TGS系列SnO2型气敏传感器TGS2602、TGS2611、TGS2620来设计传感器阵列。总共9个传感器构成了一个3 × 3的传感器阵列。传感器型号和数量如
编号 |
数量 |
型号 |
敏感气体 |
检测范围 |
S1 |
3 |
TGS2602 |
甲烷、硫化氢、氨气、酒精、氢气等 |
1~30 ppm |
S2 |
3 |
TGS2611 |
甲烷、异丁烷、酒精、氢气等 |
500~10000 ppm |
S3 |
3 |
TGS2620 |
甲烷、异丁烷、乙醇、一氧化碳等 |
50~5000 ppm |
电子鼻系统软件部分中的上位机部分使用QT进行编程,主要用来开发图形用户界面程序。主要实现对目标气体的检测和处理。下位机用Keil5进行编程,用于对嵌入式系统中的微控制器进行编程,以实现传感器响应曲线的实时显示与数据保存。
本文引入准确率(A)、精确率(P)、召回率(R)、调和平均数(F1)等四个食品质量检测评价指标。准确率的计算公式如式(11)所示,精确率的计算公式如式(12)所示,召回率的计算公式如式(13)所示,调和平均数的计算公式如式(14)所示。
(11)
(12)
(13)
(14)
式中, 代表正类正确分类的样本数量, 代表负类正确分类的样本数量, 代表将负类错分为正类的样本数量, 代表将正类错分为负类的样本数量
本研究中,选取的实验样本为伊利牌纯牛奶。将牛奶倒入锥形瓶中,牛奶依据在锥形瓶中的储存时间,被划分为新鲜牛奶(0~3 h)、次新鲜牛奶(3~6 h)、开始变质牛奶(6~9 h)、轻微变质牛奶(9~12 h)、中度变质牛奶(12~24 h)、严重变质牛奶(24~72 h)、腐败牛奶(72~120 h)、严重腐败牛奶(120 h及以后)等8个质量等级。之后再利用搭建的电子鼻检测系统对牛奶进行数据采集。电子鼻系统的实物图如
采集的传感器曲线包括30秒准备阶段、10分钟采集阶段、5分钟恢复阶段。最终本文采集到的牛奶数据集共240个样本,每个质量类别有30组样本,每组样本共包含5850个数据点。
为了验证提出的CNN-WSN与SHO-KELM方法的有效性,本研究通过自主搭建的电子鼻系统对牛奶样本进行采集,并利用采集到的牛奶质量数据集进行实验验证。在特征提取部分分别采用CNN、WSN和CNN-WSN方法,并与KELM、ISSA-KELM和SHO-KELM、等判别方法分别组合。牛奶质量检测实验的测试结果如
特征提取 |
分类模型 |
A |
P |
R |
F1 |
WSN |
KELM |
52.8% |
60.0% |
42.9% |
50.0% |
WSN |
SHO-KELM |
65.3% |
40.0% |
57.1% |
50.0% |
WSN |
ISSA-KELM |
50.0% |
40.0% |
28.6% |
33.3% |
CNN |
KELM |
63.9% |
25.7% |
100% |
40.9% |
CNN |
SHO-KELM |
95.8% |
100% |
100% |
100% |
CNN |
ISSA-KELM |
94.2% |
100% |
100% |
100% |
CNN + WSN |
KELM |
75.0% |
33.3% |
100% |
50.0% |
CNN + WSN |
SHO-KELM |
97.6% |
100% |
90.9% |
95.2% |
CNN + WSN |
ISSA-KELM |
95.4% |
100% |
85.9% |
92.5% |
由测试结果可知,无论基于哪种判别模型对牛奶的质量进行检测时,使用融合特征作为输入能够有效地提升判别模型的检测精度,这说明了所提出的CNN-WSN特征融合方法能够有效地表征原始数据中的有效信息。当特征提取方法确定时,选择合适的方法对原始KELM模型进行参数优化对提升模型的整体性能同样是有着重要作用的。其中CNN特征、WSN特征、CNN-WSN特征分别与KELM模型组合进行实验的质量检测效果如
由
此外,进一步验证不同优化算法对KELM模型的识别效果影响。研究中使用CNN-WSN融合特征分别结合SHO-KELM与ISSA-KELM两种优化模型进行牛奶质量检测实验,识别效果如
由
本文提出了一种基于CNN-WSN与SHO-KELM的电子鼻食品质量检测方法。该方法通过将CNN抽象特征与WSN散射特征进行融合,再利用SHO优化算法对KELM的核参数和正则化系数进行了优化。最后构建出的SHO-KELM食品质量检测模型能够在自制电子鼻采集的牛奶质量数据集上表现出最好的识别效果。该方法为实现各类食品质量快速准确地检测需求提供了重要的支持作用。
这项工作得到了黑龙江省大学生创新创业训练计划项目[202210214004]的资助。