关联规则算法 .pptx

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关联规则算法;目录;关联规则(Association Rule Mining) : 最早是由Agrawal、R.Srikant提出(1994) 发现事务数据库、关系数据或其它信息库中项或数据对象集合间的频繁模式, 关联, 相关, 或因果关系结构 频繁模式: 在数据库中频繁出现的模式(项集, 序列等) 应用: 发现数据中的规律性 购物篮数据分析,交叉销售,分类设计,销售活动分析 Web日志(点击流)分析, DNA序列分析等;支持度 support 规则A?B在数据库D中具有支持度S,表示S是D中事务同时包含AB的百分比,它是概率P(AB) 置信度 confidence 规则A?B具有置信度C,表示C是包含A项集的同时也包含B项集,相对于包含A项集的百分比,这是条件概率P(B|A),即: 阈值,在事务数据库中找出有用的关联规则,需要由用户确定两个阈值:最小支持度阈值(min_sup)和最小置信度阈值(min_conf) 强规则, 同时满足最小支持度阈值和最小置信度阈值的规则;项集,项的集合称为项集(Itemset),包含k个项的项集称之为k-项集 频繁项集L,项集L的相对支持度满足预定义的最小支持度阈值,如频繁K-项集的集合通常记作LK 同时满足最小支持度(min_sup)和最小置信度(min_conf)的规则称之为关联规则,即 闭项集, 如果不存在真超项集Y使得Y与X在D中有相同的支持度计数,则X在D中是闭的. 极大闭项集, 如果X是频繁的,且不存在超项集Y使得X属于Y,并且Y在D中是频繁的. ;?;  基本思想:使用一种称作逐层搜索的迭代方法,K-项集用于探索(K+1)-项集。首先找出频繁1-项集的集合记为L1,L1用于找频繁2-项集的集合L2,而L2用于找L3,如此下去直到不能找到频繁K-项集LK。找每个LK需要一次数据库扫描。最后由频繁K-项集可直接产生强关联规则。 过程分为两步: 第一步:识别所有的频繁K-项集,并统计其频率; 第二步:由频繁K-项集产生强关联规则。依据搜索到的频繁K-项集,导出满足给定阈值条件的关联规则。;性质 先验性质:频繁项集的所有非空子集都是频繁项集 非频繁项集的所有超集都是非频繁项集(反单调性) 例: 如果{啤酒,尿布,坚果}是一个频繁的,则其子集{啤酒,尿布}、 {啤酒,坚果}、{尿布,坚果}都是频繁的; 如果{啤酒,坚果}是非频繁项集,则{啤酒,尿布,坚果}也是非频繁的.;1.连接步:为找LK,通过LK-1与自己连接产生候选K-项集的集合。该候选K-项集的集合记为CK,CK中包含2K个可能的项集。从LK-1中取出f1和f2,fj[j]表示fj的第j项。如果两者的前(k-2)个项相同(如果f1[1]=f2[1]∧f1[2]=f2[2]∧…∧f1[k-2] =f2[k-2]∧f1[k-1] f2[k-1],则LK-1的元素f1和f2是可以连接的),则进行连接f1⊕f2形成: {f1[1],f1[2],… ,f1[k-2],f1[k-1],f2[k-1]}。 ;2.剪枝步:Ck是Lk的超集,它的成员可以是频繁的,也可以不是频繁的,但所有的频繁k-项集都包含在Ck中。扫描数据库,确定Ck中每个候选k-项集的计数,将计数值≥最小支持度计数的所有候选k-项集确定到Lk中。然而,Ck可能很大,这样所涉及到的计算量就很大。这时使用Apriori性质:如果一个候选k-项集的(k-1)-项集不在Lk-1中,则该候选也不可能是频繁的,从而可以从Ck中删除。;例:设有一个Electronics的事务数据库(如图1示)。数据库中有9个事务,即|D|=9。Apriori假定事务中的项按字典次序存放。我们使用图2解释Apriori算法寻找D中的频繁项集。 ;项集; 项 集 ;Apriori作为经典的频繁项目集生成算法,在数据挖掘中具有里程碑的作用。 Apriori算法有两个致命的性能瓶颈: 1.多次扫描事务数据库,需要很大的I/O负载 对每次k循环,侯选集Ck中的每个元素都必须通过扫描数据库一次来验证其是否加入Lk。假如有一个频繁项集包含10个项的话,那么就至少需要扫描事务数据库10遍 2.可能产生庞大的侯选集 由Lk-1产生k-侯选集Ck是指数增长的,例如104个1-频繁项目集就有可能产生接近107个元素的2-侯选集。如此大的侯选集对时间和主存空间都是一种挑战;改进Apriori: 基本思想 减少事务数据库的扫描遍数 压缩候选数量 便于候选计数 改进算法: 1. 基于散列技术(散列项集到对应的桶中) 2. 划分(为找候选集划分数据) 3. 事务压缩(压缩进一步迭代扫描的事务数) 4. 抽样(对给定数据的一个子集上挖掘) 5. 动态项集计数(在扫描的不同点

文档评论(0)

189****0801 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档