数据挖掘FP—Growth算法实验报告.docxVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据挖掘FP—Growth算法实验报告

PAGE \* MERGEFORMAT8 FP-Growth算法实验报告 一、算法介绍 数据挖掘是从数据库中提取隐含的、未知的和潜在的有用信息的过程,是数据库及相关领域研究中的一个极其重要而又具有广阔应用前景的新领域. 目前,对数据挖掘的研究主要集中在分类、聚类、关联规则挖掘、序列模式发现、异常和趋势发现等方面,其中关联规则挖掘在商业等领域中的成功应用使它成为数据挖掘中最重要、最活跃和最成熟的研究方向. 现有的大多数算法均是以Apriori 先验算法为基础的,产生关联规则时需要生成大量的候选项目集. 为了避免生成候选项目集,Han等提出了基于FP 树频繁增长模式(Frequent-Pattern Growth,FP-Growth)算法。 FP 树的构造过程可描述为: 首先创建树的根结点, 用“null”标记. 扫描交易数据集DB ,每个事务中的项目按照支持度递减排序,并对每个事务创建一个分枝. 一般地,当为一个事务考虑增加分枝时,沿共同前缀上的每个结点的计数值增加1 ,为跟随在前缀之后的项目创建结点并链接. 为方便树的遍历,创建一个频繁项目列表,使得每个项目通过一个结点头指针指向它在树中的位置. FP 树挖掘过程可描述为:由长度为1 的频繁项目开始,构造它的条件项目基和条件FP树,并递归地在该树上进行挖掘. 项目增长通过后缀项目与条件FP 树产生的频繁项目连接实现. FP-Growth 算法将发现大频繁项目集的问题转换成递归地发现一些小频繁项目,然后连接后缀.它使用最不频繁的项目后缀,提供了好的选择性。 算法:FP-Growth。使用FP树,通过模式增长挖掘频繁模式。 输入: D:事物数据库 min_sup:最小支持度阈值 输出:频繁模式的完全集。 方法: 按一下步骤构造FP树: (a)扫描数据库D一次。手机频繁项的集合F和它们的支持度计数。对F按支持度计数降序排序,结果为频繁项列表L。 (b)创建FP树的根节点,以“null”标记它。对于D中每个事物Trans,执行: 选择Trans中的频繁项,并按L中的次序排序。设Trans排序后的频繁项列表为[p|P],其中p是第一个元素,而P是剩下的元素列表。调用insert_tree([p|P],T)。该过程执行情况如下。如果T有子女N使得N.item-name=p.item-name,则N的计数增加1;否则,创建一个新节点N,将其计数设置为1,链接到它的父节点T,并且通过节点链结构将其链接到具有相同item-name的结点。如果P非空,则递归地调用insert_tree(P,N)。 FP树的挖掘通过调用FP-growth(FP_tree,null)实现。该过程实现如下。 Procedure FP_growth(Tree,α) (1)if Tree包含单个路径P then (2)for 路径P中结点的每个组合(记作β) (3)产生模式β∪α,其中支持度计数support_count等于β中结点的最小支持度计数; (4)else for Tree的表头中的每一个αi{ (5)产生一个模式β=α∪αi,其中支持度计数support_count=αi.support_count; (6)构造β的调减模式基然后构造β的条件FP树Treeβ; (7)if Treeβ≠? then (8)调用FP_growth(Treeβ,β);} 二、算法实现及实验结果 本实验有两个测试集合: 小数据集A:50条事物集,10个不同的项 大数据集合B:5670事物集,100个不同项 1.对数据集合A进行min_sup=8%计数产生的频繁项集结果如下: 表1. 频繁一项集 项集支持度计数支持度1I3 3570%2I9 612%3I6 510%4I1 )1734%5I4 1428%6I71122%7I2 3468%8I8 1122%9I5 1632% 表2. 频繁二项集 项集支持度计数支持度1I2 I6510%2I3 I9 48%3I2 I9 48%4I1 I7 48%5I2 I7 714%6I3 I7 816%7I2 I8 612%8I3 I8 816%9I2 I4 1122%10I2 I5 1122%11I3 I5 1326%12I3 I1 1020%13I2 I1 1122%14I3 I2 2142%表3. 频繁三项集 项集支持度计数支持度1I2 I5 I7510%2I3 I5 I7612%3I3

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档