规则模型:关联规则挖掘与一阶规则学习
1. 关联规则挖掘概述
关联规则挖掘是一种可以以完全无监督的方式学习的规则类型,在数据挖掘应用中非常突出。以观察八位顾客购买苹果、啤酒、薯片和尿布的交易数据为例,每个交易包含一组商品,反之,对于每个商品,我们可以列出其参与的交易。例如,尿布出现在交易 1、3、4 和 6 中,苹果出现在交易 3、5、6 和 7 中。对于商品集合也是如此,如啤酒和薯片一起出现在交易 2、4 和 6 中,我们称商品集 {啤酒, 薯片} 覆盖交易集 {2, 4, 6}。
2. 支持度与频繁项集
我们将商品集 I 覆盖的交易数量称为其支持度,记为 Supp(I)(有时也称为频率)。我们关注的是超过给定支持度阈值 f0 的频繁项集。支持度具有单调性,即在项集格中向下移动路径时,支持度不会增加。这意味着频繁项集的集合是凸的,并且完全由其最大项集的下边界决定。例如,当 f0 = 3 时,最大频繁项集为 {苹果}、{啤酒, 薯片} 和 {尿布},这表示至少有三笔交易涉及苹果,至少三笔涉及尿布,至少三笔同时涉及啤酒和薯片,而其他商品组合的购买频率较低。
3. 频繁项集的查找算法
由于项集支持度的单调性,频繁项集可以通过简单的枚举广度优先或逐层搜索算法(算法 6.6)找到。该算法维护一个优先队列,初始时只包含覆盖所有交易的空项集。从优先队列中取出下一个候选项集 I,生成其所有可能的扩展(包含一个更多项的超集,即项集格中的向下邻居),如果扩展的支持度超过阈值,则将其添加到优先队列的末尾。如果 I 的至少一个扩展是频繁的,则 I 不是最大的,可以丢弃;否则,将 I 添加到找到的最大频繁项集集合中。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



