1、第2章 基本数据挖掘技术 之 二,关联规则,2.2 关联规则,关联分析(AssociationAnalysis)关联分析是发现事物之间关联关系(Associations)的分析过程。典型应用就是购物篮分析(MarketBasketAnalysis)。购物篮分析确定顾客在一次购物中可能一起购买的商品,发现其购物篮中不同商品之间的联系,分析顾客的购买习惯,从而发现购买行为之间的关联。关联关系以一组特殊的规则形式出现关联规则(Association Rules),2018年6月17日星期日,第2页,共15页,2.2.1 关联规则概述,一般表现为蕴涵式规则形式:XY。其中X和Y分别称为关联规则的前提或
2、先导条件(Antecedent)和结果或后继(Consequent)。关联规则与产生式规则有两点不同(1)在某条关联规则中以前提条件出现的属性可以出现在下一条关联规则的结果中。(2)传统的用于分类的产生式规则的结果中仅能有一个属性,而关联规则中则允许其结果包含一个或多个属性。,2018年6月17日星期日,第3页,共15页,【例2.4】,根据顾客实际购买行为数据(表2.3,值为1表示购买了该种商品;值为0表示未购买该种商品),分析顾客在网络购物中购买图书、运动鞋、耳机、DVD和果汁五种商品时,是否存在购买行为上的关联。,表2.3 网络购物交易记录表,2018年6月17日星期日,第5页,共15页,
3、表2.3 网络购物交易记录表,置信度(Confidence)和支持度(Support),若得到4条关联关系(1)如果顾客购买了Sneaker(运动鞋),那么他们也会购买Earphone(耳机)。(2)如果顾客购买了Book(图书),那么他们也会购买Juice(果汁)。(3)如果顾客购买了Book(图书)和DVD,那么他们也会购买Earphone(耳机)。(4)如果顾客购买了Book(图书)、Sneaker(运动鞋)和Earphone(耳机),那么他们也会购买DVD。使用置信度度量每个关联规则在前提条件下结果发生的可能性。关联关系(1)的置信度为:3/5 = 60%。使用支持度度量包含了关联关系
4、中出现的属性值的交易占所有交易的百分比。关联关系(1)的支持度为:3/10 = 30%关联分析过程中设置置信度和支持度的阈值,当得到的关联关系达到置信度和支持度的阈值时,这样的关联关系被认为是有趣的,而保留下来应用到实际问题中。,2018年6月17日星期日,第6页,共15页,2.2.2 关联分析,1993年,阿戈沃(Agrawal)等人提出了著名的关联分析算法Apriori算法。Apriori算法的基本思想(1)生成条目集(Item Sets)。条目集是符合一定的支持度要求的“属性-值”的组合。那些不符合支持度要求的“属性-值”组合被丢弃,因此,规则的生成过程可以在合理的时间内完成。(2)使用
5、生成的条目集创建一组关联规则。,2018年6月17日星期日,第7页,共15页,【例2.5】,将表2.3作为数据集,使用Apriori算法进行关联分析,产生描述网络购买行为的关联规则。,步骤,(1)设置支持度阈值为50%,创建第一个条目集表,包含单项条目。,2018年6月17日星期日,第9页,共15页,表2.4 网络购物行为关联分析条目表1,步骤,(2)设置支持度阈值为40%,创建第二个条目集表,包含双项条目,2018年6月17日星期日,第10页,共15页,表2.5 网络购物行为关联分析条目表2,步骤,(3)仍将支持度阈值设置为40%,使用双项条目表中的“属性-值”组合生成三项条目集,有两条条目
6、。Book =1 & Earphone = 1& DVD = 1Sneaker =0 & Earphone = 1 & DVD = 1(4)再次将支持度阈值设置为40%,以三项条目集为基础,生成四项条目集,没有符合支持度要求的条目,条目集生成工作结束。,2018年6月17日星期日,第11页,共15页,步骤,(5)以生成的条目集为基础创建关联规则。首先设置置信度阈值为80%;然后从双项和三项条目集表中生成关联规则;最后,所有不满足置信度阈值的规则将被删除。以双项条目集中的第一条条目生成的两条规则IF Book =1 THEN Earphone = 1 (置信度:4/5 = 80%,保留)IF E
7、arphone = 1 THEN Book =1(置信度:4/7 = 57.1%,删除)以三项条目集中的第一条条目生成的三条规则IF Book =1 & Earphone = 1 THEN DVD = 1(置信度:4/4 = 100%,保留)IF Book =1 & DVD = 1 THEN Earphone = 1(置信度:4/4 = 100%,保留)IF Earphone = 1 & DVD = 1 THEN Book =1(置信度:4/6 = 66.7%,删除),2018年6月17日星期日,第12页,共15页,【例2.6】,使用Weka的Apriori算法为表2.3生成关联规则。,实验结果,2018年6月17日星期日,第14页,共15页,图2.17Apriori算法输出结果,2.2.3 关联规则小结,优势关联规则不受因变量个数的限制,能够在大型数据库中发现数据之间的关联关系,所以其应用非常广泛。局限性一次关联分析输出的规则往往数量较多,且多数并无利用价值,所以对关联规则的解释和应用必须谨慎。,2018年6月17日星期日,第15页,共15页,