R第六问 关联分析中的支持度、置信度和提升度

一般使用三个指标来度量一个关联规则,根据这三个指标可以筛选出满足条件的关联规则。
这三个指标是:Support(支持度)、Confidence(可信度)、Lift(提升度)。
以AB这个关联规则为例来说明:
 Support(支持度):表示A、B同时使用的人数占所有用户数(研究关联规则的“长表”中的所有有使用的产品的用户数)的比例。如果用P(A)表示使用A的用户比例,其他产品类推,那么Support=P(A&B)
Confidence(可信度):表示使用A的用户中同时使用B的比例,即同时使用A和B的人占使用A的人的比例。公式表达:Confidence=P(A&B)/P(A)
 Lift(提升度):表示“使用A的用户中同时使用B的比例”与“使用B的用户比例”的比值。公式表达:Lift=( P(A&B)/P(A))/P(B)=P(A&B)/P(A)/P(B)。
提升度反映了关联规则中的A与B的相关性,提升度>1且越高表明正相关性越高,提升度<1且越低表明负相关性越高,提升度=1表明没有相关性。

在所分析的10000个事务中,6000个事务包含计算机游戏,7500个包含游戏机游戏,4000个事务同时包含两者。

关联规则(计算机游戏,游戏机游戏) 支持度为0.4,看似很高,但其实这个关联规则是一个误导。


在用户购买了计算机游戏后有 (4000÷6000)0.667 的概率的去购买游戏机游戏,而在没有任何前提条件时,用户反而有(7500÷10000)0.75的概率去购买游戏机游戏,也就是说设置了购买计算机游戏这样的条件反而会降低用户去购买游戏机游戏的概率,所以计算机游戏和游戏机游戏是相斥的。


在理论上 把 0.667除以0.75称为提升度,具体公式:

P(B|A)/P(B)

称为A条件对于B事件的提升度,如果该值=1,说明两个条件没有任何关联,如果<1,说明A条件(或者说A事件的发生)与B事件是相斥的, 一般在数据挖掘中当提升度大于3时,我们才承认挖掘出的关联规则是有价值的。


提升度是一种比较简单地判断手段,在实际应用中它受零事务的影响较大,零事务在本例中可以理解为既没有买计算机游戏也没有买游戏机游戏的事务,其值为 10000-4000-2000-3500=500,很小,但在现实中,这个值往往其实是很大的。如果保持其他数据不变,把10000个事务改成1000000个事务,那么计算出的提升度就会明显增大,此时的零事务很大(1000000-4000-2000-3500),可见提升度是与零事务有关的。


根据《数据挖掘概念与技术》一书的说法,常用的判断方法 还不是提升度,而是 KULC度量+不平衡比(IR) 。他们可以有效的降低零事务造成的影响。

下面补充一下KULC和IR的说明:

KULC=0.5*P(B|A)+0.5*P(A|B)

该公式表示 将两种事件作为条件的置信度的均值,避开了支持度的计算,因此不会受零和事务的影响。在上例中,KULC值= (4000/6000+4000/7500)/2=0.6


IR=P(B|A)/P(A|B) ,IR用来指示一种情况,比如在上例中6000个事务包含计算机GAME,75000个包含游戏机GAME,同时购买依旧为4000

则:

KULC=0.5*(4000/75000+4000/6000)=0.36

IR=4000/6000/(4000/75000)=12.5

这说明这两个事务的关联关系非常不平衡,购买计算机GAME的顾客很可能同时会买游戏机GAME,而购买了游戏机GAME的用户不太会再去买计算机GAME



1.支持度(Support)

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

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

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

            比如,num(I)表示总事务集的个数

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

2.置信度 (Confidence)

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

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

3.提升度(Lift)

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

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

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

关联分析中的支持度、置信度和提升度

表(1)年货购买表

      试求解1)”茶叶→咖啡“的支持度

                    2) "茶叶→咖啡"的置信度

                    3)”茶叶→咖啡“的提升度

    分析:

          设X={买茶叶},Y={买咖啡},则规则”茶叶→咖啡“表示”即买了茶叶,又买了咖啡“,于是,”茶叶→咖啡“的支持度为

                Support(X→Y) = 450 / 500 =90%

        "茶叶→咖啡"的置信度为

                Confidence(X→Y) = 450 / 500 =90%

          ”茶叶→咖啡“的提升度为

                Lift(X→Y) = Confidence(X→Y) /P(Y) = 90% /   ((450+450) / 1000) = 90% / 90% =1

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

        满足最小支持度和最小置信度的规则,叫做“强关联规则”。然而,强关联规则里,也分有效的强关联规则和无效的强关联规则。

        如果Lift(X→Y)>1,则规则“X→Y”是有效的强关联规则。

        如果Lift(X→Y) <=1,则规则“X→Y”是无效的强关联规则。

        特别地,如果Lift(X→Y) =1,则表示X与Y相互独立。

例2. 再如下面这个例子:
玩3D单机的用户有25.2%玩了单机,较总数范围提升了2.85倍。

关联分析中的支持度、置信度和提升度



评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值