由于只对数据集扫描两次,因此 FP-Growth 算法克服了 Apriori 算法中存在的问题,在执行效率上也明显好于 Apriori 算法。 1. FP—Tree 的构造 为了减少 I/O 次数,FP-Tree 算法引入了一些数据结构来临时存储数据。这个数据结构包括 3 部分:项头表、FP-Tree 和结点链接,如图 1 所示。 图1 FP-Tree数据结构 第...
FP-tree算法相对于Apriori算法,时间复杂度和空间复杂都有了显著的提高。但是对海量数据集,时空复杂度仍然很高,此时需要用到数据库划分等技术。
FP-Tree算法主要有两个步骤:一是利用事务数据库中的数据构造FP-Tree,二是从FP-Tree中挖掘频繁模式。其基本数据结构包含一个一棵FP树和一个项头表,每个项通过一个结点链指向它在树中出现的位置。其中,项头表需要按照支持度递减排序,在FP-Tree中高支持度的节点只能是低支持度节点的祖先节点。 2.算法UML图 类图...
1算法描述 频繁模式增长算法(Frequent-pattern growth, FP-Growth)是一种挖掘频繁项集的方法。 FP-Growth算法采用分治策略,将提供频繁项集的数据库压缩到一颗频繁模式树(Frequent-pattern tree, FP-tree)上,但仍保留项集的关联信息,通过不断地迭代FP-tree的构造和投影过程来发现频繁模式。
它的优点在于效率提升和简单易理解,但存在性能瓶颈。而FP-Tree算法则在2000年由Han Jiawei等人提出,它通过构造FP-Tree,仅需两次扫描数据集,显著提高了效率,尤其在处理大规模数据时表现出色。Apriori算法采用先验性质,首先通过单遍扫描确定1-项集,然后生成新的k-项集候选,通过子集函数检查频繁性。...
FP-tree算法 •算法的优缺点 •优点:•(1)一般要快于Apriori算法;•(2)不产生候选集;•(3)只需要两次遍历数据库,大大提高了效率。•缺点:实现比较困难,在某些数据集上性能会下降。•算法的应用场景 •FP-Tree算法适用于离散型数据,其的特点是尽量把相同元素用一个节点表示,FP-Tree算法的...
1、Apriori算法 Apriori算法命名源于算法使用了频繁项集性质的先验(Prior)知识。Apriori算法将发现关联规则的过程分为两个步骤:通过迭代,检索出事务数据库中的所有频繁项集,即支持度不低于用户设定的阈值的项集;利用频繁项集构造出满足用户最小信任度的规则。挖掘或识别出所有频繁项集是该算法的核心,占整个计算...
在关联规则挖掘领域最经典的算法法是Apriori,其致命的缺点是需要多次扫描事务数据库。于是人们提出了各种裁剪(prune)数据集的方法以减少I/O开支 支持度和置信度 严格地说Apriori和FP-Tree都是寻找频繁项集的算法,频繁项集就是所谓的“支持度”比较高的项集,下面解释一下支持度和置信度的概念。