自适应概率神经网络及其在白酒电子鼻中的应用
2013-09-24周红标张宇林丁友威刘佳佳
周红标,张宇林,丁友威,刘佳佳
(1.淮阴工学院 电子与电气工程学院,江苏 淮安 223003;2.南京师范大学电气与自动化工程学院,江苏南京 210042)
白酒电子鼻最主要的应用场合是对白酒生产过程进行质量监控,以保证白酒的品质[1],其核心要求就是要实现基于计算机技术的白酒品质智能鉴别.目前,白酒品质识别主要是使用电子鼻对不同品牌、不同酒精度和不同香型的白酒进行识别[2-3],期望能够通过气味数据的处理将它们区分开来.传感器所测量的信号与被测量的气体之间并没有直接对应关系,因而需要通过模式识别算法对其进行处理.
目前,电子鼻数据分析中的模式识别算法主要有 k-近邻法(k-nearest neighbor,k-NN)、聚类分析(clustering analysis,CA)、判别分析(discriminant analysis,DA)、主成分分析(principal component analysis,PCA)、反传人工神经网络(back-propagation artificial neural network,BP-ANN)、概率神经网络(probabilistic neural network,PNN)、学习向量量化(learning vector quantization,LVQ)、自组织映射(self-organizing maps,SOM)和支持向量机[4](support vector machine,SVM)等.上述模式识别算法按输入输出之间的关系可分为线性算法和非线性算法2类.线性算法只能实现输入到输出的线性映射,它们都是基于统计理论而发展起来的.非线性算法,顾名思义,可实现输入到输出的非线性映射,与神经网络理论有关,由于这类算法能实现更复杂的映射关系,所以通常其识别效果要优于线性算法[5].
本文提出的自适应概率神经网络电子鼻白酒识别模型的主要步骤是:首先求取传感器阵列的稳态响应值、响应阶段斜率、恢复阶段斜率及温湿度值作为原始特征向量;然后利用主成分分析法对输入量进行降维,获取2个主元作为识别模型的输入;再进一步利用遗传算法和粒子群算法优化概率神经网络的σ参数集;最后运用优化的自适应概率神经网络进行白酒品牌的鉴别.本文以不同品牌、不同酒精度的4种白酒电子鼻气味数据为样本,进行电子鼻的模式识别算法研究.
1 自适应概率神经网络
1.1 概率神经网络
概率神经网络(probabilistic neural network,PNN)是一种前馈型神经网络,是D.F.Specht博士于1989年根据贝叶斯决策理论(即贝叶斯最小风险准则)首先提出的[6].PNN由输入层、模式层、求和层和输出层组成,如图1所示.
图1 PNN拓朴结构Fig.1 The topology of PNN
各层的功能如下[7-8]:
1)输入层:输入样本为
式中:XIi和 YIi分别为输入层第i(i=1,2,…,d)个神经元的输入和输出.
2)模式层:XPj=YIj,j=1,2,…,d,第 i类模式的第j个模式层神经元所确定的输入输出关系定义为
4)输出层:XEi=YTi,由基于最小误分率的贝叶斯决策规则可知
式中:XEi和YE分别为输出层神经元的输入和输出,YE为样本的类别号.
1.2 自适应概率神经网络
模式层中采用径向基函数作为输入输出的传递函数,平滑因子σ决定了高斯曲线的宽度,由于在传统的概率神经网络中其值固定不变,影响了网络识别性能[9].因此,采用自适应的平滑参数将能提升网络的性能[10].即式(1)变为
差异演化算法(DE)与遗传算法(GA)、粒子群算法(PSO)一样,都是一种优化算法,不同的是DE是基于群体差异的演化算法,具有稳定性高、算法简单、收敛速度快的优点,能克服GA、PSO等优化算法的早熟现象[11].利用差异演化算法对径向基传递函数进行优化的主要步骤如下:
1)种群初始化在D维空间随机产生Np个个体
式中:rand(0,1)是[0,1]上服从均匀分布的随机数.
3)交叉操作.其主要是用来增加种群的多样性.其对变异后的扰动量和父代个体按式(2)进行交叉.
式中:CR为交叉概率,rand(i)是[1,D]之间随机整数.
4)选择操作.对新矢量和预定矢量进行比较选择
反复执行2)~4),直至满足最大进化代数或预先设定的收敛精度.
2 实验数据获取
2.1 实验系统及方案
课题组以STM32为核心处理器,将Zigbee无线通讯和虚拟仪器等技术融为一体,设计了无线白酒电子鼻.硬件电路主要实现信号采集、信号调理、A/D转换、无线通信、数据传输、人机对话等功能,主要包括气敏传感器阵列(TGS2600、TGS2602、TGS2610、TGS2611、TGS2620)、AM2302 温湿度传感器模块、信号调理模块、STM32F103控制器模块、电源模块、键盘模块、液晶显示模块、CC2430Zigbee无线通信模块、RS232转USB通讯模块等.在上位机采用虚拟仪器软件Labview设计一套能对数据进行实时显示、存储、回放和分析等操作的平台.算法采用数据处理能力更强的Matlab平台实现,并通过ActiveX技术将预处理、特征提取和模式识别算法集成到Labview当中.硬件实物图如图2所示.
图2 电子鼻硬件实物Fig.2 The diagram of electronic nose hardware
在超市购置了洋河海之蓝42 480 mL、牛栏山陈酿36°400 mL、今世缘省接待40°500 mL和安徽迎驾大曲45°500 mL共4种不同酒精度不同品牌的白酒作为实验样品.实验时,每次准确取量样本2 mL,注入样本池中.每个样本的检测时间为60 s,为了消除测量数据的漂移现象,每次检测前后,传感器阵列都需要清洗和标准化(即加热处理),时间不少于100 s,这将能有效保证测量数据的准确性和稳定性.每种样品重复检测20次,4种不同白酒总计得80个样本,建立一个小型的白酒气味指纹图谱库.图3所示为洋河海之蓝的传感器阵列信号响应强度图(取自编号haizhilan_6),其中横坐标是数据采集点数(3 000点,180 s),纵坐标是响应强度,每条曲线代表一个传感器在采样时间内的响应值变化,5个传感器共有5条响应曲线,此外还有温湿度传感器显示当前的温度值和湿度值.数据采集过程中由于仪器的影响(电子鼻与上位机采用一问一答的Modbus通信协议,采样点间隔60 ms),曲线有抖动,不光滑,故需要进行平滑处理.本文采用移动平均法对信号进行平滑处理,处理后的信号如图4所示,平滑滤波后的曲线光滑、干净,消除了锯齿状的失真,便于进一步的特征提取.
图3 传感器阵列信号响应强度Fig.3 Signal response intensity of sensor array
图4 数据平滑后信号响应强度Fig.4 Signal response intensity after smoothing
2.2 气味数据特征提取
目前电子鼻中使用的数据特征提取方法主要有稳态响应值、响应和恢复阶段的斜率、对数法、一阶差分法、二阶差分法等.目前大都数都只采用稳态响应值.本文在选择稳态响应值的基础上,还计算出响应阶段和恢复阶段的斜率作为特征值,其计算公式如下:
式中:kx和kh分别是响应阶段斜率和恢复阶段斜率,(ax,bx)和(xx,yx)分别是曲线响应阶段起始点和响应稳定点,(xh,yh)和(ah,bh)分别是曲线恢复阶段稳定点和恢复阶段起始点.可通过time=(180 s/3 000)×dianshu公式将点数转换成时间.斜率计算中各点坐标采用差值法自动获取.稳态响应值及斜率特征自动计算示意图如图5所示.
图5 稳态响应值及斜率特征值提取Fig.5 The steady state response values and feature extraction of gradient
从图5可以发现,由于横、纵坐标的不对应,斜率值很小,比如 kx=0.072 4与 wx=3.106 9相差40多倍;如果不对其进行处理,直接将它们作为识别模型的输入数据,必定影响识别结果的准确性.因此,对斜率值扩大100倍,并将负值取正,如:0.072 4调整后为7.24,-0.028 1调整后为2.81.
此外,系统显示的温湿度值数值较大.如H_1样本分别为24.4℃和71.6RH,与稳态值和处理后的斜率值不匹配,因此,对它们进行单独归一化处理.对80个样本数据采取前述的预处理和特征提取方法进行处理,每个样本获得5个稳态响应值、10个斜率值、2个温湿度数值,总共形成17个输入参量.从4种白酒中每种随机选择2个样本,每个样本列出阵列中某一个传感器的稳态值、响应阶段斜率和恢复阶段斜率及温湿度共5个数据,如表1所示(H_编号代表海之蓝、N_编号代表牛栏山、S_编号代表省接待、Y_编号代表迎驾,为了显示的直观性,表1数据未处理,均为原始数据).
2.3 气味数据主成分分析
17个输入量之间存在一定的相关性,可以利用主成分分析实现降维,即通过对数目较多的特征向量进行变换得到数目较少的新变量,新变量能最大限度地表征原变量的数据信息,是原变量的线性组合.从每种白酒中随机选择5个样本组成20组样本进行主成分分析,样本前2个主成分得分图如图6所示,前5个主成分的贡献率分别为70.73%、12.39%、8.23%、6.76% 和 1.04%,累计贡献率为70.73%、83.12%、91.35%、98.11%和 99.15%.
图6 PC1和PC2主成分得分Fig.6 The chart of principal component score
由图6可见,前2个主成分累计贡献率达83.12%,已能达到分类要求.而这之后,随着主成分数量的增加,累计贡献率增加相当缓慢,所以每个白酒样本的电子鼻气味数据可以用前2个主成分代替.
3 实验结果分析
在建立识别模型之前,首先给特征数据集中的每个样本附上标签,其中海之蓝定义为1号标签,牛栏山陈酿定义为2号标签,省接待定义为3号标签,迎驾大曲定义为4号标签.从白酒气味指纹图谱库中随机选择40个作为训练集,剩余40个作为测试集,先进行PCA处理,然后将每个样本的前2个主成分得分输入到DE-PNN模型进行识别,识别结果如表2所示.
表2 DE-PNN识别结果Table 2 The recognition results of DE-PNN
从表2可见,DE-PNN识别算法的总体敏感度和特异度分别为87.5%和92.1%,证实了模型具有较好的分类性能.径向基函数的扩展速度SPREAD对网络有影响,当SPREAD在0.002~0.007之间取值时,模型的分类和泛化能力较好.
表2只是一次随机性的测试,可能存在误差.为了全面评价分类器的性能,本文采取了留一交叉验证法(leave-one-out cross-validation,LOOCV).该方法能够弥补样本不足的缺陷,其原理是:每次从样本集中随机抽取1个作为测试样本,剩余的n-1个作为训练样本;然后,再轮流提取另一个样本,直到所有样本都轮完,最终由准确分类的样本与样本总数之比来决定分类器的分类准确率.表3给出了在不同的分类方法下,全部80个样本采用LOOCV进行验证对应的识别结果.
表3 各种分类方法的识别结果Table 3 The recognition results of different methods
从表3可以看出,3种PNN算法的留一交叉分类准确率要远高于BP和RBF神经网络;参数集经过DE优化后的PNN识别模型得到的准确率最高(训练集为100%、测试集为97.5%),优于PSO、GA优化的和未经优化的PNN;未经优化的PNN耗时较短,远低于BP,能够满足在线分析的要求,但由于优化算法寻求过程复杂,GA-PNN和PSO-PNN耗时较长;本文还对SVM模型进行测试,发现其在白酒识别中的效果并不理想(经过简单分析,可能的原因是SVM需要整体归一化,而本文数据集特征值采取的是分属性归一化).
4 结束语
电子鼻技术融合了传感器技术、嵌入式技术、信息处理技术和模式识别技术等,目前在农学、工学、医学和生物学等多个领域都有着广泛应用.利用电子鼻技术识别白酒种类、检测白酒品质、监控白酒生产质量是目前研究的主要方向,本文正是针对白酒分类提出一种基于APNN的识别模型,其利用DE、GA、PSO优化PNN的σ参数集.实验结果表明,与其他神经网络以及未优化的PNN相比,基于DEPNN的方法具有较好的分类效果和较快的收敛速度.
[1]杨国强,张淑娟.电子鼻技术在酒类识别应用中的研究进展[J].山西农业大学学报:自然科学版,2010,30(1):92-96.
YANG Guoqiang,ZHANG Shujuan.Development of the electronic nose technology on the identification of spirit[J].Journal of Shanxi Agric ultural University:Natural Science Edition,2010,30(1):92-96.
[2]YU Huichun,WANG Jun.Discrimination of longjing greentea grade by electronic nose[J].Sensors and Actuators B,2007,122:134-140.
[3]ALEIXANDRE M,LOZANO J,GUITERREZ J,et al.Portable e-nose to classify different kinds of wine[J].Sensors and Actuators B,2008,131:71-76.
[4]刘红秀,李洪波,李卫东,等.基于电子鼻的鱼类新鲜度估计研究[J].中山大学学报:自然科学版,2010,49(2):28-30.
LIU Hongxiu,LI Hongbo,LI Weidong,et al.Research on the fish freshness assessment based on electronic nose[J].Acta Scientiarum Natralium Universitatis Sunyatseni,2010,49(2):28-30.
[5]李纯,卢志茂,杨朋.基于快速谱聚类的图像分割算法[J].应用科技 ,2012,39(2):26-30.
LI Chun,LU Zhimao,YANG Peng.Image segmentation based on fast spectral clustering algorithm[J].Applied Science and Technology,2012,39(2):26-30.
[6]姬东朝,宋笔锋,易华辉.基于概率神经网络的设备故障诊断及仿真分析[J].火力与指挥控制,2009,34(1):82-85.
JI Dongchao,SONG Bifeng,YI Huahui.Equipment fault diagnosis based on probabilistic neural networks and simulation analysis[J].Fire Control and Command Control,2009,34(1):82-85.
[7]明利特,蒋芸,王勇,等.基于邻域粗糙集和概率神经网络集成的基因表达谱分类方法[J].计算机应用研究,2011,28(12):4440-4444.
MING Lite,JIANG Yun,WANG Yong,et al.Gene expression profiles classification method based on neighborhood rough set and probabilistic neural networks ensemble[J].Application Research of Computers,2011,28(12):4440-4444.
[8]KIM D,KIM D H,CHANG S.Application of probabilistic neural network to design breakwater armor blocks[J].O-cean Engineering,2008,35:294-300.
[9]严文娟,林凌,赵静.概率神经网络用于舌诊的近红外光谱分类[J].激光与红外,2010,40(11):1201-1204.
YAN Wenjuan,LIN Ling,ZHAO Jing.Probability neural network for the classification of tongue diagnosis by near infrared spectroscopy[J].Laser and Infrared,2010,40(11):1201-1204.
[10]李鹏,王乐新,赵志敏.基于概率神经网络的荧光光谱法识别高甘油三脂血清[J].发光学报,2011,32(11):1192-1196.
LI Peng,WANG Lexin,ZHAO Zhimin.Hypertriglyceridemia serum recognition using fluorescence spectroscopic analysis based on probabilistic neural networks[J].Chinese Journal of Luminescence,2011,32(11):1192-1196.
[11]卢青波,张学良,温淑花,等.差异演化算法改进与应用[J].农业机械学报,2010,41(2):193-197.
LU Qingbo,ZHANG Xueliang,WEN Shuhua,et al.Modified differential evolution and its application[J].Transactions of the Chinese Society for Agricultural Machinery,2010,41(2):193-197.
[12]蒋鼎国,周红标,耿忠华.基于PSO-SVM的白酒品质鉴别电子鼻[J].中国酿造,2011(11):149-152.
JIANG Dingguo,ZHOU Hongbiao,GENG Zhonghua.Liquor recognition electronic nose based on PSO-SVM[J].China Brewing,2011(11):149-152.