今天看啥  ›  专栏  ›  极客兔兔

机器学习面试题-数据挖掘中如何判断关联规则有效性

极客兔兔  · 掘金  ·  · 2018-06-12 02:07

机器学习面试题-数据挖掘中如何判断关联规则有效性

关联规则的三个度

1.支持度(Support)

Support(X→Y) = P(X,Y) / P(I) = P(X∪Y) / P(I) = num(XUY) / num(I)

支持度表示项集{X,Y}在总项集里出现的概率。

其中,I表示总事务集。num()表示求事务集里特定项集出现的次数。

比如,num(I)表示总事务集的个数,num(X∪Y)表示含有{X,Y}的事务集的个数(个数也叫次数)。

2.置信度 (Confidence)

Confidence(X→Y) = P(Y|X) = P(X,Y) / P(X) = P(XUY) / P(X)

置信度表示在先决条件X发生的情况下,由关联规则”X→Y“推出Y的概率。即在含有X的项集中,含有Y的可能性。

3.提升度(Lift)

Lift(X→Y) = P(Y|X) / P(Y)

提升度表示含有X的条件下,同时含有Y的概率,与Y总体发生的概率之比。

满足最小支持度和最小置信度的规则,叫做“强关联规则”。

  • Lift(X→Y)>1,“X→Y”是有效的强关联规则。
  • Lift(X→Y) <=1,“X→Y”是无效的强关联规则。
  • 特别地,Lift(X→Y) =1,X与Y相互独立。

判断规则的有效性

题目

已知有1000名顾客买年货,分为甲乙两组,每组各500人,其中甲组有500人买了茶叶,同时又有450人买了咖啡;乙组有450人买了咖啡,如表所示。

问:茶叶→咖啡是一条有效的关联规则吗?

组次 买茶叶的人数 买咖啡的人数
甲组(500人) 500 450
已组(500人) 0 450

答案

  • ”茶叶→咖啡“的支持度: Support(X→Y) = 450 / 500 = 90%
  • "茶叶→咖啡"的置信度为:Confidence(X→Y) = 450 / 500 = 90%
  • ”茶叶→咖啡“的提升度为:Lift(X→Y) = Confidence(X→Y) / P(Y) = 90%/((450+450)/1000) = 1

由于提升度Lift(X→Y) =1,表示X与Y相互独立,即是否有X,对于Y的出现无影响。也就是说,是否购买咖啡,与有没有购买茶叶无关联。即规则”茶叶→咖啡“不成立,或者说关联性很小,几乎没有,虽然它的支持度和置信度都高达90%,但它不是一条有效的关联规则




原文地址:访问原文地址
快照地址: 访问文章快照