关联分析--概述(项集、关联规则、支持度、置信度、提升度)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关联分析--概述(项集、关联规则、支持度、置信度、提升度)相关的知识,希望对你有一定的参考价值。

参考技术A 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人买了咖啡;乙组也有500人,但只有450人买了咖啡,没有人买茶叶,如表(1)所示:

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

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

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

    分析:

        设X= 买茶叶,Y=买咖啡,则规则”茶叶→咖啡“表示”即买了茶叶,又买了咖啡“,

        1)对甲组,有:

              Sup1(X→Y) = Num(XUY)/Num(I) = 450/500 = 90%

              Conf1(X→Y) = Num(XUY)/Num(X) = 450/500 = 90%

      从甲组可以看出,X,Y有比较强的相关性。

          2)对乙组,有:

              Sup2(X→Y) = Num(XUY)/Num(I) = 0/500 = 0%

              Conf2(X→Y) = Num(XUY)/Num(X) = 0/0 = 0%

        从乙组可以看出,X,Y没有相关性。

          3) 从总体上,讨论X,Y有没有相关性,可以使用总体的LiftX,Y提升度来判别。

          则总的支持度、置信度、提升度,分别如下:

                ”茶叶→咖啡“总的支持度为: SupX→Y = Num(XUY)/Num(all) = 450/1000 = 45%

                ”茶叶→咖啡“总的置信度度为: ConfX→Y = Num(XUY)/Num(X) = 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相互独立。

计算支持度、置信度、提升度

全部声量:100            宝宝月龄声量:45            产地声量:19          宝宝月龄与产地交集:10

宝宝月龄-产地支持度:10/100

宝宝月龄-产地置信度:10/45

宝宝月龄-产地提升度:(10/45) /  (19/100)

以上是关于关联分析--概述(项集、关联规则、支持度、置信度、提升度)的主要内容,如果未能解决你的问题,请参考以下文章

频繁项集?关联规则?支持度?置信度?

关联规则之Apriori算法

python实现apriori算法的关联规则之支持度置信度提升度

python实现apriori算法的关联规则之支持度置信度提升度

R语言使用apriori算法进行关联规则挖掘实战:关联规则概念频繁项集支持度(support)置信度(confidence)提升度(lift)apriori算法

Python --深入浅出Apriori关联分析算法 Apriori关联规则实战