数据关联规则挖掘实现方法与系统技术方案

技术编号:4907688 阅读:241 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了数据关联规则挖掘实现方法及系统。通过主控节点将数据记录进行分块,将分块数据记录分配并分发给至少两个计算节点。由各计算节点并行查找频繁1-项集;并根据排序后的频繁1-项集,产生子数据项串。由合并节点并行对全部子数据项串进行统计,构建本地FP子树。通过合并FP子树,得到合局FP树,进行数据关联规则挖掘。由于每个计算节点仅处理一部分数据记录,解决了海量数据无法由单机读入内存进行处理的问题;且多个节点并行参与处理,有效提高了处理效率。

【技术实现步骤摘要】

本专利技术涉及数据业务,尤其涉及一种数据关联规则挖掘实现方法与相应的实现系 统。
技术介绍
在数据挖掘处理中,数据关联规则(Association Rule)的挖掘目的,是发现在大 量的数据项之间存在的值得关注的关联或相关关系,典型应用是零售业的购物篮分析。所 谓购物篮分析是指对数据进行关联规则研究,有助于发现交易数据库中不同商品(或不同 项)之间的联系,找出顾客购买行为的模式,例如,如果面包和牛奶经常被顾客同时购买, 则把它们摆放在一起有助于增加两种商品的销售量。为了衡量一条规则的重要程度,关联 规则通常采用支持度(support)和可信度(confidence)作为度量标准。支持度可以表示 商品在超市销售中的重要程度,可信度反映了商品之间的关联程度。如果在购买面包的交 易中,有60%的交易既购买了面包又购买了牛奶,则称关联规则“面包牛奶”(表示如果购 买面包则购买牛奶)的可信度为60%。关联规则(表示A与B同时存在)在事务数据库D中的支持度,可用概率表示;关 联规则在事务数据库D中的可信度,是在事务数据库D中的那些包含A的事务中,B也同时 出现的概率,即条件概率。一个项集X在事务数据库D中的支持度,是事务数据库D中包含X的事务count (X) 占事务总数N的百分比,即概率P (X)。对于一个项集X,如果其支持度大于或等于预先给定 的支持度阈值min_Sup,则称X为频繁项集(FI :Frequent Itemset)或频繁模式。FP-growth算法(频繁模式增长算法)只需要对数据库进行两次扫描第一次扫 描得到频繁1-项集;第二次扫描构建FP-Tree。最后挖掘FP-Tree得到强关联规则。算法 的核心是FP-Tree (Frequent Pattern Tree,频繁模式树)的构建。FP-Tree通过合并一些 重复路径,实现了数据的压缩,从而使得将频繁项集加载到内存中成为可能,从而提高了运 算效率。FP-growth算法的具体实现如下(1)扫描一遍数据库,获取所有频繁项集。以下表一所述数据记录为例,得到的频 繁项集为Kc :4),(f 4), (a:3), (b:3), (m 3), (p:3)},“: ”之后的数字表示对应数据 项的出现频率(即出现次数)。上述频繁项集是首先按照各数据项出现频率从大到小排序, 再按照字母顺序(即规定的数据项顺序)排序,并删除出现次数小于最小支持度的相应数 据项。需要注意的是这里的排序非常重要,之后每个数据记录中的各项都要按照这个顺序 进行排列,排列顺序是有效合并重复路径的前提。表一权利要求一种数据关联规则挖掘实现方法,其特征在于,包括主控节点对数据记录进行分块,将分块数据记录分配并分发给至少两个计算节点;每个所述计算节点并行对分配的每条分块数据记录中包含的每个数据项,分别统计本地出现次数,并发送统计出的每个数据项的本地出现次数给第一类合并节点;所述第一类合并节点累计每个所述计算节点发送的每个数据项的本地出现次数,得到每个数据项的总出现次数,并确定出总出现次数大于设定的支持度阈值的对应数据项为频繁1 项集,并发送频繁1 项集及对应的总出现次数给每个所述计算节点;每个所述计算节点按总出现次数由大到小的顺序排序各频繁1 项集,对分配的每条分块数据记录中包含的数据项,按照排序后的各频繁1 项集的顺序进行排序,并删除每条记录中包含的非频繁1 项集数据项,得到对应的每条处理后记录;以及每个所述计算节点对每条处理后记录,分别以包含的每个频繁1 项集为终止数据项,以该条处理后记录包含的首个频繁1 项集为起始数据项,得到由该条处理后记录生成的全部子数据项串;并分别统计每个子数据项串的本地出现次数,将本地的每个子数据项串及对应的本地出现次数发送给第二类合并节点;所述第二类合并节点累计每个所述计算节点发送的每个子数据项串的本地出现次数,得到每个子数据项串的总出现次数;并根据每个子数据项串及其总出现次数,构建对应的频繁模式FP子树,发送给所述主控节点或第三类合并节点;以及由所述主控节点或所述第三类合并节点合并各FP子树,得到全局FP树,再根据得到的全局FP树挖掘关联规则。2.如权利要求1所述的方法,其特征在于,所述第一类合并节点至少包括两个;由所述 主控节点预先分配每个第一类合并节点进行合并的对应数据项;每个所述计算节点发送统计出的每个数据项的本地出现次数给第一类合并节点,具体 包括每个所述计算节点根据每个第一类合并节点进行合并的对应数据项,将本地统计出的 相应数据项的本地出现次数,上报给对应的第一类合并节点;或者每个第一类合并节点根据自身进行合并的对应数据项,分别向每个所述计算节点请求 上传所述对应数据项的统计信息;每个所述计算节点向每个所述第一类合并节点返回其请 求的所述对应数据项的本地出现次数。3.如权利要求2所述的方法,其特征在于,所述第二类合并节点至少包括两个;由所述 主控节点预先分配每个第二类合并节点进行合并的对应子数据项串;每个所述计算节点将本地的每个子数据项串及对应的本地出现次数发送给第二类合 并节点,具体包括每个所述计算节点根据每个第二类合并节点进行合并的对应子数据项串,将本地统计 出的相应子数据项串的本地出现次数,上报给对应的第二类合并节点;或者每个第二类合并节点根据自身进行合并的对应子数据项串,分别向每个所述计算节点 请求上传所述对应子数据项串的统计信息;每个所述计算节点向每个所述第二类合并节点 返回其请求的所述对应子数据项串的本地出现次数。4.如权利要求3所述的方法,其特征在于,当由第三类合并节点进行FP子树合并时,所 述第三类合并节点由至少两个子树合并分节点和一个子树合并总节点组成;由所述主控节点预先分配每个子树合并分节点进行合并的至少两个对应FP子树,并通知所述第二类合 并节点;所述第二类合并节点构建繁模式FP子树,并发送给第三类合并节点,具体包括 每一个第二类合并节点根据每个子树合并分节点进行合并的对应FP子树,将本地构 建的对应FP子树发送给进行合并的对应的子树合并分节点;每个子树合并分节点进行子 树合并后,传送给所述子树合并总节点。5.一种数据关联规则挖掘实现方法,其特征在于,包括主控节点对数据记录进行分块,将分块数据记录分配并分发给至少两个计算节点; 每个所述计算节点并行对分配的每条分块数据记录中包含的每个数据项,确定出基于 数据项权重或数据记录权重的本地出现次数,并发送给第一类合并节点;所述第一类合并节点累计每个所述计算节点发送的每个数据项基于数据项权重或数 据记录权重的本地出现次数,得到每个数据项基于数据项权重或数据记录权重的总出现次 数,并确定出总出现次数大于设定的支持度阈值的对应数据项为频繁1-项集,并发送频繁 1-项集及对应的基于数据项权重或数据记录权重的总出现次数给每个所述计算节点;每个所述计算节点按基于数据项权重或数据记录权重的总出现次数由大到小的顺序 排序各频繁1-项集,对分配的每条分块数据记录中包含的数据项,按照排序后的各频繁 1-项集的顺序进行排序,并删除每条记录中包含的非频繁1-项集数据项,得到对应的每条 处理后记录;以及每个所述计算节点对每条处理后记录,分别以包含的每个频繁1-项集为终止数据项, 以该条处理后本文档来自技高网...

【技术保护点】
一种数据关联规则挖掘实现方法,其特征在于,包括:主控节点对数据记录进行分块,将分块数据记录分配并分发给至少两个计算节点;每个所述计算节点并行对分配的每条分块数据记录中包含的每个数据项,分别统计本地出现次数,并发送统计出的每个数据项的本地出现次数给第一类合并节点;所述第一类合并节点累计每个所述计算节点发送的每个数据项的本地出现次数,得到每个数据项的总出现次数,并确定出总出现次数大于设定的支持度阈值的对应数据项为频繁1-项集,并发送频繁1-项集及对应的总出现次数给每个所述计算节点;每个所述计算节点按总出现次数由大到小的顺序排序各频繁1-项集,对分配的每条分块数据记录中包含的数据项,按照排序后的各频繁1-项集的顺序进行排序,并删除每条记录中包含的非频繁1-项集数据项,得到对应的每条处理后记录;以及每个所述计算节点对每条处理后记录,分别以包含的每个频繁1-项集为终止数据项,以该条处理后记录包含的首个频繁1-项集为起始数据项,得到由该条处理后记录生成的全部子数据项串;并分别统计每个子数据项串的本地出现次数,将本地的每个子数据项串及对应的本地出现次数发送给第二类合并节点;所述第二类合并节点累计每个所述计算节点发送的每个子数据项串的本地出现次数,得到每个子数据项串的总出现次数;并根据每个子数据项串及其总出现次数,构建对应的频繁模式FP子树,发送给所述主控节点或第三类合并节点;以及由所述主控节点或所述第三类合并节点合并各FP子树,得到全局FP树,再根据得到的全局FP树挖掘关联规则。...

【技术特征摘要】

【专利技术属性】
技术研发人员:高丹徐萌邓超罗治国周文辉孙少陵何清曾立
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1