数据挖掘方法在食品安全数据中的应用
2014-04-29边春娜赵春青邓云岚
边春娜 赵春青 邓云岚
摘 要:本文结合食品安全检测数据的特点,将数据挖掘技术中的关联规则方法应用到食品安全检测数据中来,挖掘出其中的隐含规则,为食品安全监督提供政策支持,提高监督的效率。
关键词:食品安全; 数据挖掘; 关联规则
中图分类号:TP311.13 文献标识码:A 文章编号:1006-3315(2014)12-188-001
数据挖掘是数据分析的新技术,它可从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中人们事先不知道的但又是潜在有用的信息或知识。数据挖掘中的关联规则能够发现大量数据中项集之间的相关联系,适用于食品安全检测数据的分析。
本文分析了食品安全检测数据的特点,并通过具体实例,得到了对食品安全监管进行决策支持的规则,这为将关联规则技术引入食品安全监管辅助系统打下了基础。
1.食品安全检测数据特点分析
食品安全检测中,对抽取的样品进行检验得到的信息经整理后存放在一个事务数据库里,这些数据的特点如下:
1.1存放这些检测数据的数据库中通常包含:食品的名称、种类、产地、抽检样品号、检测时间、检测项目、检测结果及单位、检测点、检测负责人等等。
1.2同类样品所检测项目分布不均。每个样品通常检测多个项目,不同项目施检频率不同。对于关注程度高、风险较大的项目,施检频率高;而对于关注程度低、风险较小的项目,施检频率低。
1.3检测的项目通常分为2种:第1种是病原微生物、禁用物质类危害物,其主要特点就是该类危害物一旦有检出,即被视为阳性,这类项目的检测结果只有“检出”和“未检出”2种;第2种是限量类危害物,主要是指有着最大残留限量规定的危害物,其类别涉及到农药残留、兽药残留、食品添加剂、有害元素、工业污染物等,这类项目的检测结果为数值型数据。
2.关联规则挖掘介绍
存放食品安全检测信息的事务数据库中,每个记录代表1个事务。每个事务包含1个唯一的事务标识号(如抽检样品号)和1个组成事务的项的列表(如检验的时间、检验的项目、食品的类别、产地等等)。我们把项的集合称为项集(itemset),包含k个项的项集称为项集,如集合{类别代码,检测日期,项目一,项目二}是一个项集。
设I={i1,i2,…,im}是项的集合。设要挖掘的数据D是数据库事务的集合,其中每个事务T是项的集合,使得T?哿I。设A是一个项集,当且仅当A?哿T时,事务T包含A。关联规则是形如A?圯B(sup,conf)的蕴涵式,其中A?奂I,B?奂I,并且A∩B=?准。把sup称为支持度,是D中同时包含A和B的事务的百分比,也就是sup port(A?圯B)=P(A∪B)Conf idence(A?圯B)=P(B|A)。
同时满足最小支持度阈值(min_sup)和最小置信度阈值(min_conf)的规则称作强规则。关联规则X?圯Y解释为Y满足X中条件的数据库元组多半也满足Y中条件T。
项集的出现频率是包含项集的事务数,简称为项集的频率、支持计数或计数。如果项集的出现频率大于或等于最小支持计数(即min_与D中事务总数的乘积),则项集满足最小支持计度min_sup,这时称它为频繁项集。
关联规则的挖掘是一个2步的过程:(1)找出所有频繁项集:需满足最小支持度。(2)由频繁项集产生强关联规则:需满足置信度。
3.设计
一个完整的挖掘过程包括数据的预处理和关联规则挖掘。
3.1预处理。将食品的种类、产地、检测时间、检测项目及结果提取出来之后,得到的数据不适于直接进行分析,先要进行预处理。
针对不规范的限量类项目检测结果,首先将其中非数值的数据进行清洗,删除检测结果空缺的记录,将检测结果为“未检出”或“ND”转换为“0”,形如“<30”和“>500”的纪录替换为某一确定值,在这里为了简化直接用“<”和“>”之后的数值来替换。
另外由于关联规则分析的数据为离散型,所以需将限量类项目的数值型检测结果离散化。根据一般危害物风险分析中等级划分方法,把检测结果划分为低等风险、中等风险和高等风险3个等级。
3.2关联规则挖掘。根据食品检测项目数据分布不均的特点,选择广度优先算法Apriori。它基于这样的思想:频繁项集的所有非空子集都必须也是频繁的。Apriori使用1种称作逐层搜索的迭代方法,k-项集用于探索(k+1)-项集。首先,找出频繁1-项集的集合,该集合记作L1。L1用于找频繁2-项集的集合L2,而L2用于找L3,如此下去,直到不能找到频繁k-项集。找每个Lk需要一次数据库扫描。
找出频繁项集之后,使用最小置信度min_conf约束对每个频繁项集进行检验。符合该约束的规则即为所求,进行输出。
4.应用实例
本实例中所涉及到的数据取自某检疫局提供的食品安全检测数据库。
在数据预处理的离散化部分,根据数据分布情况,选取卫生标准值1/2、卫生标准值为分界点,将其离散化为低等风险、中等风险和高等风险。在关联规则挖掘部分,设置最小支持度为10%,最小置信度为90%,进行挖掘。
挖掘产生的规则中,取几条具代表性的进行分析:
(1)时间=第四季度∧食品类别=果酒&葡萄酒?圯总二氧化硫=低等风险。
(2)出口国代码=826∧食品类别=谷类蒸馏酒?圯甲醇=低等风险。
(3)出口国代码=554∧食品类别=乳制品沙门氏菌=未检出?圯金黄色葡萄球菌=未检出。
上面的例子可以看出,由于食品中危害物残留量受多方面因素影响,可能与食品种类、时间、产地、当地加工制造过程甚至其他危害物等诸多因素都有关,所以在实际的应用中,需结合专业知识来分析挖掘所产生的规则。
5.结语
关联规则挖掘方法在对食品安全检测数据中多因素的分析上,有着数理统计方法不可比拟的优势。将关联规则挖掘引入食品安全监测数据分析,可以更有效的从已有检测数据中发掘有用信息,对食品安全监管制定决策有一定的辅助作用。
基金项目:保定市科学技术协会科研课题《保定市食品质量安全体系的研究》(KX2013A17)
参考文献:
[1]黄志权.食品卫生监测在食品安全监管中的作用[J]中国公共卫生管理,2005年21期
[2]章杰鑫,张烈平.基于時序关联规则的商品需求预测[J]计算机工程,2009年22期