[精选]数据挖掘导论之频繁模式及关联规则挖掘技术.pptx
第3课 频繁模式及关联规则挖掘技术 副教授 内容提纲n关联规则挖掘简介n关联规则基本模型n关联规则价值衡量与开展n I.关联规则简介n关联规则反映一个事物与其他事物之间的相互依存性和关联性。如果两个或者多个事物之间存在一定的关联关系,那么,其中一个事物就能够通过其他事物预测到。n典型的关联规则发现问题是对超市中的货篮数据Market Basket进行分析。通过发现顾客放入货篮中的不同商品之间的关系来分析顾客的购置习惯。什么是关联规则挖掘n关联规则挖掘 首先被Agrawal,Imielinski and Swami在1993年的SIGMOD会议上提出在事务、关系数据库中的项集和对象中发现频繁模式、关联规则、相关性或者因果结构频繁模式:数据库中频繁出现的项集 n目的:发现数据中的规律超市数据中的什么产品会一起购置?啤酒和尿布在买了一台PC之后下一步会购置?哪种DNA对这种药物敏感?我们如何自动对Web文档进行分类?频繁模式挖掘的重要性n许多重要数据挖掘任务的基础关联、相关性、因果性序列模式、空间模式、时间模式、多维关联分类、聚类分析n更加广泛的用处购物篮分析、交叉销售、直销点击流分析、DNA序列分析等等II.关联规则基本模型n关联规则基本模型nApriori算法nFp-Tree算法I.关联规则基本模型 nIBM公司Almaden研究中心的R.Agrawal首先提出关联规则模型,并给出求解算法AIS。随后又出现了SETM和Apriori等算法。其中,Apriori是关联规则模型中的经典算法。给定一组事务产生所有的关联规则满足最小支持度和最小可信度关联规则基本模型续n设I=i1,i2,im为所有工程的集合,D为事务数据库,事务T是一个工程子集TI。每一个事务具有唯一的事务标识TID。设A是一个由工程构成的集合,称为项集。事务T包含项集A,当且仅当AT。如果项集A中包含k个工程,则称其为k项集。项集A在事务数据库D中出现的次数占D中总事务的百分比叫做项集的支持度。如果项集的支持度超过用户给定的最小支持度阈值,就称该项集是频繁项集或大项集。关联规则基本模型续n关联规则是形如XY的逻辑蕴含式,其中XI,YI,且XY=。如果事务数据库D中有s%的事务包含XY,则称关联规则XY的支持度为s%,实际上,支持度是一个概率值。假设项集X的支持度记为support X,规则的信任度为support XYsupport X。这是一个条件概率P Y|X。也就是:support XY=P X Y confidence XY=P Y|X 规则度量:支持度与可信度n查找所有的规则 X&Y Z 具有最小支持度和可信度支持度,s,一次交易中包含X、Y、Z的可能性可信度,c,包含X、Y的交易中也包含Z的条件概率设最小支持度为50%,最小可信度为 50%,则可得到A C 50%,66.6%C A 50%,100%买尿布的客买尿布的客户户二者都买二者都买的客户的客户买啤酒的客户买啤酒的客户关联规则基本模型续n关联规则就是支持度和信任度分别满足用户给定阈值的规则。n发现关联规则需要经历如下两个步骤:找出所有频繁项集。由频繁项集生成满足最小信任度阈值的规则。Let min_support=50%,min_conf =50%:A C 50%,66.7%C A 50%,100%Customerbuys diaperCustomerbuys bothCustomerbuys beerTransaction-idItems bought10A,B,C20A,C30A,D40B,E,FFor rule A C:support=supportAC=50%confidence=supportAC/supportA=66.6%Min.support 50%Min.confidence 50%Transaction-idItems bought10A,B,C20A,C30A,D40B,E,FFrequent patternSupportA75%B50%C50%A,C50%II.Apriori算法的步骤nApriori算法命名源于算法使用了频繁项集性质的先验Prior知识。nApriori算法将发现关联规则的过程分为两个步骤:通过迭代,检索出事务数据库中的所有频繁项集,即支持度不低于用户设定的阈值的项集;利用频繁项集构造出满足用户最小信任度的规则。n挖掘或识别出所有频繁项集是该算法的核心,占整个计算量的大局部。频繁项集n为了防止计算所有项集的支持度实际上频繁项集只占很少一局部,Apriori算法引入潜在频繁项集的概念。假设潜在频繁k项集的集合记为Ck,频繁k项集的集合记为Lk,m个工程构成的k项集的集合为 ,则三者之间满足关系Lk Ck 。构成潜在频繁项集所遵循的原则是“频繁项集的子集必为频繁项集。关联规则的性质:n性质1:频繁项集的子集必为频繁项集。n性质2:非频繁项集的超集一定是非频繁的。nApriori算法运用性质1,通过的频繁项集构成长度更大的项集,并将其称为潜在频繁项集。潜在频繁k项集的集合Ck 是指由有可能成为频繁k项集的项集组成的集合。以后只需计算潜在频繁项集的支持度,而不必计算所有不同项集的支持度,因此在一定程度上减少了计算量。Apriori算法n1 L1=频繁1项集;n2 fork=2;Lk-1;k+do begin n3 Ck=apriori_genLk-1;/新的潜在频繁项集 n4 for all transactions tD do begin n5 Ct=subsetCk,t;/t中包含的潜在频繁项集 n6 for all candidates cCt do n7 c.count+;n8 end;n9 Lk=cCk|c.countminsup n10 end;n11 Answer=实例Database TDB1st scanC1L1L2C2C22nd scanC3L33rd scanTidItems10A,C,D20B,C,E30A,B,C,E40B,EItemsetsupA2B3C3D1E3ItemsetsupA2B3C3E3ItemsetA,BA,CA,EB,CB,EC,EItemsetsupA,B1A,C2A,E1B,C2B,E3C,E2ItemsetsupA,C2B,C2B,E3C,E2ItemsetB,C,EItemsetsupB,C,E2Visualization of Association Rules:Pane GraphVisualization of Association Rules:Rule Graph提高Apriori算法的方法nHash-based itemset counting散列项集计数nTransaction reduction事务压缩nPartitioning划分nSampling采样关联规则挖掘算法nAgrawal等人提出的AIS,Apriori和AprioriTidnCumulate和Stratify,Houstsma等人提出的SETMnPark等人提出的DHPnSavasere等人的PARTITIONnHan等人提出的不生成候选集直接生成频繁模式FPGrowthn其中最有效和有影响的算法为Apriori,DHP和PARTITION,FPGrowth。n用Frequent-Pattern tree FP-tree 结构压缩数据库,高度浓缩,同时对频繁集的挖掘又完备的防止代价较高的数据库扫描n开发一种高效的基于FP-tree的频繁集挖掘算法采用分而治之的方法学:分解数据挖掘任务为小任务防止生成关联规则:只使用局部数据库!挖掘频繁集挖掘频繁集 不用生成候选集不用生成候选集f:4c:1b:1p:1b:1c:3a:3b:1m:2p:2m:1头表头表Item frequency head f4c4a3b3m3p3最小支持度最小支持度=0.5TIDItems bought ordered frequent items100f,a,c,d,g,i,m,pf,c,a,m,p200a,b,c,f,l,m,of,c,a,b,m300 b,f,h,j,of,b400 b,c,k,s,pc,b,p500 a,f,c,e,l,p,m,nf,c,a,m,p步骤:1.扫描数据库一次,得到频繁1-项集2.把项按支持度递减排序3.再一次扫描数据库,建立FP-tree建立建立 FP-tree树树n完备:不会打破交易中的任何模式包含了频繁模式挖掘所需的全部信息n紧密去除不相关信息不包含非频繁项支持度降序排列:支持度高的项在FP-tree中共享的时机也高决不会比原数据库大如果不计算树节点的额外开销FP-tree 结构的好处结构的好处n基本思想 分而治之用FP-tree递归增长频繁集n方法 对每个项,生成它的 条件模式库,然后是它的 条件 FP-tree对每个新生成的条件FP-tree,重复这个步骤直到结果FP-tree为空,或只含唯一的一个路径 此路径的每个子路径对应的项集都是频繁集用用FP-tree挖掘频繁集挖掘频繁集1)为FP-tree中的每个节点生成条件模式库2)用条件模式库构造对应的条件FP-tree3)递归构造条件 FP-trees 同时增长其包含的频繁集如果条件FP-tree只包含一个路径,则直接生成所包含的频繁集。如果条件FP-tree包含多个路径,则采用混合的方法挖掘挖掘 FP-tree的主要步骤的主要步骤n从FP-tree的头表开始n按照每个频繁项的连接遍历 FP-treen列出能够到达此项的所有前缀路径,得到条件模式库条件模式库条件模式库itemcond.pattern basecf:3afc:3bfca:1,f:1,c:1mfca:2,fcab:1pfcam:2,cb:1f:4c:1b:1p:1b:1c:3a:3b:1m:2p:2m:1头表头表Item frequency head f4c4a3b3m3p3步骤步骤1:从从 FP-tree 到条件模式库到条件模式库nNode-link propertyFor any frequent item ai,all the possible patterns containing only frequent items and ai can be obtained by following ais node-links,starting from ais head in the fp-tree header.nPrefix path propertyTo calculate the frequent patterns with suffix ai,only the prefix subpathes of nodes labeled ai in the FP-tree need to be accumulated,and the frequency count of every node in the prefix path should carry the same count as that in the corresponding node ai in the path.FP-tree支持条件模式库构造的属性支持条件模式库构造的属性n对每个模式库计算库中每个项的支持度用模式库中的频繁项建立FP-treem-条件模式库条件模式库:fca:2,fcab:1f:3c:3a:3m-conditional FP-treeAll frequent patterns concerning mm,fm,cm,am,fcm,fam,cam,fcamf:4c:1b:1p:1b:1c:3a:3b:1m:2p:2m:1头表头表Item frequency head f4c4a3b3m3p3步骤步骤2:建立条件建立条件 FP-treeEmptyEmptyf(f:3)|c(f:3)c(f:3,c:3)|a(fc:3)aEmpty(fca:1),(f:1),(c:1)b(f:3,c:3,a:3)|m(fca:2),(fcab:1)m(c:3)|p(fcam:2),(cb:1)p条件FP-tree条件模式库项通过建立条件模式库得到频繁集通过建立条件模式库得到频繁集f:3c:3a:3m-条件 FP-tree“am的条件模式库:fc:3f:3c:3am-条件 FP-tree“cm的条件模式:f:3f:3cm-条件 FP-tree“cam条件模式库:f:3f:3cam-条件 FP-tree递归挖掘条件递归挖掘条件FP-treeIII.关联规则价值衡量与开展n关联规则价值衡量n关联规则最新进展I.规则价值衡量 n对关联规则的评价与价值衡量涉及两个层面:系统客观的层面用户主观的层面系统客观层面 n使用“支持度和信任度框架可能会产生一些不正确的规则。只凭支持度和信任度阈值未必总能找出符合实际的规则。用户主观层面 n只有用户才能决定规则的有效性、可行性。所以,应该将用户的需求和系统更加紧密地结合起来。n可以采用基于约束Consraint-based的数据挖掘方法。具体约束的内容有:数据约束、限定数据挖掘的维和层次、规则约束。n如果把某些约束条件与算法紧密结合,既能提高数据挖掘效率,又能明确数据挖掘的目标。II.关联规则新进展 n在基于一维布尔型关联规则的算法研究中先后出现了AIS、SETM等数据挖掘算法。nR.Agrawal等人提出的Apriori 是经典算法。随后的关联规则发现算法大多数建立在Apriori算法基础上,或进行改造,或衍生变种。比方AprioriTid和AprioriHybrid算法。nLin等人提出解决规则挖掘算法中的数据倾斜问题,从而使算法具有较好的均衡性。Park等人提出把哈希表结构用于关联规则挖掘。关联规则新进展续n数据挖掘工作是在海量数据库上进行的,数据库的规模对规则的挖掘时间有很大影响。nAgrawal首先提出事务缩减技术,Han和Park等人也分别在减小数据规模上做了一些工作。n抽样的方法是由Toivonen提出的。nBrin等人采用动态项集计数方法求解频繁项集。nAggarwal提出用图论和格的理论求解频繁项集的方法。Prutax算法就是用格遍历的方法求解频繁项集。关联规则新进展续n关联规则模型有很多扩展,如顺序模型挖掘,在顺序时间段上进行挖掘等。n还有挖掘空间关联规则,挖掘周期性关联规则,挖掘负关联规则,挖掘交易内部关联规则等。nGuralnik提出顺序时间段问题的形式描述语言,以便描述用户感兴趣的时间段,并且构建了有效的数据结构SP树顺序模式树和自底向上的数据挖掘算法。n最大模式挖掘是Bayardo等人提出来的。关联规则新进展续n随后人们开始探讨频率接近项集。Pei给出了一种有效的数据挖掘算法。nB.zden等人的周期性关联规则是针对具有时间属性的事务数据库,发现在规律性的时间间隔中满足最小支持度和信任度的规则。n贝尔实验室的S.Ramaswamy等人进一步开展了周期性关联规则,提出挖掘符合日历的关联规则Calendric Association Rules算法,用以进行市场货篮分析。nFang等人给出冰山查询数据挖掘算法。关联规则新进展续nT.Hannu等人把负边界引入规则发现算法中,每次挖掘不仅保存频繁项集,而且同时保存负边界,到达下次挖掘时减少扫描次数的目的。nSrikant等人通过研究关联规则的上下文,提出规则兴趣度尺度用以剔除冗余规则。nZakia还用项集聚类技术求解最大的近似潜在频繁项集,然后用格迁移思想生成每个聚类中的频繁项集。nCAR,也叫分类关联规则,是Lin等人提出的一种新的分类方法,是分类技术与关联规则思想相结合的产物,并给出解决方案和算法。关联规则新进展续nCheung等人提出关联规则的增量算法。nThomas等人把负边界的概念引入其中,进一步开展了增量算法。如,基于Apriori框架的并行和分布式数据挖掘算法。nOates等人将MSDD算法改造为分布式算法。还有其他的并行算法,如利用垂直数据库探求项集聚类等。nAgrawal R,Imielinski T,and Swami A.Mining association rules between sets of items in large databases.SIGMOD,207-216,1993.nAgrawal R,and Srikant R.Fast algorithms for mining association rules in large databases.VLDB,478-499,1994.nHan J W,Pei J,Yin Y W.Mining frequent patterns without candidate generation.SIGMOD,1-12,2000.nHan J W,Pei J,Yin Y W,and Mao R Y.Mining frequent patterns without candidate generation:a frequent-pattern tree approach.Data Mining and Knowledge Discovery.8,53-87,20049、静夜四无邻,荒居旧业贫。4月-234月-23Tuesday,April 18,202310、雨中黄叶树,灯下白头人。08:41:4708:41:4708:414/18/2023 8:41:47 AM11、以我独沈久,愧君相见频。4月-2308:41:4708:41Apr-2318-Apr-2312、故人江海别,几度隔山川。08:41:4708:41:4708:41Tuesday,April 18,202313、乍见翻疑梦,相悲各问年。4月-234月-2308:41:4708:41:47April 18,202314、他乡生白发,旧国见青山。18 四月 20238:41:47 上午08:41:474月-2315、比不了得就不比,得不到的就不要。四月 238:41 上午4月-2308:41April 18,202316、行动出成果,工作出财富。2023/4/18 8:41:4708:41:4718 April 202317、做前,能够环视四周;做时,你只能或者最好沿着以脚为起点的射线向前。8:41:47 上午8:41 上午08:41:474月-239、没有失败,只有暂时停止成功!。4月-234月-23Tuesday,April 18,202310、很多事情努力了未必有结果,但是不努力却什么改变也没有。08:41:4708:41:4708:414/18/2023 8:41:47 AM11、成功就是日复一日那一点点小小努力的积累。4月-2308:41:4708:41Apr-2318-Apr-2312、世间成事,不求其绝对圆满,留一份缺乏,可得无限完美。08:41:4708:41:4708:41Tuesday,April 18,202313、不知香积寺,数里入云峰。4月-234月-2308:41:4708:41:47April 18,202314、意志坚强的人能把世界放在手中像泥块一样任意揉捏。18 四月 20238:41:47 上午08:41:474月-2315、楚塞三湘接,荆门九派通。四月 238:41 上午4月-2308:41April 18,202316、少年十五二十时,步行夺得胡马骑。2023/4/18 8:41:4708:41:4718 April 202317、空山新雨后,天气晚来秋。8:41:47 上午8:41 上午08:41:474月-239、杨柳散和风,青山澹吾虑。4月-234月-23Tuesday,April 18,202310、阅读一切好书如同和过去最杰出的人谈话。08:41:4708:41:4708:414/18/2023 8:41:47 AM11、越是没有本领的就越加自命非凡。4月-2308:41:4708:41Apr-2318-Apr-2312、越是无能的人,越喜欢挑剔别人的错儿。08:41:4708:41:4708:41Tuesday,April 18,202313、知人者智,自知者明。胜人者有力,自胜者强。4月-234月-2308:41:4708:41:47April 18,202314、意志坚强的人能把世界放在手中像泥块一样任意揉捏。18 四月 20238:41:47 上午08:41:474月-2315、最具挑战性的挑战莫过于提升自我。四月 238:41 上午4月-2308:41April 18,202316、业余生活要有意义,不要越轨。2023/4/18 8:41:4708:41:4718 April 202317、一个人即使已登上顶峰,也仍要自强不息。8:41:47 上午8:41 上午08:41:474月-23MOMODA POWERPOINTLorem ipsum dolor sit amet,consectetur adipiscing elit.Fusce id urna blandit,eleifend nulla ac,fringilla purus.Nulla iaculis tempor felis ut cursus.感感 谢谢 您您 的的 下下 载载 观观 看看专家告诉