数据挖掘导论第6章关联分析2017课件

上传人:我*** 文档编号:141795966 上传时间:2020-08-12 格式:PPT 页数:110 大小:3.32MB
返回 下载 相关 举报
数据挖掘导论第6章关联分析2017课件_第1页
第1页 / 共110页
数据挖掘导论第6章关联分析2017课件_第2页
第2页 / 共110页
数据挖掘导论第6章关联分析2017课件_第3页
第3页 / 共110页
数据挖掘导论第6章关联分析2017课件_第4页
第4页 / 共110页
数据挖掘导论第6章关联分析2017课件_第5页
第5页 / 共110页
点击查看更多>>
资源描述

《数据挖掘导论第6章关联分析2017课件》由会员分享,可在线阅读,更多相关《数据挖掘导论第6章关联分析2017课件(110页珍藏版)》请在金锄头文库上搜索。

1、关联分析: 基本概念和算法,第6章 关联分析: 基本概念和算法,6.1 问题定义,关联分析 频繁项集 关联规则 关联规则强度: 支持度 置信度 关联规则发现 挖掘关联规则的策略,定义:关联分析(association analysis),关联分析用于发现隐藏在大型数据集中的令人感兴趣的联系,所发现的模式通常用关联规则或频繁项集的形式表示。 关联分析可以应用于生物信息学、医疗诊断、网页挖掘、科学数据分析等,Rules Discovered: Diaper - Beer,定义: 频繁项集(Frequent Itemset),项集(Itemset) 包含0个或多个项的集合 例子: Milk, Bre

2、ad, Diaper k-项集 如果一个项集包含k个项 支持度计数(Support count )() 包含特定项集的事务个数 例如: (Milk, Bread,Diaper) = 2 支持度(Support) 包含项集的事务数与总事务数的比值 例如: s(Milk, Bread, Diaper) = 2/5 频繁项集(Frequent Itemset) 满足最小支持度阈值( minsup )的所有项集,定义: 关联规则(Association Rule),Example:,关联规则 关联规则是形如 X Y的蕴含表达式, 其中 X 和 Y 是不相交的项集 例子: Milk, Diaper Be

3、er 关联规则的强度 支持度 Support (s) 确定项集的频繁程度 置信度 Confidence (c) 确定Y在包含X的事 务中出现的频繁程度,关联规则发现,关联规则发现:给定事务的集合 T, 关联规则发现是指找出支持度大于等于 minsup并且置信度大于等于minconf的所有规则, minsup和minconf是对应的支持度和置信度阈值 关联规则发现的一种原始方法是:Brute-force approach: 计算每个可能规则的支持度和置信度 这种方法计算代价过高,因为可以从数据集提取的规则的数量达指数级 从包含d个项的数据集提取的可能规则的总数 R=3d-2d+1+1,如果d等于

4、6,则R=602,挖掘关联规则(Mining Association Rules)的策略,大多数关联规则挖掘算法通常采用的一种策略是,将关联规则挖掘任务分解为如下两个主要的子任务: 频繁项集产生(Frequent Itemset Generation) 其目标是发现满足最小支持度阈值的所有项集,这些项集称作频繁项集。 规则的产生(Rule Generation) 其目标是从上一步发现的频繁项集中提取所有高置信度的规则,这些规则称作强规则(strong rule)。,6.2 频繁项集的产生,6.1 问题定义 6.2 频繁项集的产生,频繁项集产生(Frequent Itemset Generati

5、on),格结构(lattice structure) 格结构用来枚举所有可能项集,频繁项集产生(Frequent Itemset Generation),Brute-force 方法: 把格结构中每个项集作为候选项集 将每个候选项集和每个事务进行比较,确定每个候选项集的支持度计数。 时间复杂度 O(NMw),这种方法的开销可能非常大。,降低产生频繁项集计算复杂度的方法,减少候选项集的数量 (M) 先验(apriori)原理 减少比较的次数 (NM) 替代将每个候选项集与每个事务相匹配,可以使用更高级的数据结构,或存储候选项集或压缩数据集,来减少比较次数,6.2 频繁项集的产生,6.2.1 先验

6、原理,先验原理( Apriori principle),先验原理: 如果一个项集是频繁的,则它的所有子集一定也是频繁的,先验原理( Apriori principle),先验原理: 如果一个项集是频繁的,则它的所有子集一定也是频繁的 相反,如果一个项集是非频繁的,则它的所有超集也一定是非频繁的: 这种基于支持度度量修剪指数搜索空间的策略称为基于支持度的剪枝(support-based pruning) 这种剪枝策略依赖于支持度度量的一个关键性质,即一个项集的支持度决不会超过它的子集的支持度。这个性质也称为支持度度量的反单调性(anti-monotone)。,例子,被剪枝的超集,6.2 频繁项集

7、的产生,6.2.1 先验原理 6.2.2 Apriori算法的频繁项集产生,Apriori算法的频繁项集产生,Apriori算法的频繁项集产生,Items (1-itemsets),Pairs (2-itemsets),Triplets (3-itemsets),支持度阈值=60% 最小支持度计数 = 3,枚举所有项集将产生 个候选 而使用先验原理,将较少为 =13,Apriori 算法,Apriori 算法,Apriori算法的频繁项集产生的部分有两个重要的特点: 它是一个逐层算法。即从频繁1-项集到最长的频繁项集,它每次遍历项集格中的一层 它使用产生-测试策略来发现频繁项集。在每次迭代,新

8、的候选项集由前一次迭代发现的频繁项集产生,然后对每个候选的支持度进行计数,并与最小支持度阈值进行比较。 该算法需要的总迭代次数是kmax+1,其中kmax是频繁项集的最大长度,6.2 频繁项集的产生,6.2.1 先验原理 6.2.2 Apriori算法的频繁项集产生 6.2.3 候选的产生与剪枝,候选的产生与剪枝(构造apriori-gen函数),候选项集的产生与剪枝(构造apriori-gen函数)包含2个步骤: 候选项集的产生:由频繁(k-1)-项集产生新的候选k-项集 候选项集的剪枝:采用基于支持度的剪枝,删除一些候选k-项集,候选的产生与剪枝(构造apriori-gen函数),蛮力方法

9、 蛮力方法把所有的k-项集都看作可能的候选,然后使用候选剪枝除去不必要的候选 第k层产生的候选项集的数目为 。(d为项的总数) 虽然候选产生是相当简单的,但是候选剪枝的开销极大,因为必须考察的项集数量太大。 设每一个候选项集所需的计算量为O(k),这种方法 的总复杂度为,候选的产生与剪枝,Items (1-itemsets),Pairs (2-itemsets),Triplets (3-itemsets),支持度阈值=60% 最小支持度计数 = 3,枚举所有项集将产生 6C1 + 6C2 + 6C3 = 41个候选 而使用先验原理,将较少为 6 + 6 + 1 = 13,候选的产生与剪枝(Fk

10、-1XF1方法),这种方法用其他频繁项来扩展每个频繁(k-1)-项集 这种方法将产生 个候选k-项集,其中|Fj|表示频繁j-项集的个数。这种方法总复杂度是 这种方法是完全的,因为每一个频繁k-项集都是由一个频繁(k-1)-项集和一个频繁1-项集组成的。因此,所有的频繁k-项集是这种方法所产生的候选k-项集的一部分。 然而,这种方法很难避免重复地产生候选项集。 如:面包,尿布,牛奶不仅可以由合并项集面包,尿布和牛奶得到,而且还可以由合并面包,牛奶和尿布得到,或由合并尿布,牛奶和面包得到。,候选的产生与剪枝(Fk-1XF1方法),候选的产生与剪枝(Fk-1XF1方法),避免产生重复的候选项集的一

11、种方法是确保每个频繁项集中的项以字典序存储,每个频繁(k-1)-项集X只用字典序比X中所有的项都大的频繁项进行扩展 如:项集面包,尿布可以用项集牛奶扩展,因为“牛奶”(milk)在字典序下比“面包”(Bread)和“尿布”(Diapers)都大。 尽管这种方法比蛮力方法有明显改进,但是仍然产生大量不必要的候选。 例如,通过合并啤酒,尿布和牛奶而得到的候选是不必要的。因为它的子集啤酒,牛奶是非频繁的。 【每个K-项集,它的每一个项必须至少在k-1个(k-1)项集中出现,否则, 这个K-项集是非频繁项集】,候选的产生与剪枝(Fk-1XFk-1方法),这种方法合并一对频繁(k-1)-项集,仅当它们的

12、前k-2个项都相同。 如频繁项集面包,尿布和面包,牛奶合并,形成了候选3-项集面包,尿布,牛奶。算法不会合并项集啤酒,尿布和尿布,牛奶,因为它们的第一个项不相同。 然而,由于每个候选都由一对频繁(k-1)-项集合并而成,因此,需要附加的候选剪枝步骤来确保该候选的其余k-2个子集是频繁的。,候选的产生与剪枝(Fk-1XFk-1方法),6.2 频繁项集的产生,6.2.1 先验原理 6.2.2 Apriori算法的频繁项集产生 6.2.3 候选的产生与剪枝 6.2.4 支持度计数,支持度计数,支持度计数过程确定在apriori-gen函数的候选项剪枝步骤保留下来的每个候选项集出现的频繁程度。计算支持

13、度的主要方法: 一种方法是将每个事务与所有的候选项集进行比较,并且更新包含在事务中的候选项集的支持度计数。这种方法是计算昂贵的,尤其当事务和候选项集的数目都很大时。 另一种方法是枚举每个事务所包含的项集,并且利用它们更新对应的候选项集的支持度。,枚举事务t的所有包含3个项的子集,产生Hash树,Hash函数h(p)=p mod 3 假设有15个候选3-项集: 1 4 5, 1 2 4, 4 5 7, 1 2 5, 4 5 8, 1 5 9, 1 3 6, 2 3 4, 5 6 7, 3 4 5, 3 5 6, 3 5 7, 6 8 9, 3 6 7, 3 6 8,Hash树结构,1,4,7,2

14、,5,8,3,6,9,Hash Function,Candidate Hash Tree,Hash on 1, 4 or 7,Hash树结构,1,4,7,2,5,8,3,6,9,Hash Function,Candidate Hash Tree,Hash on 2, 5 or 8,Hash树结构,1,4,7,2,5,8,3,6,9,Hash Function,Candidate Hash Tree,Hash on 3, 6 or 9,使用Hash树进行支持度计数,transaction,使用Hash树进行支持度计数,1 5 9,1 3 6,3 4 5,transaction,使用Hash树进行

15、支持度计数,1 5 9,1 3 6,3 4 5,transaction,15个项集中的9个与事务进行比较,存放在被访问的叶结点中的候选项集与事务进行比较,如果候选项集是该事务的子集,则增加它的支持度计数。 在该例子中 ,访问了9个叶子结点中的5个。 15个项集中的9个与事务进行比较,6.2 频繁项集的产生,6.2.1 先验原理 6.2.2 Apriori算法的频繁项集产生 6.2.3 候选的产生与剪枝 6.2.4 支持度计数 6.2.5 计算复杂度,计算复杂度,支持度阈值 降低支持度阈值通常将导致更多的项集是频繁的。计算复杂度增加 随着支持度阈值的降低,频繁项集的最大长度将增加,导致算法需要扫

16、描数据集的次数也将增多 项数 随着项数的增加,需要更多的空间来存储项的支持度计数。如果频繁项集的数目也随着数据项数增加而增长,则由于算法产生的候选项集更多,计算量和I/O开销将增加 事务数 由于Apriori算法反复扫描数据集,因此它的运行时间随着事务数增加而增加 事务的平均宽度 频繁项集的最大长度随事务平均宽度增加而增加 随着事务宽度的增加,事务中将包含更多的项集,这将增加支持度计数时Hash树的遍历次数,6.3 规则的产生,6.1 问题定义 6.2 频繁项集的产生 6.3 规则的产生,规则产生,忽略那些前件或后件为空的规则,每个频繁k-项集能够产生多达2k-2个关联规则 关联规则的提取:将一个项集 Y划分成两个非空的子集 X 和Y-X,使得X Y X满足置信度阈值。 如果 A,B,C,D 是频繁项集, 候选

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号