关联规则挖掘课件_第1页
关联规则挖掘课件_第2页
关联规则挖掘课件_第3页
关联规则挖掘课件_第4页
关联规则挖掘课件_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关联规则挖掘1第八章第八章 关联规则的挖掘关联规则的挖掘一、关联规则挖掘的含义一、关联规则挖掘的含义n关联规则用于表示关联规则用于表示oltp数据库中诸多属性(项集)之数据库中诸多属性(项集)之间的关联程度。间的关联程度。n关联规则挖掘(关联规则挖掘( association rules mining)则是)则是利用数据库中的大量数据通过关联算法寻找属性间的相利用数据库中的大量数据通过关联算法寻找属性间的相关性。关性。 n例:例:(超级市场超级市场)在购买商品在购买商品a的客户中有的客户中有90%的人会同的人会同时购买商品时购买商品b,则可用关联规则表示为:,则可用关联规则表示为:ab关联规则

2、挖掘2关联规则o支持度支持度(support):同时购买同时购买a和和b的客户人数的客户人数占总客户数的百分比称为规则的支持度。占总客户数的百分比称为规则的支持度。o置信度置信度(confidence):同时购买同时购买a和和b的客户人的客户人数占购买数占购买a的客户人数的百分比称为规则的置信度。的客户人数的百分比称为规则的置信度。o由于在实际应用中,概率由于在实际应用中,概率p一般是无法事先给出的,一般是无法事先给出的,所以常以频度代替所以常以频度代替()()support abp ab)()()|()(apbapabpbaconfidence关联规则挖掘3购买购买a的顾客的顾客购买购买b的

3、顾客的顾客同时购买同时购买a和和b的顾客(的顾客(a b)关联规则(图示)关联规则挖掘4有意义的关联规则o为了发现出有意义的关联规则,需要给定两为了发现出有意义的关联规则,需要给定两个阈值:个阈值:最小支持度和最小置信度最小支持度和最小置信度。o关联规则挖掘的实质是在数据集合中寻找满关联规则挖掘的实质是在数据集合中寻找满足用户给定的最小支持度和最小置信度的规足用户给定的最小支持度和最小置信度的规则。例:交易情况如下表,要求最小支持度则。例:交易情况如下表,要求最小支持度为为50%, 最小可信度为最小可信度为 50%, 则可得到:则可得到:id号号购买的商品购买的商品001a,b,c002a,c

4、003a,d004b,e,fa a c (50%, 66.6%) c (50%, 66.6%)c c a (50%, 100%) a (50%, 100%)关联规则挖掘5二、关联规则挖掘算法二、关联规则挖掘算法apriorio1、术语、术语n项集:项集:在数据库中出现的属性值的集合。在数据库中出现的属性值的集合。nk_项集:包含项集:包含k个项的项集。个项的项集。n频繁项集:频繁项集:满足最小支持度要求的项集。满足最小支持度要求的项集。n关联规则一定是在满足用户的最小支持度要求关联规则一定是在满足用户的最小支持度要求的频繁项集中产生的,因此,关联规则挖掘也的频繁项集中产生的,因此,关联规则挖掘

5、也就是在数据库中寻找频繁项集的过程。就是在数据库中寻找频繁项集的过程。关联规则挖掘6示例交易号交易号购买的商品购买的商品001a,b,c002a,c003a,d004b,e,f例:例:项集:项集:a,b,c,d,e,f,.1_项集:项集:a,b,c,.,f2_项集:项集:a,b,a,c.频繁项集的任何子集也一定是频繁的!频繁项集的任何子集也一定是频繁的!关联规则挖掘72、关联规则分类、关联规则分类1)根据规则中所处理的)根据规则中所处理的值类型值类型布尔关联规则:规则考虑的关联项是否存在布尔关联规则:规则考虑的关联项是否存在量化关联规则:规则描述的是量化的项或属性间的量化关联规则:规则描述的是

6、量化的项或属性间的规则规则(1) ) 128kbuys(x,) sony(x,记忆棒的数码相机sonybuys(2) )buys(x,)42k.50k(x,)30.39(x,背投高清晰电视收入年龄关联规则挖掘82、关联规则分类、关联规则分类2)根据规则中所涉及的)根据规则中所涉及的数据维数据维n是单维的,涉及是单维的,涉及buys; n多维,涉及年龄、收入和多维,涉及年龄、收入和buys3)根据规则中所涉及的)根据规则中所涉及的抽象层抽象层 商品位于不同层,计算机的抽象层高,称为商品位于不同层,计算机的抽象层高,称为多层多层关联规则关联规则age(x,30.39)buys()age(x,30.

7、39)buys()台式机算机关联规则挖掘93、 apriori算法算法符号定义:符号定义: lk:k项频繁集的集合;项频繁集的集合; ck:k项集的候补集合项集的候补集合 步骤:步骤:连接连接: 用用 lk-1自连接得到自连接得到ck,(,(k2) 设设l1,l2是有两个有是有两个有k-1个有序项的项集,个有序项的项集,lji代表代表k-1个项的个项的第第i项项(j=1,2; i=1,2,k-1)。l1和和l2是可连接的是可连接的l1xl2,需满足:需满足: l11=l21 ,l12=l22,.,l1k-2=l2k-2, l1k-1 l2k-1,产生的项是:产生的项是: l11l12.l1k-

8、2l1k-1l2k-1(lji是有序的)是有序的)修剪修剪: 一个一个k-项集,如果它的一个项集,如果它的一个k-1项子集不是频繁的,那它本项子集不是频繁的,那它本身也不可能是频繁的。身也不可能是频繁的。例:例:l1=a,b,c , l2=a,b,d,l3=a,c,f则:则:l1 x l2=a,b,c,d l1 x l3,l2 x l3均为空均为空为什么为什么l1 x l3不生成不生成a,b,c,f? a,b,c ,a,b,f关联规则挖掘104、算法伪代码、算法伪代码 l1= 找频繁找频繁1_项集;项集;for (k = 2; lk !=; k+) ck= 由由 lk-1生成候补集合;生成候补

9、集合; for each t ck 计算计算t在数据集合中出现的次数;在数据集合中出现的次数; / min_support为最小支持度为最小支持度 if (出现计数小于出现计数小于min_support) 从从ck中剔除;中剔除; lk = ck; return k lk;关联规则挖掘115、关联规则挖掘示例(最小支持数最小支持数2) tid items100 1 3 4200 2 3 5300 1 2 3 5400 2 5数据库数据库 d扫描扫描 ditemset sup.1223334153c1itemsetsup1 211 321 512 322 53c23 52itemset1 21

10、31 52 32 53 5c2扫描扫描 dc3itemset2 3 5扫描扫描 dl3itemset sup2 3 52itemset sup.12233353l1itemset sup1 322 322 533 52l2关联规则挖掘126、产生的关联规则、产生的关联规则o前面的例子中,得到一个频繁集前面的例子中,得到一个频繁集 2,3,5,非空真子集有,非空真子集有2,3,5,2,3,2,5,3,5itemset sup.12233353l1itemset sup1 322 322 533 52l3itemset sup2 3 52l2规则:规则:2 3 3 5 53 3 2 2 5 55

11、5 2 2 3 32 2 3 3 5 52 2 5 5 3 33 3 5 5 2 2置信度:置信度:2/3=66%(2,3,5频度频度/2频度)频度)2/3=66%(2,3,5频度频度/3频度)频度)2/3=66%(2,3,5频度频度/5频度)频度)2/2=100%(2,3,5频度频度/2,3频度)频度)2/3=66%(2,3,5频度频度/2,5频度)频度)2/2=100% (2,3,5频度频度/3,5频度)频度)支持度支持度 :2/4=50%关联规则挖掘137、apriori 的性能瓶颈的性能瓶颈oapriori算法的核心算法的核心:n用频繁的用频繁的(k-1)_项集生成项集生成候选候选的频

12、繁的频繁 k_项集项集n用数据库扫描和模式匹配计算候选集的支持度用数据库扫描和模式匹配计算候选集的支持度oapriori 的瓶颈的瓶颈: 候选集生成候选集生成n巨大的候选集巨大的候选集:o104 个频繁个频繁1_项集要生成项集要生成 107 个候选个候选 2_项集项集o要找尺寸为要找尺寸为100的频繁模式,如的频繁模式,如 a1, a2, , a100, 你必须你必须先产生先产生2100 1030 个候选集(个候选集(1_项集)项集)n多次扫描数据库多次扫描数据库: o如果最长的模式是如果最长的模式是n的话,则需要的话,则需要n次数据库扫描次数据库扫描o为提高为提高apriori算法的性能,有

13、许多改进的算法。算法的性能,有许多改进的算法。关联规则挖掘148、如何在概念分层挖掘多层关联规则、如何在概念分层挖掘多层关联规则o一般采用自顶向下策略,由概念的顶层开始一般采用自顶向下策略,由概念的顶层开始向下,到较低的更特定的概念层,对每个概向下,到较低的更特定的概念层,对每个概念层的频繁集累加计数,直到不能再找到频念层的频繁集累加计数,直到不能再找到频繁项集。繁项集。o对于所有层使用一致的最小支持度对于所有层使用一致的最小支持度计算机计算机支持度支持度=10%台式机台式机支持度支持度=6%笔记本笔记本支持度支持度=4%层层1: minsup=5%层层2: minsup=5%非频繁非频繁关联

14、规则挖掘158、如何在概念分层挖掘多层关联规则、如何在概念分层挖掘多层关联规则o一般采用自顶向下策略,由概念层一般采用自顶向下策略,由概念层1开始向开始向下,到较低的更特定的概念层,对每个概念下,到较低的更特定的概念层,对每个概念层的频繁集累加计数,直到不能再找到频繁层的频繁集累加计数,直到不能再找到频繁项集。项集。n对于所有层使用一致的最小支持度对于所有层使用一致的最小支持度n在较低层使用递减的最小支持度在较低层使用递减的最小支持度计算机计算机支持度支持度=10%台式机台式机支持度支持度=6%笔记本笔记本支持度支持度=4%层层1: minsup=5%层层2: minsup=3%关联规则挖掘1

15、69、冗余的多层关联规则处理、冗余的多层关联规则处理 买笔记本买笔记本买打印机买打印机 支持度支持度=8%,置信度置信度=70% (1) 买买ibm笔记本笔记本买打印机买打印机 支持度支持度=2%,置信度置信度=72% (2)o规则规则2有用吗?它提供了新颖的信息吗?有用吗?它提供了新颖的信息吗?o从(从(1)的)的置信度置信度=70%推断:推断:买笔记本买笔记本同时买同时买打印机的交易数打印机的交易数/买笔记本交易数买笔记本交易数=70%。ibm笔记本属于笔记本,因此笔记本属于笔记本,因此置信度也应该在置信度也应该在70%左左右。由(右。由(2)实际为实际为72%,基本无差异。,基本无差异。

16、o如果后一个具有较小一般性的规则,它不提供新的如果后一个具有较小一般性的规则,它不提供新的信息,应当删除它!信息,应当删除它!关联规则挖掘179、冗余的多层关联规则处理、冗余的多层关联规则处理o 从(从(1)的)的支持度支持度=8%推断:推断:买笔记本买笔记本同时买打同时买打印机的交易数印机的交易数/总交易数总交易数=8%,假定从数据集中,假定从数据集中还发现,还发现,ibm笔记本在占整个笔记本销量的笔记本在占整个笔记本销量的25%。 则:买则:买ibm笔记本的支持度应该为笔记本的支持度应该为8%*25%=2%,由(,由(2)实际为实际为2%,两者相,两者相同。同。o如果一个规则的祖先,它的支

17、持度和置信度都接近如果一个规则的祖先,它的支持度和置信度都接近于该规则的于该规则的“期望期望”值,这个规则是冗余的。值,这个规则是冗余的。o结论:规则(结论:规则(2)不是有趣的,因为它不提供有趣)不是有趣的,因为它不提供有趣的信息的信息关联规则挖掘1810、关联规则的相关分析、关联规则的相关分析o强关联规则不一定有趣强关联规则不一定有趣o例:在例:在10000个交易中,个交易中,6000个顾客交易包含计个顾客交易包含计算机游戏,算机游戏,7500个顾客交易包含影碟机,个顾客交易包含影碟机,4000个个交易包含计算机游戏和影碟机。交易包含计算机游戏和影碟机。o规则其实是误导,因为购买影碟机的可能性是规则其实是误导,因为购买影碟机的可能性是75%,比比66%还大。事实是:计算机游戏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论