关联规则Apriori算法的研究与分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关联规则Apriori算法的研究与分析   摘要:该文首先介绍了Apriori算法的基本思想。举例说明Apriori算法的执行过程,并且对Apriori算法性能进行分析。   关键词:关联规则;Apriori;事务数据库   中图分类号:TP312文献标识码:A文章编号:1009-3044(2011)30-7455-02   The Analysis of Apriori Algorithm for Association Rules   PAN Yan-yan   (Fu Jian Chuanzheng Communication College, Fuzhou 350007, China)   Abstract: This paper introduces the basic idea of the Apriori algorithm. Illustrate the execution of Apriori algorithm and analyze the performance of Apriori algorithm.   Key words: association rule, Apriori , transaction database   1993年Agrawal[1]等人首先提出关联规则概念,关联规则挖掘便迅速受到数据挖掘领域专家的广泛关注。在迄今十几年中,关联规则挖掘技术得到了较为深入的发展。Apriori算法是关联规则挖掘经典算法。   1 Apriori算法   1994年9月,Agrawal等提出了Apriori算法。该算法是挖掘布尔关联规则频繁项目集的经典算法,关于关联规则挖掘算法的许多后续研究工作都是在该算法的基础上进行的。   该算法的基本思想是利用一个逐层搜索的迭代方法来完成频繁项目集的挖掘。该算法在第一趟扫描数据库时,对项集I中的每一个数据项计算其支持度,确定出满足最小支持度的频繁1-项目集L1。第k趟扫描,首先以k-1趟扫描得到的频繁k-1项目集Lk-1作为种子集,生成候选集Ck,然后扫描数据库,计算这些候选集的支持度,最后从候选集Ck中确定出满足最小支持度的频繁k-项目集Lk,并将Lk作为下一趟扫描的种子集,上述过程不断重复直至不在有新的频繁项目集产生为止。   Apriori算法详细描述如下[2]:   输入:事务数据库D,最小支持度阈值minsup   输出:D中的频繁项目集L   1) L1=search_frequent_l -itemset(D);   2) for(k=2;Lk-1≠Φ;k++)   3) { Ck=apriori_gen(Lk-1);   4)for each transactions t∈D   5) { Ct=subset(Ck,t);   6)for each candidates c∈Ct   7)c.count++;}   8) Lk={c∈Ck| c.count≥minsup}}   9) Answer=UkLk;   2 Apriori算法执行过程   假设给定一样本事务数据库D,如表1所示,最小支持度minsup=2,对其利用Apriori算法进行关联规则挖掘。   1) 第一次扫描,扫描数据库获得每个候选项的计数,从而获得频繁1-项集。如表2所示。   2) 根据频繁1-项目集L1自连接生成2-候选集C2,然后第二次扫描数据库D,计算各项集的支持度计数,如表3所示。从而得到频繁2-项目集L2,如表4所示。   3) L2进行自连接得到C3={{A,D,E},   {C,D,E}},然后第三次扫描数据库D,计算各项集的支持度计数,。最后得到频繁3-项目集L3={{A,D,E},{C,D,E}},支持度分别为2。   4) L3进行自连接得到C4={{ A,C,D,E }},由于{ A,C,D,E }的子集{A,C,D }不在L3中,因此删除{ A,C,D,E }后C4=Φ,得到L4=Φ,算法终止。   3 Apriori算法分析   基于频繁项目集Apriori算法的优点是算法思路简单,容易理解,通过递归,剪切生成频繁项目集。显然,Apriori算法存在下列性能问题[3]:   1) 多次扫描数据库,I/O负载重。Apriori算法需要在每进行一次迭代的时候扫描一次数据库。   2) 可能产生大量候选集。Apriori算法在迭代过程中要在内存中产生、处理和保存候选频繁项集。Apriori算法在处理小规模事务时,其效率还是挺高的。但是如果处理稍微大点的事务数据,这个数量有可能是非常巨大的。   3) 难以发现稀有的信息:使用Apriori算法,有设置最小支持度minsup,

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档