蔡 强, 王君君, 李海生, 毛典辉
(北京工商大学计算机与信息工程学院,北京 100048)
基于神经网络的食品安全评价模型构建研究
蔡 强, 王君君, 李海生, 毛典辉
(北京工商大学计算机与信息工程学院,北京 100048)
食品安全评价模型的准确度高低,直接影响食品安全状况评价、预测的准确率.结合危害分析与关键控制点的(HACCP)食品安全管理体系理论,从食品供应链的角度出发,建立食品安全评价指标体系;使用层次分析法(AHP)改进逆向传播(BP)神经网络算法中随机初始化计算权重的方法,训练样本数据,并以测试数据作为验证,检测模型的误差收敛速度和拟合度.结果表明,这种BP神经网络结合AHP方法构建的模型具有实用、精度高、快速、客观等优点,可用于生产、加工、销售等流通环节食品安全评价、区域食品安全评价以及种类食品安全评价.
食品安全;神经网络;权重计算;评价模型
近年来,食品安全事件频发,食品安全状况成为人们最关心的话题.食品安全评价体系作为食品安全研究的重要内容,国内外研究者从食品安全管理技术角度、地域性食品安全评价、消费者行为食品安全评价等方面已经做了大量工作[1-2].评价方法主要依据食品安全分类、德尔菲、模糊聚类等技术,但是这些评价方法难以客观、全面、统一估价食品安全状况.本文将基于神经网络,结合危害分析与关键控制点(hazard analysis critical control point,HACCP)的食品安全管理体系理论,以食品供应链为主线,贯穿食品质量安全,最终建立食品安全评价体系指标及模型,旨在准确测出食品安全状况,为食品安全预测预警提供有效依据.食品安全风险因素,从食品供应链角度划分,主要包含生产、加工、贮藏、流通、消费等各个环节[3],这些环节决定了评价指标的设计主线.
食品安全包括食品数量安全、质量安全、可持续安全,同时食品质量安全、可持续安全是食品安全的最终目标.如果没有质量安全,数量安全亦是无效,可持续安全更无法保障[4].并且由于自然、经济、社会等各种复杂因素互相作用,致使食品安全呈动态的、不确定的变化,风险因素和风险程度不尽相同.食品安全内容和目标的差异化,导致食品安全评价指标建立的难度增加[5],食品安全影响因素呈定量、定性交错变化.
1.1 食品安全评价方法
从食品安全评价涉及的领域角度分析[6],食品安全评价方法主要分为模型分析法、指数分析法、危害分析法以及检测分析法几类.
1)模型分析法.主要运用统计、计量等方法建立数学模型,模拟数据并做出评价.如神经网络、贝叶斯网络、模糊聚类等,根据模型相关算法,调整函数以及参数,其特点是将数据转化为概率发生大小的问题.
2)指数分析法.确定影响食品安全状况的影响因子,筛选出能够评价食品安全状况的指标,建立综合评价指标模型,对所需问题评价.关键步骤是合理分析指标并进行分类,建立指数同时确定可信权数.但是建立模型的指数方法大多为线性,对复杂问题的不确定性难以解释,具有片面性.
3)危害分析法.主要运用HACCP控制理论对食品生产全过程进行危害点分析,查找关键控制点,降低危害因素影响度,并采取应急措施.HACCP最早是在20世纪50年代末,由美国航空航天局与美国皮尔斯伯利公司建立,因为此体系简便、实用、科学,已经被世界各国广泛采用,关键之处是识别食品危害点,因此HACCP必须建立在食品安全项目的基础之上运行[6].
1.2 食品安全评价指标体系建立
食品安全综合评价指标具有明显层次结构,借鉴国内外食品安全研究现状、食品安全与食品供应链关系的相关文献[3,7-8],确定从食品供应链的角度建立评价指标体系,如表1.目标层E代表区域型食品安全状况、环节食品安全状况或者种类食品安全的水平状况,作为衡量食品安全的综合水平指标;准则层/一级评价指标Ek,使用HACCP控制理论,从原产地到餐桌的基于供应链的关键控制点排序建立[9];基础指标Eij依据隶属于上层指标的环境、化学污染、农药残留、细菌残留、重金属残留以及监测部门安全管理水平等[4],最能直接表现食品安全问题的影响因子建立.
表1 食品安全评价指标体系Tab.1 Evaluation index of food safety
在训练神经网络,输入变量之前,网络权重阑值必须初始化,当使用MATLAB神经网络工具nntool工具箱中newff函数建立网络net时,网络自动初始化权值和阑值.初始化过程中,通过设置net.initFcn来初始化方法参数.这里我们对初始化过程加以改进,摒弃了Nguyen-Widrow算法随机初始化权值和阑值的不客观、不准确性以及因相关性较大易导致网络学习中互相干扰的不足,采用指标权重确定方法[10],层次分析法(analytic hierarchy process,AHP)[11]计算食品安全评价指标权重.
2.1 成对比较矩阵建立
AHP是一种定量与定性相结合的、系统化的、层次化的分析方法,由Saaty[12]于20世纪70年代初期提出.此方法通过对系统多个因素的分析,划出各影响因子之间的层次排序;再根据层内各因子的相对重要性程度,量化表示;然后建立数学模型,计算出每层各个因素的相对重要性权值.对于权值计算,我们首先要建立成对比较矩阵,确定下层各元素指标相对上层指标的重要性程度,应用权重量化指标的比重.现假设有n(n>0)个指标元素,且用E= (eij)n×n表示成对比较矩阵,使用eij描述第i个元素与第j个元素相对上一层父亲元素的重要性,构造矩阵E.
式(1)中,1≤eij≤9,eii=1,eji=1/eij,根据标度尺[13],计算出矩阵中各元素相对上层元素的重要程度向量,即完成对权重计算,这里采用根式计算方法:
2.2 一致性检验及权重计算
使用AHP方法计算出等价矩阵权重W之后;根据数理统计理论,对成对可比较矩阵进行一致性检验,以确定AHP方法设计的合理性,一致性检验指标PCI
式(3)中λmax为矩阵最大特征值的近似值,N为评价指标个数,计算出PCI值,然后使用
进行一致性检验(其中,ε为满足一致性要求所允许的最大值,一般根据具体情况来确定,k为迭代次数),若满足检验要求,计算停止,w(k)即为所求权重;否则根据修正判断系数,直到权重计算完成,停止.
经过统计分析,观察指标对应数据样本值发现,食品安全在不同时期存在不同问题.各种指标受到环境、经济、农业状况以及社会等各种不确定因素影响.指标值的变化映射了不同时期、不同地点食品安全的综合状况.此外食品安全的评价评估能为食品安全管理部门提供决策性的依据,具有重要意义.目前国内外对于安全评价的研究,在统计方法运用方面主要有单变量分析法,多元判别分析法,Logistic回归模型以及类神经网络模型.对于模型的设计,我们应用当前比较流行的计算软件MATLAB中的神经网络工具箱作为实现平台,建立基于BP神经网络的食品安全评价模型,并测试验证准确率.
3.1 网络输入输出确定
BP网络作为有监督学习算法,训练过程首要步骤即是确定输入向量和期望响应.食品安全评价模型输入向量即食品安全评价指标,期望响应即食品安全状况评价预测结果;必要条件即样本量充足,样本数据来自历年中国统计年鉴(2007—2009),以及食品监督检验部门日常检测数据,具有一定可靠性和权威性.训练过程通过提供的输入向量和期望响应,对网络的权值和偏差进行调整,最终实现期望效果.在训练样本与测试样本选取的时候,要避免过拟合.过拟合是指当模型输入分别为训练样本和测试样本时,准确率不一致甚至偏差严重的现象.例如,在训练样本作为输入,模型取得较高的准确率时,会出现测试样本作为输入,准确率较低的现象[14].为解决此问题本文在考虑样本模式平衡的前提下,将样本数据采用随机分配法按比例分为训练、测试样本.其中,训练样本的输入向量和目标期望响应值,作为模型构建中的训练部分;测试的样本输入向量和目标期望响应,作为模型的评价与验证.
3.2 网络结构设计
BP神经网络结构通常具有数据输入层,一个或多个sigmoid隐层以及输出层.结构的核心设计部分是在训练过程中网络权值和偏差调整时,梯度向量的选择以及梯度方向的选择[15].标准BP算法是一种简单的快速下降静态寻优算法.梯度下降法在调整权值修正第任意K次权值迭代误差时,仅仅按照当前时刻的负梯度方向进行调整,并未考虑已运算各步骤中的梯度方向,因此迭代过程受新样本影响过大,通常导致训练过程的调整方向不均衡震荡、收敛速度慢以及预测精度较低等问题[16].为了解决此问题,我们采用BP神经网络训练,动量梯度下降法作为基本训练算法,并改进初始化网络中权重参数选择方法,建立改进型的BP神经网络评价预测模型.
经过对单隐层与双隐层的神经网络评价模型的评价结果的对比发现双隐层训练次数与误差相对较低(见表2).因此设计采用一个输入层、两个隐含层和一个输出层的3个神经元层的BP神经网络结构.
表2 网络结构比较Tab.2 Network structure comparison
1)输入层节点.输入层即样本数据导入,作为网络结构的输入变量,相当于一个待分析的样本数据库.节点个数根据影响因子确定.对于食品安全状况等级判断有显著影响的指标如表1,共有21个,决定了输入节点的输入变量共21个,并依据产品类型浮动调整输入变量个数.
2)输出层节点.输出层即食品安全状况等级的数据表示,本论文参照五点尺度量评定法(five-point rating scale),采取“利克特量表”(likert scale)[3],构建食品安全状况等级的数据表.具体情况见食品安全等级划分表(表3).
表3 食品安全等级划分Tab.3 Food safety hierarchy
3)传递函数.隐含层的传递函数为log-sigmoid型函数logsig,因为网络输出的值域限制在[0,1],故输出层也采用S型的sigmoid函数,输出[0,1]间的连续值,输出值按照表3归类判断.输出值在[0,0.2],说明食品安全状况良好;在[0.2,0.5],说明食品安全受到影响;在[0.5,1],说明食品安全受到威胁.
BP神经网络又称为误差反向传播(back propagation)神经网络,误差与信号反向传播.误差从后向传播,反向传播过程中,逐层修改权值和偏差.反向传播和误差调整过程依次为隐层与输出层之间、隐层与隐层之间以及输入层与隐层之间的权值调整3个步骤.其中BP迭代计算公式可以表示为:
式(5)中,Xk,X(k+1)分别表示当次以及下次迭代产生的权值与偏差,ak表示当前误差函数梯度,gk表示学习效率.
对公式(5)衍生得到动量梯度下降算法权值迭代公式:
式(6)中,Dk,D(k-1)分别表示k和k-1时刻的负梯度,η表示学习步长,α表示负梯度的权重参数.
因为,BP算法中权值调整量和输出的关系与期望响应的误差能量对权值的偏导,大小成正比关系,符号反向.因此通过计算权值偏导,将传递函数,局部梯度值代入公式(6)即可计算出权值调整量和输出的关系,分别迭代实现隐层与输出层之间、隐层与隐层之间以及输入层与隐层之间的权值调整,当达到预期误差水准,误差曲线平稳收敛时停止,迭代结束.
依据食品安全综合评价指标的建立以及评价模型的设计,对原始样本数据报表进行量化处理,计算指标值以及确定指标权重.并对数据源做简单处理,略去被检验单位、厂家等复合属性以及形状、色泽等与食品安全关系并不密切的属性,部分样本数据如表4.
表4 食品安全监测数据Tab.4 Food safety inspection data report
表4中日常检测数据按指标类型划分,主要分为重金属污染、农药残留、化学残留、微生物污染等危害食品安全的因素,以及标签完善度检验、形状、色泽等感官检验.因此按检验项目类型从影响食品安全的因素对样本集简化,结合年鉴统计数据归类成指标数据,并依据2.1小节中层次分析法理论计算指标权重,首先确定各个一级评价指标E1,E2,E3,E4,E5,E6对目标层综合评价指标E的重要程度关系,根据式(1)建立一级指标的6-6成对比较矩阵,元素值用eij描述,表示指标Ei与Ej相对上层指标的重要性,例如矩阵中指标E1和E2,E1和E3与E4和E5的比较关系:e12=E1∶E2=1/2,e13=E1∶E3= 3,e45=E4∶E5=2/6.同理分别计算出矩阵中主对角线上侧各个元素值eij,对于主对角线下侧部分利用eij=1/eji计算得出,主对角线元素的物理意义指自身相对自身的重要程度,因此确定为1.矩阵元素确定后,根据公式(2)分别计算对应权值,并得出一级评价指标层 Ei的权向量,权向量用 W(1)表示,表示一级指标层Ei相对目标层E的权重,r=1,2,…6.同理得出二级评价指标层相对一级评价指标层的权重,例如第一环节,原产地环境指数的权重,表示第一环节中二级指标相对一级指标的权重,m=1,2,3.同理得出后续环节权重值,然后按照一致性检验章节公式(3)和(4)进行一致性检验,获得食品安全评价指标体系权值.按照以上方法计算得出指标体系权重值的结果,如表5.
从表5可以看出,食品安全供应链上,生产、加工、销售、贮藏环节中的农药残留、重金属残留、微生物污染、化学污染等对食品安全影响占较大比重,并且很大程度上受环境卫生的影响,不同维度,构成不同的指标影响度.我们对基于AHP的权重计算方法与Nguyen-Widrow算法对网络权值初始化对比发现,如图1,两次构建网络时,初始化指标输入层的权重分布图,利用Nguyen-Widrow算法计算所得权值,虽基本覆盖了整个样本输入空间,但权值分布比较分散,并没有呈现各指标的重要性程度关系.而采用的AHP权重计算方法如图2,利用定量与定性结合的层次分析优势,比较客观地,根据各环节指标的影响度大小得出相应权值,权值围绕上层指标规则排列.网络初始化后,对神经网络模型进行训练,用sim()函数仿真,最后验证测试评价结果,分析训练结果.
表5 食品安全评价指标权重值Tab.5 Weight of food safety evaluation index
图1 Nguyen-Widrow初始化网络的权重分布Fig.1 Initializing weights of network distribution by Nguyem-Widrow algorithm
图2 AHP初始化网络的权重分布Fig.2 Initializing weights of network distribution by AHP
图3和图4中使用MATLAB 7.0神经网络工具箱,动量梯度下降反向传播算法中的训练函数实现,其中纵坐标均为参数的误差级别,横坐标表示训练过程中向前迭代的n次迭代步数;曲线描述误差性能走势,直线为期望误差目标;训练过程采用同样的样本训练集与测试集,不同的是图3中采用BP神经网络默认初始化算法Nguyen-Widrow,未改进网络模型的初始化权重值.此外,从图3中可观察得出曲线在达到最大步长时,仍未达到目标期望误差.而本文通过AHP改进的神经网络模型权值初始化方法设计的神经网络模型如图4,使用AHP初始化权重后,在将近100迭代步时已经以1/2的速率快速接近,按照预期误差水准1e-4经过350次左右迭代,达到了期望的误差目标.
图3 原始的带动量梯度下降算法的BP网络误差性能变化Fig.3 Original traingdm algorithm of BP network deviation performance
图4 改进后带动量梯度下降算法的BP网络误差性能变化Fig.4 Improved traingdm algorithm of BP network deviation performance
食品的安全状况因为受到自然环境、加工卫生环境、农业以及检测检验值的准确性等多重影响,安全评价的结果往往与预想的结果差距较大,利用改进的神经网络进行信息处理,并对食品安全状况评价、评估是本课题研究的重要内容.本文运用层次分析法对指标数据的权重进行预处理优化,大大减少了建模过程的计算时间以及误差偏移量,提高了评价结果的准确率.
结合基于供应链的种类食品安全评价体系,通过改进型神经网络构建了食品安全评价预测模型,实验结果表明评价的准确率达到了预期目标,方案是可行的,解决了传统评价模型过度依赖主观性、自学习能力差等缺点,充分利用了神经网络推广性、容错性强等优点,有效地提高了食品安全评价的准确性.但是,测试样本集与训练样本集的选择、信息的完善度对评价模型建模结果的影响有待进一步探讨研究.
[1] Gorris LG M.Food safety objective:an integral part of food chainmanagement[J].Food Control,2005,16:801 -809.
[2] Karl Ropkins,Beck A J.Evaluation ofworldwide approaches to the use of HACCP to control food safety[J]. Trends in Food Science&Technology,2000(11):10-21.
[3] 肖静.基于供应链的食品安全保障研究[D].长春:吉林大学,2009.
[4] 肖玫,袁界平,陈连勇.食品安全的影响因素与保障措施探讨[J].农业工程学报,2007,23(2):286-289.
[5] 陈辉.食品安全概论[M].北京:中国轻工业出版社,2011:35-199.
[6] 都伟东,石玉月,田巍.国内外食品安全评价综述[J].食品工程,2007(2):3-5.
[7] Zhu Ming,Liu Hengjiang.Study on evaluation index model and hierarchicalmanagementof food safety[R].Shanghai:ShanghaiMunicipal Bureau of Quality and Technical Supervision,2009.
[8] 张庆英,马枫,范海芹,等.基于J2EE和XML的食品安全数据系统设计[J].东南大学学报:自然科学版,2007(Z2):431-433.
[9] 毛薇,张慧,崔剑,等.基于供应链的食品安全评价指标体系构建的研究——以浙江省为例:中国,2010C35046[P].2012-06-14.
[10] 刘砖勋.食品安全综合评价指标体系的灰关联分析[J].华北水利水电学院学报,2007,28(4):100-103.
[11] Zhang Yan,Zhang Hong,Gao Xiang,et al.Improved AHPmethod and its appliacation in lake environmental comprehensive quality evaluation—a case study of Xuanwu Lake,Nanjing,China[J].Chinese Journal of Oceanology and Limnology,2007,25(4):427-433.
[12] Saaty T L.A scalingmethod for priorities in hierarchical structures[J].JMath&Psych.,1977,15(3):234-281.
[13] He Yong,Ge Xiaofeng,Chen Lineng,et al.Improved AHPmethod and itsapplication in the evaluation of agriculturalmechanization[J].Journal of Systems Science and Systems Engineering,2001,10(4):403-408.
[14] 杨月华,杜军平.基于神经网络的旅游突发事件预警研究[J].北京工商大学学报:自然科学版,2008,26 (2):63-66.
[15] 党香俊,姜同敏.基于相关分析和组合神经网络的退化预测[J].北京航空航天大学学报,2013,39(1):43-46.
[16] 章德宾,徐家鹏,许建军,等.基于监测数据和BP神经网络的食品安全预警模型[J].农业工程学报,2010,26(1):221-226.
Research on Establishment of Food Safety Evaluation M odel Based on Neural Network
CAIQiang, WANG Jun-jun, LIHai-sheng, MAO Dian-hui
(School of Computer Science and Information Engineering,Beijing Technology and Business University,Beijing 100048,China)
The accuracy of the food safety evaluation model directly influences the accuracy of food safety situation assessment and forecast.Based on the hazard analysis critical control point theory(HACCP),a food safety evaluation index system was established from the perspective of the food supply chain.In order to detect the convergence speed and fitting degree of the model’s deviation,the analytic hierarchy processwas utilized to improve the random initialization calculating weightmethod in the backward propagation neural network algorithm.Meanwhile,the sample data were trained and the test data were validated.The results showed that the BP neural network combined with AHP was high-precision,fast,and objective,which could be used to food safety evaluation of circulation links of production,processing,and sales.
food safety;neural network;calculation of weight;evaluation model
檀彩莲)
TS201.6;TP391.7;R155
A
10.3969/j.issn.2095-6002.2014.01.013
2095-6002(2014)01-0069-08
蔡强,王君君,李海生,等.基于神经网络的食品安全评价模型构建研究.食品科学技术学报,2014,32(1):69-76. CAIQiang,WANG Jun-jun,LIHai-sheng,et al.Research on establishment of food safety evaluationmodelbased on neural network.Journal of Food Science and Technology,2014,32(1):69-76.
2013-04-26
蔡 强,男,教授,博士,主要从事智能信息处理与可视化方面的研究;王君君,女,硕士研究生,研究方向为智能信息处理.