FP增长算法(FP Growth Algorithm)

FP增长算法是一种数据挖掘中的关联规则学习算法,用于找出频繁项集。文章详细介绍了算法的步骤,包括从事务集构造FP树,从简单和复杂的FP树生成频繁项集,并解释了算法的性质和递归过程。通过对FP树的操作,生成条件FP树并构建频繁项集,最终得到所有频繁项集。
摘要由CSDN通过智能技术生成

0 问题描述

给定事务集 TS (Transaction Set), 项全集 IUS (Item Universal Set)以及支持度阈值 s0 , 求所有支持度大于 s0 的项集, 即频繁项集.

TS 给定以后, 任意项集的支持度 s 和它在事务集中出现的频数 f 是等价的:

f=s|TS|
因此为了方便叙述, 我使用”支持度”同时代表”项在事务集中出现的频数”以及”项在事务集中出现的频数与事务集大小之比”, 具体代表哪个含义, 可以根据上下文轻易区分.

1 记号

我们知道FP树是一棵前缀树, 树上每个节点关联一个项. 设 iIUS 是一个项, fp 表示一棵FP树, 为方便叙述, 我引进以下符号:

  • nodesi : FP树上与项 i 相关联的节点的集合, 注意这样的节点可能有多个, 因此 nodei 表示一类节点而不是FP树上特定的某个节点
  • fp . root : fp 的根节点, 在前缀树的通常实现方式里, 根节点不关联任何项
  • fp . headers : FP增长算法需要遍历一棵FP树上的所有关联到同一个项的节点, 因此我们使用一个链表将 nodesi 中的元素串联在一起.这样, 每个 nodesi 关联一个链表, 所有这些链表的头存储在 fp . headers

我们说项是有大小的, 项的大小等于其支持度,, 因此项集是可以排序的. 对于已经排序的项集, 我们说”项集的最后一个元素”是指”项集中最小的项, 即项集中支持度最小的项.

2 从事务集构造一颗FP树

我们假设用于构造FP树的事务集为 ts , 项全集为 ius . FP增长算法的第一步是从 ts , ius 构造一颗FP树 fp , 然后删掉树上所有支持度小于 s0 的单项. 这个过程同时会构造出 fp . heders .

首先, 在算法开始的时候,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值