武汉大学学报(理学版) 2019, Vol. 65 Issue (3): 290-296
0

文章信息

朱煜枫, 王宁诚, 许磊, 吴枫
ZHU Yufeng, WANG Ningcheng, XU Lei, WU Feng
基于ABC-RNN算法的机器嗅觉系统
Machine Olfaction System Based on ABC-RNN
武汉大学学报(理学版), 2019, 65(3): 290-296
Journal of Wuhan University(Natural Science Edition), 2019, 65(3): 290-296
http://dx.doi.org/10.14188/j.1671-8836.2019.03.009

文章历史

收稿日期:2018-09-30
基于ABC-RNN算法的机器嗅觉系统
朱煜枫1, 王宁诚2, 许磊1, 吴枫2    
1. 中国科学技术大学 微电子学院, 安徽 合肥 230022;
2. 中国科学技术大学 信息科学技术学院, 安徽 合肥 230022
摘要:为了解决对短采集时间水果产地进行快速识别的问题,提出一种基于人工蜂群算法优化的循环神经网络(ABC- RNN)。该算法利用人工蜂群(ABC)算法对循环神经网络(RNN)的初始权重和偏置进行全局最优搜索,同时RNN以时序信号作为输入信号,降低了网络的复杂度。实验结果表明,ABC-RNN算法具有更快的训练速率和更高的精度,在甜橙和猕猴桃两种水果的产地分类问题上取得了很好的分类结果。
关键词产地溯源     循环神经网络     人工蜂群算法     参数优化     机器嗅觉     快速识别    
Machine Olfaction System Based on ABC-RNN
ZHU Yufeng1, WANG Ningcheng2, XU Lei1, WU Feng2    
1. School of Microelectronics, University of Science and Technology of China, Hefei 230022, Anhui, China;
2. School of Information Science and Technology, University of Science and Technology of China, Hefei 230022, Anhui, China
Abstract: In order to identify the geographical origin of fruits in short sampling time, we proposed an artificial bee colony opti- mized recurrent neural network (ABC-RNN).The artificial bee colony (ABC) algorithm is used to search for the global optimal initial weight and the bias of recurrent neural network (RNN).And RNN is a time series based on neural network, which reduces the network complexity.The experimental result shows that the ABC - RNN with faster training speed and higher accuracy has achieved good identification results in the geographical origin of oranges and kiwi fruits.
Key words: geographical origin identification     recurrent neural network     artificial bee colony     parameter optimization     machine olfaction     fast identification    
0 引言

机器嗅觉技术是一种模仿人类嗅觉系统的技术,具有结构简单、响应快速、灵敏度高、成本低和易于处理的优点,现已广泛应用于水果、茶叶、土豆等种类识别、质量评估和成熟度检测等领域[1~5]。Shao等[6]为了更好地对不同存储时间的芒果进行分类,将样本芒果置于气密小瓶密封保存30 min后开始对芒果样本气体进行采样。Rubio [7]使用adaline神经网络对水果和蔬菜进行分类并获得了100%的准确率,但是他们选择的采样时间为800 s。Ma等[8]对猕猴桃的产地进行了区分,他们为了传感器的响应能在30 s内到达峰值,对冷冻干燥后的样本进行了粉碎处理,破坏了样本的完整性。由于水果气体正常散发速度相对较慢,传感器难以在短时间内达到稳态,传统的算法需要对长采集时间获得的数据进行训练才能更准确识别产地。因此,目前的机器嗅觉技术应用仍存在样品预处理时间长、检测周期长以及难以实现无损检测等问题。为此,研究能实现短采集时间样本数据识别的算法是非常有必要的。

本文提出了一种将RNN(recurrent neural net- work)与人工蜂群(artificial bee colony)相结合的算法,对短采集时间甜橙和猕猴桃样本数据进行产地分类,以达到快速识别的目的。RNN是人工神经网络模型之一,它的优点是充分利用基于时间序列数据之间的相关性[9],与此同时,利用ABC算法在RNN开始阶段对RNN的初始权重和偏置进行全局最优搜索。将所提出的算法与主成分分析法(PCA)、反向传播神经网络(BPNN)和支持向量机(SVM)算法进行了比较,ABC-RNN在甜橙和猕猴桃产地快速识别中取得了更好的分类结果。

1 本文的系统 1.1 结构

HMNST型机器嗅觉系统是本课题组研制的,它由电源单元、传感器单元、气路单元和数据采集单元组成。该机器嗅觉系统的示意图如图 1所示。

图 1 HMNST机器嗅觉系统结构图 Fig. 1 The structure diagram of the HMNST machine olfaction system

传感器单元由具有7个金属氧化气体传感器的阵列和聚四氟乙烯(PTFE)制成的采样气室组成。表 1展示了这7个气体传感器的检测特性。

表1 气体传感器检测特性 Table 1 Sensors and their characteristics
序号 传感器 响应气体
1 TGS813 甲烷,丙烷,丁烷
2 TGS821 氢气
3 TGS2602 VOCs,氨气,硫化氢,甲醛
4 MQ2 液化气,丙烷,氢气
5 MQ3 酒精
6 MQ7 一氧化碳
7 MQ135 氨气,硫化物,苯系
1.2 ABC-RNN 1.2.1 RNN

RNN是一种用于处理时序数据的神经网络。在该网络中,循环结构会保留当前时刻隐藏神经元的状态值,并将其作为下一次循环输入的一部分输入信号输入到下一时刻的隐藏层神经元中[10]。RNN的输入信号采取的是时序输入,每输入一步,每一层都共享网络权重和偏置,大大减少了网络中需要学习的参数,降低了网络的复杂度。本文中所采用的RNN结构如图 2所示。它由三部分组成,分别是输入层、隐藏层和输出层。其中隐藏层神经元的状态值h (t)和输出值y的表达式为

(1)
(2)
图 2 循环神经网络结构图 Fig. 2 The structure of RNN

式中:U是连接输入层和隐藏层的权重,W是连接上一时刻隐藏层与当前时刻隐藏层的权重,V是连接隐藏层和输出层的权重,bh是隐藏层的偏差,σ是隐藏层的激活函数,by是输出层的偏差,θ是输出层的激活函数,end是输入数据时间序列的长度。

RNN的反向传播采用梯度下降算法,通过梯度下降的迭代获得RNN模型参数。由于它是基于时间序列上的反向传播,该方法被称为BPTT(Back propagation through time)。RNN的所有参数在BPTT的过程中同步更新。

传统RNN网络在处理长期依赖时可能会遇到梯度消失的问题。对权重矩阵进行合理的初始化可以减少梯度消失的影响,使用RNN网络的变体——长短时记忆(LSTM)网络也可以处理梯度消失以及有效学习长期依赖。考虑到本文的目的是对短采集样本时间数据进行识别,所以选择使用ABC算法对RNN网络的初始权重和偏置进行优化。

1.2.2 ABC算法优化

ABC算法是一种模拟自然界蜂群行为的优化算法,具有操作简单、控制参数少、鲁棒性强等特点以及优秀的全局最优解搜索能力[11, 12]。本文将ABC算法与RNN网络相结合,用以搜索RNN网络的最优初始权重和偏置。ABC-RNN算法的具体步骤包括以下几个部分:

1) 创建一个RNN网络。将RNN网络输入层和隐藏层、隐藏层和输出层之间的参数(权重和偏差)用行向量X表示,X=[w, b],其中,w是网络权重的行向量表示,它的维数是N×M+M×M+M× Lb是网络偏置的行向量表示,它的维数是M+L。其中NML分别为输入层、隐藏层和输出层的神经元个数,将X的维数记作D

2) 初始化ABC算法的训练参数:食物源的个数SN,蜂群大小Nc,雇佣蜂数量Ne,跟随蜂数量No,极限值为limit,最大循环次数为MCN。其中SN=Ne=NoNc =Ne=No。每个食物源对应一个初始化的解X

3) 每个食物源的适合度值计算如下

(3)

式中:i=1,2,…,SNfi是目标函数,在本文中采用RNN网络的预测值与实际值的交叉熵作为目标函数。

4) 进入循环阶段,直到迭代次数大于最大循环次数MCN。

5) 雇佣蜂根据Vij=Xij+ rand(-1,1)(Xij-Xkj)从当前食物源Xi进行领域搜索寻找候补食物源Vi,其中k∈{1,2,…,SN}且kij ∈{1,2,…,D}。比较当前食物源Xi与新食物源Vi的适合度值,根据贪婪原则选择适合度值更高的食物源。

6) 每个食物源的概率计算如下

(4)

跟随蜂根据概率公式对当前食物源进行领域搜索寻找新的食物源,并根据贪婪原则选择适合度更高的食物源。

7) 如果食物源没有更新,则其对应的更新失败次数加1。如果食物源的更新失败次数超过了极限值limit,则雇佣蜂舍弃该食物源,变为侦查蜂。假设舍弃的食物源是Xij ∈{1,2,…,D},侦察蜂根据(5)式寻找新的食物源。

(5)

8) 如果迭代次数大于最大循环次数,则执行9),否则执行5)。

9) 利用最优食物源的解对RNN网络的参数进行初始化,然后开始训练RNN网络。

10) 对测试集进行测试并评估ABC-RNN网络的性能。

2 实验 2.1 实验材料

甜橙(Citrus sinensis(L.)Osbeck)是世界上最受欢迎的水果之一,因其丰富的营养价值和独特的风味而被广大消费者所接受。市面上进口的甜橙主要来自秘鲁、澳洲以及南非等地,这些来自不同国家的甜橙外表相似,但是风味各具特色。市面上经常有非法经营者用国产普通甜橙假冒进口甜橙谋取利润,带来不公平竞争,破坏正常的市场秩序。因此,开发快速可靠的分析方法来识别甜橙的产地十分重要。在不同的时间,分别从合肥苏果超市购入秘鲁、中国四川、澳洲和南非4个不同产地的新鲜甜橙,共计甜橙样本600个。

从合肥苏果超市购入中国江苏、中国贵州和新西兰3个不同产地的猕猴桃,共计样本150个。其中120个样本作为训练集,30个样本作为测试集。

2.2 数据采集

实验开始之前,先预热传感器使其达到稳定状态,然后将甜橙样本放入气室并密封,等待样本气体自然扩散。数据采集单元的采样频率为10 Hz,采样时间为60 s。每次采样结束后,取出甜橙样本,开启气路阀门,进行洗气工作,系统洗气时间为2 min。洗气结束后,关闭阀门,等待传感器达到稳定状态后进行下一组实验。总共对600组样本进行了实验,实验过程中保持环境室温为20~25 ℃,相对湿度为50%~60%。猕猴桃数据采集同此方法。

2.3 数据预处理

由于数据采集单元的采样频率为10 Hz,我们对传感器采集到的每秒10个数据进行平均值处理,以减少数据维数。每个传感器的初始响应不同,我们采用去基线处理的方法对数据进行处理。去基线处理后,每个传感器的响应曲线基准值都变为0。新的相对输出电压Vnew

(6)

式中:VO为原始响应曲线的值,VO (0)为原始响应曲线的基准值。4种不同产地的甜橙样本数据经过预处理后的响应曲线如图 3所示。从图 3中可以看出,整个响应过程中,传感器的响应电压随时间上升,在60 s的时刻大部分响应信号曲线没有达到稳态,仍呈现上升趋势,其中传感器TGS2602、MQ2和MQ3对甜橙样本特征气体的灵敏度较高。这是因为甜橙的挥发性香气物质中含有α-甜橙醛、β-甜橙醛、d-柠檬烯以及酒精气体等等,这些物质构成了甜橙的特殊香气。因此对醛类敏感的TGS2602、对烷烃类敏感的MQ2和对酒精气体敏感的MQ3对甜橙的香气成分具有显著的响应。而由于甜橙香气中几乎不含氢气和一氧化碳,所以TGS821和MQ7对甜橙香气的响应较小。这也与图中的传感器阵列响应曲线一致。

图 3 不同产地甜橙样本的传感器响应曲线 Fig. 3 The orange sample response curves with different geographical origins
3 结果与讨论 3.1 甜橙产地识别

将600个甜橙样本分为两部分:其中500个样本作为训练集,100个样本作为测试集。提取机器嗅觉系统经过预处理后的各个传感器每秒的响应数据作为RNN网络的输入信号,所选择的RNN网络结构为7-20-4,时间序列长度为60。隐藏层的激活函数采用relu函数,输出层激活函数采用softmax函数。ABC算法中的蜂群大小为200,食物源的数量为100,极限值为100,最大循环次数为20。ABC算法重复运行10次,并取其中的最优解作为RNN的参数进行初始化。

在BPTT训练过程中,我们选择ADAM算法[13]作为梯度下降算法。ADAM和传统的随机梯度下降(SGD) [14]不同,SGD保持单一的学习率更新所有的权重,学习率在训练过程中不会改变,而ADAM通过计算梯度的一阶矩估计和二阶矩估计为不同的参数设计独立的自适应性学习率。分别以ADAM和SGD作为RNN训练过程中的梯度下降算法,其损失函数变化曲线如图 4(a)所示。从图 4(a)中可以看出,SGD作为梯度下降算法的损失函数下降速度慢,而且震荡幅度大,需要迭代的次数多,相比而言,ADAM的训练性能更加优异。

图 4 损失函数曲线 Fig. 4 The plot of loss functions

我们同时使用传统RNN网络和LSTM网络对甜橙样本进行训练。ABC-RNN,RNN和LSTM训练过程中的损失函数变化曲线如图 4 (b)所示。从图 4 (b)中可以看出:相较于传统RNN和LSTM网络而言,ABC -RNN的初始损失函数值较低,损失函数变化曲线下降速度更快,变化趋势更为平滑。因此ABC-RNN可以快速达到预期训练效果。表 2~4展示了三种网络在测试集上的甜橙产地分类混淆矩阵。混淆矩阵展示的是一个分类器对于多分类的混淆程度,从混淆矩阵中可以看出,ABC-RNN分类混淆矩阵的正对角线的数字相比于LSTM和传统RNN混淆矩阵的正对角线数字更大,这说明ABC-RNN的分类准确率更高,其中ABC-RNN的分类准确率达到了96%,而LSTM和传统RNN的准确率分别为94%和91%。LSTM和ABC-RNN的识别精度相似,但LSTM的结构更为复杂;而相较于传统RNN而言,ABC-RNN的表现更加优秀。

表2 ABC-RNN分类混淆矩阵 Table 2 Confusion matrix of ABC⁃RNN
实际产地 预测产地
秘鲁 中国四川 澳洲 南非
秘鲁 24 2 0 0
中国四川 1 25 0 0
澳洲 0 0 23 0
南非 0 0 1 24
表3 LSTM分类混淆矩阵 Table 3 Confusion matrix of LSTM
实际产地 预测产地
秘鲁 中国四川 澳洲 南非
秘鲁 23 3 0 0
中国四川 0 25 1 0
澳洲 0 0 23 0
南非 0 0 2 23
表4 RNN分类混淆矩阵 Table 4 Confusion matrix of RNN
实际产地 预测产地
秘鲁 中国四川 澳洲 南非
秘鲁 22 4 0 0
中国四川 0 25 1 0
澳洲 0 0 21 2
南非 0 0 2 23
3.2 与PCA、BPNN、SVM算法比较

为了评估ABC-RNN的性能并验证其在对甜橙产地进行快速识别中的优势,使用PCA、BPNN和SVM算法对甜橙产地进行识别并与ABC-RNN进行比较。

PCA是多变量数据分析中最常用的技术之一。它是将数据集解析为正交分量的数学过程,用于分析大量变量之间的相互关系,并根据较少数量的变量解释这些变量[15]。对于每个传感器响应数据,我们选取前20 s的平均值、40至60 s的平均值、60 s响应值、积分值和平均微分值作为特征值,应用PCA分析这些提取的特征值。PCA分析结果如图 5所示,其中第一主成分PC1的贡献率为88.04%,第二主成分PC2的贡献率为9.14%,累积贡献率达到97.18%。从图 5中可以看出,秘鲁和中国四川产地甜橙数据呈现的分布更加紧凑,澳洲和南非产地的数据相对稀疏,同时各个产地的甜橙数据之间存在许多重叠区域。对于短采样周期数据,PCA算法无法将它们区分开,这也与文献[6]中的结果相符合。

图 5 甜橙产地PCA分析图 Fig. 5 The results of PCA in the orange geographical origin identification

BPNN是一种基于误差反向传播学习的多层前馈神经网络,SVM是一种基于统计学习理论和结构风险最小化原理的机器学习算法,两者通常用于分类和回归应用当中[16, 17]。BPNN和SVM在测试集上的分类混淆矩阵如表 56所示。

表5 BPNN分类混淆矩阵 Table 5 Confusion matrix of ABC-RNN
实际产地 预测产地
秘鲁 中国四川 澳洲 南非
秘鲁 23 3 0 0
中国四川 2 24 0 0
澳洲 0 0 23 0
南非 0 1 3 21
表6 SVM分类混淆矩阵 Table 6 Confusion matrix of SVM
实际产地 预测产地
秘鲁 中国四川 澳洲 南非
秘鲁 22 4 0 0
中国四川 1 24 1 0
澳洲 0 0 22 1
南非 0 1 2 22

表 2表 5表 6中可以看到,对于产自澳洲的甜橙,ABC-RNN和BPNN两种算法的识别率都达到了100%,SVM的识别率达到了95.6%.但对于秘鲁,中国四川和南非三处产地的甜橙,BPNN和SVM的识别率较ABC-RNN要低。实验结果表明,ABC-RNN在短采样周期数据分类应用上的效果更好。

3.3 猕猴桃产地识别

为了研究ABC-RNN算法在其他种类水果产地快速识别方面的泛用性,我们另外对猕猴桃产地快速识别进行了实验。ABC-RNN,BPNN和SVM对猕猴桃产地分类的混淆矩阵如表 7~9所示,三种算法的识别率均达到了100%。由于仅采用了120个训练样本进行训练,结果的可靠性可能较低。但是ABC-RNN的网络结构更加简单,训练速度快,识别率也满足产地识别的需求。这说明ABC-RNN在对猕猴桃产地快速识别方面的表现十分优秀。

表7 ABC-RNN猕猴桃产地分类混淆矩阵 Table 7 Confusion matrix of ABC-RNN in the kiwi fruit geographical origin identification
实际产地 预测产地
中国江苏 中国贵州 新西兰
中国江苏 10 0 0
中国贵州 0 10 0
新西兰 0 0 10
表8 BPNN猕猴桃产地分类混淆矩阵 Table 8 Confusion matrix of BPNN in the kiwi fruit geographical origin identification
实际产地 预测产地
中国江苏 中国贵州 新西兰
中国江苏 10 0 0
中国贵州 0 10 0
新西兰 0 0 10
表9 SVM猕猴桃产地分类混淆矩阵 Table 9 Confusion matrix of SVM in the kiwi fruit geographical origin identification
实际产地 预测产地
中国江苏 中国贵州 新西兰
中国江苏 10 0 0
中国贵州 0 10 0
新西兰 0 0 10
4 结语

本文提出了一种基于人工蜂群算法优化的循环神经网络,用于对水果的产地进行快速识别。实验结果表明,ABC-RNN对60 s短采样周期内的甜橙样本和猕猴桃样本的产地识别都取得了十分优秀的分类结果。这说明该算法可用于对甜橙和猕猴桃的产地进行快速分类,同时也说明该算法在水果产地快速识别的普遍性和泛用性方面具备一定潜力。未来的研究当中,我们将会使用ABC-RNN算法对更加多样化种类的水果产地识别进行研究,同时也会将ABC-RNN与具有更高灵敏度和更高检测精度的气体传感器阵列相结合,以期望能在更短的采样周期内对水果特征气体进行更加多样化的分析。

参考文献
[1]
BALDWIN E A, BAI J, ANNE P, et al. Electronic noses and tongues:Applications for the food and pharmaceutical industries[J]. Sensors, 2011, 11(5): 4744-4766. DOI:10.3390/s110504744
[2]
YU H, WANG J, XIAO H, et al. Quality grade identification of green tea using the eigenvalues of PCA based on the E-nose signals[J]. Sensors and Actuators B:Chemical, 2009, 140(2): 378-382. DOI:10.1016/j.snb.2009.05.008
[3]
PLOTTO A, DUCAMP M N, LEBRUN M, et al. Discrimination of mango fruit maturity by volatiles using the electronic nose and gas chromatography[J]. Postharvest Biology and Technology, 2008, 48(1): 122-131. DOI:10.1016/j.postharvbio.2007.09.010
[4]
BERNA A Z, LAMMERTYN J, SAEVELS S, et al. Electronic nose systems to study shelf life and cultivar effect on tomato aroma profile[J]. Sensors and Actuators B: Chemical, 2004, 97(2-3): 324-333. DOI:10.1016/j.snb.2003.09.020
[5]
BREZMES J, LLOBET E, VILANOVA X, et al. Fruit ripeness monitoring using an electronic nose[J]. Sensors and Actuators B: Chemical, 2000, 69(3): 223-229. DOI:10.1016/s0925-4005(00)00494-9
[6]
SHAO L, WEI L, ZHANG X H, et al. Fabrication of electronic nose system and exploration on its applications in mango fruit(M.indica, cv.Datainong)quality rapid determination[J]. Journal of Food Measurement and Characterization, 2017, 11(1): 1-9. DOI:10.1007/s11694-017-9579-1
[7]
RUBIO J D J. A method with neural networks for the classification of fruits and vegetables[J]. Soft Computing, 2016, 21(23): 1-14. DOI:10.1007/s00500-016-2263-2
[8]
MA Y Y, GUO B L, WEI Y M, et al. The feasibility and stability of distinguishing the Kiwi Fruit geographical origin based on electronic nose analysis[J]. Food Science and Technology Research, 2014, 20(6): 1173-1181. DOI:10.3136/fstr.20.1173
[9]
HUSKEN M, STAGGE P. Recurrent neural networks for time series classification[J]. Neurocomputing, 2003, 50: 223-235. DOI:10.1016/s0925-2312(01)00706-8
[10]
李洁, 林永峰. 基于多时间尺度RNN的时序数据预测[J]. 计算机应用与软件, 2018, 35(7): 33-37.
LI J, LIN Y F. Prediction of time series data based on multi-time scale RNN[J]. Computer Applications and Software, 2018, 35(7): 33-37. DOI:10.3969/j.issn.1000-386x.2018.07.006 (Ch).
[11]
KARABOGA D, BASTURK B. On the performance of artificial bee colony (ABC) algorithm[J]. Applied Soft Computing, 2008, 8(2): 687-697. DOI:10.1016/j.asoc.2007.05.007
[12]
KARABOGA D, AKAY B. A comparative study of artificial bee colony algorithm[J]. Applied Mathematics and Computation, 2009, 214(1): 108-132. DOI:10.1016/j.amc.2009.03.090
[13]
KINGMA D P, BA J.ADAM: A method for stochastic optimization[DB/OL].[2018-07-20].https://arxiv.org/pdf/1412.6980.pdf.
[14]
ZHANG T.Solving large scale linear prediction problems using stochastic gradient descent algorithms[C] //Proceedings of the 21st International Conference on Machine Learning.New York: ACM, 2004: 116.
[15]
BREZMES J, FERRERAS B, LLOBET E, et al. Neural network based electronic nose for the classification of aromatic species[J]. Analytica Chimica Acta, 1997, 348(1-3): 503-509. DOI:10.1016/S0003-2670(97)00202-X
[16]
JIN C, JIN S W, QIN L N. Attribute selection method based on a hybrid BPNN and PSO algorithms[J]. Applied Soft Computing, 2012, 12(8): 2147-2155. DOI:10.1016/j.asoc.2012.03.015
[17]
HE C, XING J C, ZHU R D, et al.A new model for software defect prediction using particle swarm optimization and support vector machine[C] // 2013 25th Chinese Control and Decision Conference(CCDC)——Control and Decision Conference.Washington D C: IEEE, 2013: 4106-4110.DOI: 10.1109/CCDC.2013.6561670.