1. 关联规则
考察一些涉及许多物品(item)的商品筐(basket):basket1 中出现了物品甲,basket2 中出现了物品乙,basket3 中则同时出现了物品甲和乙。那么,物品甲和乙在商品筐中的出现相互之间是否有规律可循呢?在数据库的知识发现中,关联规则就是描述这种在一个商品筐中物品之间同时出现的规律的知识模式。更确切的说,关联规则通过量化的数字描述物品甲的出现对物品乙的出现有多大的影响。
现实中这样的例子很多。例如超级市场利用前端收款机收集存储了大量的售货数据,这些数据是一条条的购买事务记录,每条记录存储了事务处理时间,顾客购买的物品、物品的数量及金额等。这些数据中常常隐含形式如下的关联规则:例如发现了规则{onions, potatoes} ⇒ {burger}, 可能指示如果一个顾客同时购买了onions和potatoes,那么他很可能也会购买burger,这些信息可以用于指导市场活动,如商品定价、商品摆放位置。
- X和Y都可以放在同一个架子上,这样一个物品的买家会被提示购买另一个。
- 促销折扣只适用于两个项目中的一个。
- 对于X的广告可以针对购买Y的买家投放。
- X和Y可以组合成一个新产品(比如套餐),比如X的套餐中包含有Y。
虽然我们可能知道某些物品经常会一起购买,但问题是,我们如何去发现这些关联关系?(很典型的就是啤酒和尿布的问题)除了增加销售利润外,关联规则还可以用于其他领域。例如,在医学诊断中,了解哪些症状容易并存,有助于提高患者的护理水平和药物处方。
2. 关联规则定义
关联规则分析是一种揭示项商品之间如何相互关联的技术,有三个常用的指数来衡量关联关系。
2.1 指数一:支持度(Support)
支持度表示一个项集的流行程度,用一个项集出现的事务的比例来衡量。在下面的表1中,apple的支持率是8个中的4个,即50%。项集还可以包含多个项,例如,苹果、啤酒、大米的支持率是8个中的2个,即25%。support(X,Y,Z)就是商品X,Y,Z同时出现的概率。
设置一个支持度阈值,将支持度的值高于此阈值的项集标识为频繁项集。
2.2 指数二:置信度(Confidence)
置信度表示在X被购买的前提下,Y被购买的概率。表示为confidence{X -> Y},就是P(Y|X)。在表1中,{苹果->啤酒} 的置信度为3/4,即75%。
但是置信度指数的一个缺点是它可能会误导关联的重要性,因为有的时候P(Y|X)很高,但是并不能说明X的购买会导致Y的购买。例如P(啤酒|苹果)很高,但是啤酒在一般情况下也很受欢迎,那么包含了苹果的订单中同时包含啤酒的可能性将更高,从而提高了置信度指数。但这样高的置信度并没有任何意义!
为了说明X的购买对于Y的购买究竟有什么样的影响,我们使用了第三个措施,称为提升度(Lift)。
2.3 指数三:提升度(Lift)
提升度就是,分子表示购买Y的情况下购买X的概率;分母表示购买X的概率。如果购买Y之后购买X的概率比购买X的概率要大,说明购买Y这个行为对于购买X有一个明显的提升