关联规则概述
Association Rules反应的是一个事物与其他事物之间的相互依存性和关联性。
典型的购物车分析:试图找出不同物品和产品之间的关联,这些物品和产品可以在一起销售,有助于正确的放置商品。
基本名词解释
Apriori算法
Apriori算法利用频繁项集生成关联规则。它基于频繁项集的子集也必须是频繁项集的概念。
频繁项集是支持值大于阈值(support)的项
算法流程
算法实例
优缺点
计算量大
FP-Growth算法
Frequent Pattern Growth 频繁模式增长,将提供频繁项集的数据库压缩到一棵频繁模式树(FP-Tree),但仍保留项集关联信息。该算法是对Apriori方法的改进。生成一个频繁模式而不需要生成候选模式。
优点
不需要产生候选集
只需要两次遍历数据库,大大提高效率
算法步骤
- 第一步是扫描数据库以查找数据库中出现的项集。这一步与Apriori的第一步相同。
- 第二步是构造FP树。为此,创建树的根。根由null表示。
- 下一步是再次扫描数据库并检查事务。检查第一个事务并找出其中的项集。计数最大的项集在顶部,计数较低的下一个项集,以此类推。这意味着树的分支是由事务项集按计数降序构造的。
- 将检查数据库中的下一个事务。项目集按计数降序排列。如果此事务的任何项集已经存在于另一个分支中(例如在第一个事务中),则此事务分支将共享根的公共前缀。这意味着公共项集链接到此事务中另一项集的新节点。
- 此外,项集的计数在事务中发生时递增。当根据事务创建和链接公共节点和新节点时,它们的计数都增加1。
- 下一步是挖掘创建的FP树。为此,首先检查最低节点以及最低节点的链接。最低的节点表示频率模式长度1。由此遍历FP树中的路径。此路径称为条件模式基。条件模式库是一个子数据基,由FP树中的前缀路径组成,路径中的节点(后缀)最低。
- 构造一个条件FP树,它由路径中的项集计数构成。在条件FP树中考虑满足阈值支持的项集。
- 频繁模式由条件FP树生成。
案例