关联规则的几个概念:
关联规则是形如 X -> Y 的蕴含式,表示通过 X 可以推导出 Y,X称为关联规则的左部(Left Hand Side,LHS),Y 称为关联规则的右部(Right Hand Side,RHS)。
关联规则有两个指标,分别是支持度(Support)和置信度(Confidence)。关联规则A -> B 的支持度(support)= P(AB),指的是事件 A 和事件 B 同时发生的概率。置信度(confidence) = P(B|A) = P(AB) / P(A),指的是发生事件A的基础上,发生事件B的概率。比如,如果尿布->啤酒关联规则的支持度为 30%,置信度60%,那么就表示所有的商品交易中,30% 交易同时购买了尿布和啤酒,在购买尿布的交易中,60% 的交易同时购买了啤酒。
关联规则分析需要从基础数据中挖掘出支持度和置信度都超过一定阈值的关联规则,以便在决策中应用。同时满足最小支持度阈值和最小置信度阈值的规则,称为强规则。
挖掘关联规则的主流算法为 Apriori 算法。它的基本思想是在数据集中找出同时出现概率符合预定义(Pre-defined)支持度的频繁项集,而后从以上频繁项集中,找出符合预定义置信度的关联规则。
原理:
如果某个项集是频繁的,那么它的所有子集也是频繁的。它的逆否命题是,如果一个项集是非频繁的,那么它的所有超集也是频繁的。
在上图中,已知阴影项集{商品2,商品3}是非频繁的。利用这个基础知识,我们可以知道项集 {商品0,商品2,商品3},{商品1,商品2,商品3} 以及 {商品0,商品1,商品2,商品3} 也是非频繁的,因为它们是 {商品2,商品3} 的超集。于是在计算过程中,一旦计算出 {商品2,商品3} 的支持度,知道它是非频繁的后,就可以紧接着排除它的超集,节省了计算工作量。