一种大规模数据的关联规则挖掘方法

文档序号:6385061阅读:446来源:国知局
专利名称:一种大规模数据的关联规则挖掘方法
技术领域
本发明涉及分布式计算与数据挖掘技术。
背景技术
海量数据管理相关研究已经不是一个新话题了,只是对于“海量”的定义随着存储设备的飞速发展,也在不断地发生变化。对于大规模数据,数据库管理系统通过Hash,B+ iIree等各种手段对数据进行索弓丨,能够有效减少外存读写开销,提高数据查询效率。为了处理更大的数据量,并行数据库系统(Parallel Database System,简称F1DBS),分布式数据库系统(Distributed DatabaseSystem,简称DDBS)相继出现,通过网络连接将多个数据处理节点组成一个整体,从而完成有效处理海量数据的任务。关联规则由Agrawal等人于1993年在文献中提出,目的是是从大量数据(记录冲发现事物(项)的关联和相关联系。关联规则挖掘过程主要包含两个阶段第一阶段,将项目组集合中出现的频率(支持度)大于最小支持度的项目组判定为频繁项集(Frequent Itemsets);第二阶段,将大于最小置信度的频繁项集对应关联规则判定为强关联规则(Association Rules)。Apriori算法是一种最有影响的挖掘频繁项集的算法,其思想是用已知的频繁项集推导其他频繁项集(利用K-项集来产生(K+1)-项集)。先找出频繁1-项集,记为L1,这些频繁项集出现的频率至少和预定义的最小支持度一样;然后利用L1来挖掘L2,使用之前找到的已发现频繁项集产生只包含该频繁项集的候选项集,只有那些大于最小支持度的候选项集才被留下来,作为频繁2-项集L2;不断如此循环下去直到无法发现更多的频繁K-项集为止。Apriori算法的实现过程中会产生大量的候选项集,导致数据挖掘运算时间长,是基于Apriori算法的一大缺点。

发明内容
本发明所要解决的技术问题是,提供一种能更高效进行大规模数据的关联规则挖掘方法。本发明为解决上述技术问题所采用的技术方案是,一种大规模数据的关联规则挖掘方法,包括以下步骤I)对输入数据进行基于相似度的分类预处理,使得同一分类中的记录间具有高相似度;2)对每个分类中的数据进行基于Apriori算法的挖掘,得到各分类的频繁项集;3)合并所有分类的频繁项集,将大于最小置信度的频繁项集对应关联规则判定为强关联规则。本发明基于相似度进行分类后,将相似度小的数据分离,在频繁项集挖掘时是对每一种类型进行独立的挖掘,能够减少产生不必要的关联性小的候选项集,从而提高整体数据的关联规则挖掘效率。另外,当增加新的输入数据时,仅需对该新增加数据所在的分类中更新频繁项集,无需再对所有数据进行处理,具有更好的扩展性。分类预处理的具体方法是1.1在输入数据中选择k个条记录作为分类的基准点;1. 2扫描数据,并求出每一条记录与各基准点的相似度,根据将每条记录分配至与其相似度最高的基准点所对应的分类上;扫描完全部数据后,形成各分类对应区域;与一条记录相似度最高的基准点有I个或I个以上;1. 3分别对各分类对应区域的记录进行平均,利用平均后的结果确定新的该区域的新的基准点,判断区域的基准点是否变化,如是,跳转到步骤1. 2,如否,分类结束。
进一步的,为了进一步缩短关联规则挖掘时间,步骤I)与步骤2)均使用多个处理器并行处理。本发明的有益效果是,通过基于相似度的预处理,减少产生不必要的,关联性小的候选项集,提高整体数据处理效率,进一步的,通过分布式系统并行完成频繁项集的挖掘,进一步改善了系统运行的时间,满足了处理大规模数据的用户需求。


图1为利用相似性进行数据分块的流程图。
具体实施例方式输入的海量数据由大量记录组成,每一条记录包含有I个或I个以上的项,每一条记录也是I个或I个以上项的集合(项集合),关联规则挖掘就是找出不同记录中关联度高的项与项之间联系。本实施例方法利用Hadoop分布式文件系统和并行的Aprior算法实现大规模数据的关联规则挖掘,具体步骤为I)对输入数据进行基于相似度的分类预处理,使得同一分类中的记录间具有高相似度;2)对每个分类中的数据进行基于Apriori算法的挖掘,得到各分类的频繁项集;3)合并所有分类的频繁项集,将大于最小置信度的频繁项集对应关联规则判定为强关联规则,将强关联规则下载到客户端机器。步骤I)中分类预处理的具体方法如图1所示1.1在输入数据中选择k个条记录作为分类的基准点;1. 2扫描数据,并求出每一条记录与各基准点的相似度,根据将每条记录分配至与其相似度最高的基准点所对应的分类上;扫描完全部数据后,形成各分类对应区域;与一条记录相似度最高的基准点有I个或I个以上;1. 3分别对各分类对应区域的记录进行平均,根据平均后的结果确定新的该区域的新的基准点,判断区域的基准点是否变化,如是,跳转到步骤1. 2,如否,分类结束。相似度即计算项与项之间的相似程度,与距离度量相反。相似度度量的值越小,说明项与项之间相似度越小,差异越大。例1:表I所示的输入数据表有9条记录(Tl,T2,…,T9)以及各条记录中所包含的项(II,12,13,14,15)
表I记录表
权利要求
1.一种大规模数据的关联规则挖掘方法,其特征在于,包括以下步骤1)对输入数据进行基于相似度的分类预处理,使得同一分类中的记录间具有高相似度;2)对每个分类中的数据进行基于Apriori算法的挖掘,得到各分类的频繁项集;3)合并所有分类的频繁项集,将大于最小信赖度的频繁项集对应关联规则判定为强关联规则。
2.如权利要求1所述一种大规模数据的关联规则挖掘方法,其特征在于,分类预处理的具体方法是1.1在输入数据中选择k个条记录作为分类的基准点;k为大于等于2的整数;1.2扫描数据,并求出每一条记录与各基准点的相似度,根据将每条记录分配至与其相似度最高的基准点所对应的分类上;扫描完全部数据后,形成各分类对应区域;与一条记录相似度最高的基准点有I个或I个以上;1.3分别对各分类对应区域的记录进行平均,利用平均后的结果确定新的该区域的新的基准点,判断区域的基准点是否变化,如是,跳转到步骤1. 2,如否,分类结束。
3.如权利要求2所述一种大规模数据的关联规则挖掘方法,其特征在于,使用多个处理器分别对所述步骤I)、步骤2)进行并行处理。
4.如权利要求3所述一种大规模数据的关联规则挖掘方法,其特征在于,并行Apriori 算法来挖掘频繁项集,具体的方法是·2.1将当前分类中的数据根据并行处理器数量N分为N个数据块Di分配至对应的处理器Pi,i=l,. . .,N,N为大于等于2的整数;·2.2当第k=l次扫描时,每个处理器Pi根据分配在本地数据分块Di中各记录的项,生成本地候选项集C(l,i),之后进入步骤2. 4 ;·2.3当第k>l次扫描时,每个处理器Pi根据第k-Ι次扫描生成的本地频繁项集 L(k-1, i)生成本次扫描的本地候选项集C (k,i),当生成本地候选项集C (k,i)不为空则进入步骤2. 4,否则,处理器Pi挖掘频繁项集的迭代过程结束,进入步骤2. 7 ;第k遍的频繁项集L (k-Ι),在每个处理器Pi生成完全候选项集C (k);·2.4处理器Pi扫描完毕的本地数据分块Di并得到本地候选项集C(k,i)的支持度计数,进入步骤2. 5 ;·2.5处理器Pi与并行的其他处理器交换本地候选项集C (k,i)的支持度计数,获得总的当前分类下第k次扫描生成的候选项集C (k)的支持度计数;·2.6处理器Pi根据候选项集C (k)的支持度计数将本地候选项集C (k,i)中支持度大于预设最小支持度的项目组作为本地频繁项集L(k, i),更新k=k+l,进入步骤2. 3 ;·2.7当并行的全部处理器均结束挖掘频繁项集的迭代过程,则合并各处理器Pi每次扫描得到本地频繁项集作为对当前分类的频繁项集的挖掘结果。
全文摘要
本发明提供一种大规模数据的关联规则挖掘方法,包括以下步骤1)对输入数据进行基于相似度的分类预处理,使得同一分类中的记录间具有高相似度;2)对每个分类中的数据进行基于Apriori算法的挖掘,得到各分类的频繁项集;3)合并所有分类的频繁项集,将大于最小置信度的频繁项集对应关联规则判定为强关联规则。本发明能够减少产生不必要的关联性小的候选项集,从而提高整体数据的关联规则挖掘效率,具有更好的扩展性。
文档编号G06F17/30GK103020256SQ20121056234
公开日2013年4月3日 申请日期2012年12月21日 优先权日2012年12月21日
发明者罗光春, 田玲, 秦科, 陈爱国, 段贵多 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1