智能推荐2--关联分析课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《智能推荐2--关联分析课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 推荐 关联 分析 课件
- 资源描述:
-
1、主讲 张荣梅2014.10数据挖掘导论关联规则数据挖掘算法功能根据所挖掘知识的类型不同:为了反映事物之间依赖或关联的为了反映事物之间依赖或关联的为了反映同类事物共同性质的为了反映事物各方面特征的为了反映不同事物之间属性差别的根据历史的和当前的数据推测未来数据揭示事物偏离常规的异常现象数据挖掘技术数据挖掘技术关联(关联(AssociationAssociation)分类(分类(ClassificationClassification)预测(预测(PredictionPrediction)聚类(聚类(ClusteringClustering)WebWeb挖掘技术挖掘技术 3 3 挖掘频繁模式和关联
2、规则挖掘频繁模式和关联规则3.1 基本概念3.2 Apriori算法3.3 其他算法概述 3.1 3.1 关联的基本概念关联的基本概念若两个或多个变量的取值之间存在某种规律性,就称为关联。关联规则是寻找同一事件中出现的不同项的相关性,比如在一次购买活动中所购买不同商品的相关性。关联分析即利用关联规则进行数据挖掘。购物篮模型 典型案例-啤酒与尿布啤酒与尿布在商业应用中常用关联分析最典型的例子就是一家连锁店(沃尔玛)通过数据挖掘发现了小孩尿布与啤酒之间有着内在的联系,即“啤酒与尿布啤酒与尿布”的故事。在美国,一些年轻(2535岁)的父亲下班后经常要到超市去买婴儿尿布,超市也因此发现了一个规律,在购
3、买婴儿尿布的年轻父亲们中,有3040%的人同时要买一些啤酒。超市随后调整了货架的摆放,把尿布与啤酒放在一起,明显增加了销售额。Customerbuys diaperCustomerbuys bothCustomerbuys beer“啤酒与尿布”的关联规则更多举例e.g: 在购买铁锤的顾客当中,有70的人同时购买了铁钉。关联的基本概念关联的基本概念关联关联 自然界中某种事物发生时其他事物也会发生,则这种联系称之为关联。反映事件之间依赖或关联的知识称为关联型知识(又称依赖关系)。关联的类型关联的类型 分为简单关联、时序关联、因果关联。关联规则关联规则 关联是两个或多个变量取值之间存在的一类重要的
4、可被发现的某种规律性。关联的基本概念关联的基本概念关联规则的数学定义关联规则的数学定义 设I=i1, i2, .,im 是一个以m个不同项的集合,任务相关的数据D是数据库事务(交易)的集合,其中每个事务T是针对I的项的集合,即每一笔交易包含若干个属于I的项。关联规则可表示为:X=YX=Y,其中,其中X,Y X,Y I I 且且 X X Y= Y= X称为规则的前提或前项,Y称为结果或后项。规则X=YX=Y在事务集D D中成立,具有支持度支持度s s,具有置信度置信度c.c. 有两个度量标准:支持度(Support)和可信度(Confidence)。 规则的支持度s定义为D中事务包含X U Y
5、X U Y 的百分比,即概率百分比,即概率P(XP(X UY) Y) : support (X=Y) =support (X U Y)=P(Xsupport (X=Y) =support (X U Y)=P(X UY)Y) 规则的可信度c定义为D中包含X的事务同时也包含Y的百分比,即条件概率P(Y|X)。 confidence(X= Y)=support(X U Y)/support(X)=P(Y|X)关联规则的形式关联规则的形式 R: X= Y 其中,X及Y是两个不相交的集合,即X,YI且X Y= 关联规则可以理解为一个命题,即如果一个交易支持项集X,则它也以一定的可能性支持项集Y,这一可能
6、性称之为规则的可信度,记为conf(R)或C (R)规则形式举例举例Body Head support, confidencebuys(x, “diapers”) buys(x, “beers”) 2%, 60%major(x, “CS”) takes(x, “DB”) grade(x , “A”) 5%, 75%关联规则挖掘应用实例关联规则挖掘应用实例 通过发现顾客放入其购物篮中不同商品之间的联系,分析顾客的购买习惯。 通过了解哪些商品频繁频繁地被顾客同时同时购买,这种关联的发现可以帮助零售商制定营销策略。 例如,在同一次购物中,如果顾客购买牛奶的同时,也购买面包(和什么类型的面包)的可能性
7、有多大? 这种信息可以引导销售,可以帮助零售商有选择地经销和安排货架。例如,将牛奶和面包尽可能放近一些,可以进一步刺激一次去商店同时购买这些商品。关联规则挖掘实例关联规则挖掘实例购物篮分析购物篮分析哪些商品频繁地被顾客同时购买?3.2 Apriori关联规则挖掘算法关联规则挖掘是从事务数据库、关系数据库和其它信息存储中的大量数据项集之间发现有趣的、频繁出现的模式、关联和相关性。关联规则挖掘步骤一般分为2个步骤:依据支持度找出所有的频繁项集。 (频度)依据置信度产生关联规则。 (强度)可以根据兴趣度,找出有兴趣的关联规则。先验算法购物篮模型中的有关概念项商品事务-交易,购物篮项集项集-每个购物篮
8、由多个项组成的集合。包含k个项的项集称为k项集。milk,bread是一个2项集。支持度支持度-项集的频率,是指包含项集的事务数。如果A是一个项集,A的支持度是指包含A的购物篮的数目。频繁项集频繁项集-一个在多个购物篮中出现的项集。假定最小支持度阈值为s。如果A的支持度不小于s,则称A是频繁项集。置信度置信度-可信度。规则AB的可信度等于集合AB的支持度与A的支持度的比值兴趣度-关联规则AB的兴趣度定义为其可信度与包含B的购物篮的比率之差。如果为负值或接近于0,则表示关联规则不十分有趣。关联挖掘实例-最简单的关联规则挖掘Transaction ID Items Bought2000A,B,C1
9、000A,C4000A,D5000B,E,FFrequent Itemset SupportA75%B50%C50%A,C50%单维、单层、布尔关联规则挖掘Minsupport =50%Minconfidence =50% For rule A Csupport = support(A C) = 50%confidence = support(A C)/support(A) = 66.7%For C A (50%, 100%)这就是 Apriori 算法算法Apriori 性质:性质:Any subset of a frequent itemset must be frequent Aprio
10、ri算法 Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。Apriori Apriori 算法的步骤算法的步骤-使用候选产生发现频繁项集。(1)由候选项集(candidate itemset)产生频繁项集(frequent itemset); (2)由频繁项集(frequent itemset)产生强关联规则(strong association rule)。vApriori 使用一种称作的迭代方法,v首先,通过扫描数据库,累积每个项的计数,并收集满足最小支持度的项,找出频繁“1项集”的集合。该集合记作L1。然后,L1用于找频繁“2项集”的集合L2,而L2用于找L3,如此下去
11、,直到不能再找到频繁“K项集”。找每个LK需要一次数据库全扫描。v为了提高频繁项集逐层产生的效率,一种称作的重要性质用于压缩搜索空间。任一频繁项集的所有非空子集也必须是频繁的。反之,如果某个候选的非空子集不是频繁的,那么该候选肯定不是频繁的。v目的:过滤候选项集,减少工作量。v用频繁项集Lk-1找频繁项集Lk(k=2),由两步组成:连接步和剪枝步。v(1)连接步连接步:为找Lk ,通过将Lk-1与自身连接产生候选k项集的集合Ck。然后扫描数据库,确定Ck中每个候选项的计数,从而确定Lk。 Ck= Lk-1Lk-1自连接:按字典顺序连接 (2)剪枝步剪枝步: :根据如果k项集的(k-1)项子集不
12、在Lk-1 中,则该候选也不可能是频繁的,从而可以从Ck中删除。 v频繁项集发现过程:v(1)扫描v(2)计数v(3)比较v(4)产生频繁项集v(5)连接、剪枝,产生候选项集v重复步骤(1)(5)直到不能发现更大频集步骤2:产生关联规则根据前面提到的置信度的定义,关联规则的产生如下:(1)对于每个频繁项集L,产生L的所有非空子集;(2)对于L的每个非空子集S,如果则输出规则“S LS”。注:LS表示在项集L中除去S子集的项集。 举 例由频繁项集产生关联规则频繁项集l=B,C,EL的非空子集有:B,CB,EC.EBCE,得出关联规则如下:BC=E BC=E ,confidence=2/2=100
13、%B E=C ,confidence=2/3=66.7%C E=B C E=B ,confidence=2/2=100%B=C E ,confidence=2/3=66.7%C=B E ,confidence=2/3=66.7%E=B C ,confidence=2/3=66.7%如果最小置信度阈值为70%,则只有上面的1,3规则可以输出。Apriori算法伪代码算法: Apriori,使用逐层迭代方法基于候选产生找出频繁项集输入:D:事务数据库 min_sup:最小支持度阈值输出:L:D中的频繁项集方法: (1) L 1 = find_frequent_1_itemsets(D); (2)
14、for (k=2;L k-1 ;k+) (3) C k = apriori_gen(L= apriori_gen(L k-1 );(4) for each transaction t D /scan D for counts(5) C t = subset(C k,t);/get the subsets of t that are candidates(6) for each candidate c C t(7) c.count+;(8) (9) L k =c Ck|c.countmin_sup(10) (11) return L= k L k;连接步和剪枝步第1 步:连接(join) Pro
15、cedure apriori_gen(L k -1:frequent(k- 1) itemset) 1) for each itemset l 1L k-1 2) for each itemset l 2L k-1 3) if (l 11=l 21)(l 1k-2=l 2k-2)(l1k-1 l 2k-1)then 4) c=l1 l2;/连接, 产生候选集 5) if has_infrequent_subsethas_infrequent_subset(c,L k-1 ) then 6) delete c;/修剪, 去掉无用的候选项 7) else add c to C k; 8) 9) r
16、eturn C k; 连接步和剪枝步第2 步: 剪枝(prune) procedure has_infrequent_subset(c: candidate k itemset;L k-1 : frequent(k- 1)itemset);/使用先验知识 1) for each (k- 1)subset s of c2) if s L k-1 then 3) return true; 4) return false; AprioriApriori算法的基本流程算法的基本流程使用逐层搜索的迭代方法,通过对数据库的多次扫描发现所有的频繁项集。在每一趟扫描中只考虑具有同一长度k(即为项集中所含项目的
17、个数)的所有项集。算法的第一次扫描仅仅计算每个项目的具体支持度,以确定长度为1的频繁项集。在后继的每一次扫描中,首先使用在前一次获得的频繁项集Lk-1和Apriori-gen函数产生的候选项集q,接着扫描数据库,计算Ck中候选项的支持度,最后确定候选项集中哪些真正成为频繁项集。重复上述过程直到再也发现不了新的频繁项集为止。TID Items100 1 3 4200 2 3 5300 1 2 3 5400 2 5Database Ditemset sup.1223334153itemset sup.12233353Scan DC1L1itemset1 21 31 52 32 53 5itemse
18、t sup1 211 321 512 322 533 52itemset sup1 322 322 533 52L2C2C2Scan DC3L3itemset2 3 5Scan Ditemset sup2 3 52Apriori算法实例设定最小支持度阈值为2 练习题练习题下表是某商店的事务数据库D,数据库中有9个事务。试用Apriori算法找出其关联规则。TIDTID商品商品IDID列表列表T100I1,I2,I5T200I2.I4T300I2,I3T400I1,I2,I4T500I1,I3T600I2,I3T700I1,I3T800I1,I2,I3,I5T900I1,I2,I3设定最小支持度
19、阈值为2 扫描D,对每个候选项计数,生成C1:项集支持度计数I16I27I36I42I52比较候选项支持度计数与最小支持度计数,生成L1: 项集支持度计数I16I27I36I42I52由L1产生候选集C2: 项集I1,I2I1,I3I1,I4I1,I5I2,I3I2,I4I2,I5I3,I4I3,I5I4,I5再次扫描D,对每个候选项计数,产生L2: 项集支持度计数I1,I24I1,I34I1,I52I2,I34I2,I42I2,I52对L2进行连接&剪枝,产生C3,即最终结果。 由频繁项集产生关联规则:L1=I1,I2,I5的非空子集有:I1,I2I1,I5I2,I5I1I2I5,结果关联规
20、则如下:I1 I2=I5 confidence=2/4=50% 如果最小置信度阈值为70%,则2I1I1 I5=I2 I5=I2 confidence=2/2=100% 3,6条规则可以输出。I2I2 I5=I1 I5=I1 confidence=2/2=100% 请写出第请写出第2 2个频繁项集的关联规则个频繁项集的关联规则I1= I2 I5 confidence=2/6=33%I2=I1 I5 confidence=2/7=29%I5=I1I5=I1 I2 I2 confidence=2/2=100%项集I1,I2,I3I1,I2,I5支持度计数22Apriori Apriori 算法的局
21、限性算法的局限性可能需要产生大量候选项集。例如,如果有104个频繁1项集,可能产生107个候选2项集。可能需要重复扫描数据库,通过模式匹配检查一个很大的候选集合。由于依赖于候选项集产生频繁项集的理论(Apriori类算法)所开发的算法具有先天的弱点,使得在基于Apriori算法开发的应用没有实质性突破。 FP-growthFP-growth算法算法- -频繁模式增长频繁模式增长Han等提出的一种新的算法理论,用一种压缩的数据结构(FP-tree)存储关联规则挖掘所需的全部数据信息,通过对源数据的两次扫描,将数据信息存到这种结构里,避开了产生候选项集的步骤,极大地减少了数据交换和频繁匹配的开销。
展开阅读全文