基本概念
-
X->Y ,其中X和Y是不相交的项集
-
支持度:给定数据集的频繁程度
- 支持度很低的规则可能只是偶然出现
- 通常用来删去那些无意义的规则
-
置信度:确定Y在包含X的事务中出现的频繁程度
- 通过规则进行推理具有可靠性
-
关联规则不必然蕴含因果关系,只表示前件和后件中的项明显地同时出现
-
从数据集提取的可能规则的总数很高,事先对规则进行剪枝,减少对支持度和置信度不必要的计算
提高算法性能
- 分解成两个主要的子任务:
- 频繁项集产生:发现满足最小支持度阈值的所有项集
- 规则产生:从上一步发现的频繁项集中提取所有高置信度的规则,这些规则称作强规则
6.2 频繁项集的产生
- 降低候选项集的数目(M) —— 先验原理(不用计算支持度值而删除某些候选集的有效方法)
- 减少比较次数
- 替代将每个候选项集与每个事务相匹配,可以使用更高级的数据结构
- 存储候选项集
- 压缩数据集
- 替代将每个候选项集与每个事务相匹配,可以使用更高级的数据结构
6.2.1 先验原理
- 使用支持度度量,减少频繁
- 先验原理:如果一个项集是频繁的,则它的所有子集一定也是频繁的。
- 反单调性:一个项集的支持度决不会超过它的子集的支持度
- 任何具有反单调性的度量都能直接结合到挖掘算法中,具有对候选项集指数搜索空间进行有效地剪枝
6.2.2 Apriori算法的频繁项集产生
- 有两个重要的特点:
- 逐层算法:从频繁1-项集到最长的频繁项集,每次遍历项集格中的一层
- 使用 产生-测试 策略来发现频繁项集
6.2.3 候选的产生与剪枝
- aprior-gen函数通过两个操作产生候选项集:
- 候选项集的产生:
-
产生方法:
- 蛮力方法:将所有的k-项集都看作可能的候选,然后使用候选剪枝除去不必要的候选
- 蛮力方法:将所有的k-项集都看作可能的候选,然后使用候选剪枝除去不必要的候选
-
F_k-1 * F1方法: 用其他频繁项来扩展每个频繁(k-1) 项集、
- 确保每
-
- 候选项集的产生: