(本科)第7章数据挖掘基本算法教学ppt课件.ppt
《(本科)第7章数据挖掘基本算法教学ppt课件.ppt》由会员分享,可在线阅读,更多相关《(本科)第7章数据挖掘基本算法教学ppt课件.ppt(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、(本科)第7章 数据挖掘基本算法教学ppt课件LOGO第七章第七章 数据挖掘基本算法数据挖掘基本算法 东北财经大学电子商务学院东北财经大学电子商务学院第七章第七章 数据挖掘基本算法数据挖掘基本算法 7.17.1 数据挖掘基本分析方法数据挖掘基本分析方法 17.2 7.2 关联分析关联分析 27.37.3 序列模式分析序列模式分析37.47.4 分类分析分类分析 4东北财经大学电子商务学院东北财经大学电子商务学院7.57.5 聚类分析聚类分析57.1 7.1 数据挖掘基本分析方法数据挖掘基本分析方法根据不同的标准,数据挖掘系统可以分类如下: 根据挖掘的数据库类型分类 根据数据模型分类 :有关系的
2、、事务的、对象-关系的或数据仓库的数据挖掘系统;根据所处理的数据的特定类型: 空间的、时间序列的、文本的、流数据的、多媒体的 根据挖掘的知识类型分类 (数据挖掘的功能分类 ) 特征化、区分、关联和相关分析、分类、预测、聚类、孤立点分析 根据所用的技术分类 根据用户交互程度 :自动系统、交互探查系统、查询驱动系统; 根据数据分析方法 :面向数据库或数据仓库的技术、机器学习、统计学、可视化、模式识别、神经网络 根据应用分类 有些数据挖掘系统特别适合金融、电信、DNA、股票市场、E-mail等等 7.1 7.1 数据挖掘基本分析方法数据挖掘基本分析方法 无论采用哪几种技术来完成任务,从功能上可以将数
3、据挖掘的分析方法划分为以下四种(根据IBM的划分方法): 关联分析:挖掘隐藏在数据间的相互关系 1序列模式分析 :分析数据间的前后序列关系 2分类分析:为一个事件或对象归类 3聚类分析:把没有分类的记录合理地划分成若干类47.2 7.2 关联分析关联分析 交易数据库又称事务数据库,一个事务数据库中关联规则挖掘的基本概念描述如下: 定义定义4定义定义3定义定义2定义定义1设I=i1,i2,im是m个不同项的集合。D是事务数据库的集合,每个事务T是一些项的集合,T包含在I中,即T I ,并且每个事务可以用唯一的标识符TID来标识。 设A为I中某些项的集合,简称为项集。如果A T,则称事务T包含A。
4、 关联规则表示为A B的蕴涵式,其中A I,B I,并且AB= 。支持度表示规则出现的频度,等于事务集中同时包括A和B的百分比;置信度表示规则的强度,指D中包含了A的事务,同时也包含B的百分比。在进行关联规则挖掘时,要求用户预先设定支持度和置信度阈值,即在挖掘过程中只产生满足这两个阈值要求的关联规则,对于这样的支持度和置信度通常分别称为最小支持度和最小置信度。 7.2.1 7.2.1 基本概念基本概念 7.2 7.2 关联分析关联分析定义定义8定义定义7定义定义6定义定义5D中包含的事务数表示为|D|,A中包含的项数表示为|A|。 项集A在D中出现的频率,称为A在D中的支持数(support
5、count),简记为count,count=s|D|。把支持数阈值定义为最小支持数(minimum support count),简记为min_count 对于项集A,如果A中包含有k个项,则A称为k-项集。若项集A的支持度不小于最小支持度,则称A为频繁项集。若某一项m满足最小支持度要求,则称m为频繁项,所有频繁项的集合称为频繁1-项集,记为L1;满足最小支持度要求的k-项集称为频繁k-项集,所有频繁k-项集的集合记为Lk。 Lk通过Lk-l与自己连接产生的集合称为候选k-项集,记作Ck。 7.2.1 7.2.1 基本概念基本概念 7.2 7.2 关联分析关联分析TID购买的项2000 A,B
6、,C1000A,C4000A,D5000B,E,F表7-1任务相关数据D【例7.1】 表7-1所示的任务相关数据D是数据库事务的集合,假设最小支持度为50%,最小置信度为50%, 则有如下关联规则:A C(50%,66.6%),因为P(AC)=50%,P(AC)/P(A)=50%/75%=66.6% C A(50%,100%),因为P(CA)=50%,P(CA)/P(C)=50%/50%=100%7.2.1 7.2.1 基本概念基本概念 7.2 7.2 关联分析关联分析7.2.2 7.2.2 关联规则分类关联规则分类 可以根据以下标准对这些关联规则进行分类:1) 根据关联规则所处理的变量值来进
7、行分类 (1)如果规则考虑的关联是项的存在或者不存在,那么这种关联规则就是一个布尔关联规则。 (2)如果描述的是量化的项或属性之间的关联,则该规则是量化型的关联规则。2) 根据规则中涉及到的数据的维数来分类 (1)在单维的关联规则中,只涉及到数据的一个维,那么它就是一个单维关联规则。 (2)在多维的关联规则中,要处理的数据将会涉及多个维,那么它就是一个多维关联规则。7.2 7.2 关联分析关联分析7.2.2 7.2.2 关联规则分类关联规则分类 3) 根据规则中数据的抽象层次,可以分为单层关联规则和多层关联规则。 (1)单层的关联规则:所有的变量仅涉及单一层次的项或属性。 (2)多层的关联规则
8、:变量涉及不同抽象层次的项或属性。4)根据所挖掘的模式类型分类 (1)频繁项集挖掘:从事务或关系数据集挖掘频繁项集(项的集合)。 (2)序列模式挖掘:从序列数据集中搜索频繁子序列,其中序列记录了事件的次序。7.2 7.2 关联分析关联分析7.2.3 7.2.3 关联规则的挖掘步骤关联规则的挖掘步骤 整个挖掘过程可分解为以下两步:第一步:发现所有的事务支持度大于最小支持度的项集。一个项集的支持度是指包含该项集的事务数目。具有最小支持度的项集称为频繁项集,其他均为非频繁项集。即找出所有那些支持度大于事先给定的支持度阈值的项集。第二步:在找出频繁项集的基础上产生强关联规则。即产生那些支持度和置信度分
9、别大于或等于事先给定的支持度阈值和置信度阈值的关联规则。7.2 7.2 关联分析关联分析7.2.4 Apriori7.2.4 Apriori算法算法 1 1)AprioriApriori算法算法 Apriori算法的原理: 首先,通过扫描数据库,累计每个项的计数,并收集满足最小支持度的项,找出频繁1-项集的集合,该集合记作L1。然后,L1用于找频繁2-项集的集合L2,L2用于找L3,如此下去,直到不能再找到频繁k-项集。 Apriori算法利用了以下两个重要的性质用来压缩搜索空间: Apriori性质1:若X为频繁项集,则X的所有子集都是频繁项集。 Apriori性质2:若X为非频繁项集,则X
10、的所有超集均为非频繁项集。 7.2 7.2 关联分析关联分析7.2.4 Apriori7.2.4 Apriori算法算法 2 2)AprioriApriori算法的步骤算法的步骤 在Apriori算法中有两个关键的步骤:一是候选项集的生成,采用拼接和剪枝的方法,即由频繁k-项集连接生成候选(k+1)-项集,然后再根据候选k-项集中非频繁的项集来剪枝候选(k+1)-项集。二是候选项集的计数,采用hash树结构,把每个事务中所包含的k维项集存储到hash树中,然后对于每个候选项集查找该树结构,如果某个候选项集包含在树中,则对其进行计数。7.2 7.2 关联分析关联分析7.2.4 Apriori7.
11、2.4 Apriori算法算法 【例7.2】 设事务数据库D如表7-2所示,D中包含9个事务,即|D|=9,最小支持数min_count=2,即最小支持度min_sup=2/9=22%。挖掘频繁项集的具体过程如下所述:表7-2 事务数据ID购买商品T1A,B,ET2B,DT3B,CT4A,B,DT5A,CT6B,CT7A,CT8A,B,C,ET9A,B,C7.2 7.2 关联关联分析分析C1L1L2L3C2C2C3C3项集 支持数 A,B,C 2A,B,E 2项集 支持数A,B,C 2A,B,E 2项集A,B,CA,B,C项集A,BA,CA,DA,EB,CB,DB,EC,DC,ED,E项集 支
12、持数A,B 4A,C 4A,D 1A,E 2B,C 4B,D 2B,E 2C,D 0C,E 1D,E 0项集 支持数A,B 4A,C 4A,E 2B,C 4B,D 2B,E 2项集 支持数 A 6 B 7 C 6 D 2 E 2 项集 支持数 A 6 B 7 C 6 D 2 E 2扫描D,对每个项进行计数取 出 计 数大 于 最 小支 持 数 的项由L1产生C2扫描D,对C2中的项集进行计数取出C2中计数大于最小支持数的项集扫描D,对C3中的项集进行计数取出C3中计数大于最小支持数的项集由L2产生C37.2.4 Apriori算法算法 图7-1 Apriori算法的挖掘过程7.2 7.2 关联
13、分析关联分析(1)发现所有的事务支持度大于最小支持度的项集。(2)产生强关联规则 在找到了事务数据库中的所有频繁项集后,利用这些频繁项集可以产生关联规则,产生关联规则的步骤如下: 对于每个频繁项集L,产生L的所有非空子集。 对于L的每个非空子集m,如果support(L)/support(m)min_conf,则输出规则“m (L-m)”。 例如,在上例中产生的频繁项集LA,B,E,L的非空子集有A,B、A,E、B,E、A、B和E,则运用上述产生关联规则的方法可以得到以下关联规则: A B E confidence=(2/9)/(4/9)=0.5 A E B confidence=(2/9)/
14、(2/9)=1 B E A confidence=(2/9)/(2/9)=1 A B E confidence=(2/9)/(6/9)=0.33 B A E confidence=(2/9)/(7/9)=0.29 E A B confidence=(2/9)/(2/9)=17.2.4 Apriori算法算法 7.2 7.2 关联分析关联分析3 3)AprioriApriori算法中存在的两个问题算法中存在的两个问题 由以上的分析可以看出,在许多情况下,Apriori算法大幅度地压缩了侯选项集的大小,并且导致很好的性能。但该算法中存在的两个问题,在有些情况下不能忽视: (1)该算法在计算的过程中
15、需要产生大量的候选项集。 (2)该算法需要对数据库进行多次扫描,并通过模式匹配检查候选项集。7.2.4 Apriori算法算法 7.2 7.2 关联分析关联分析7.2.5 Apriori算法的几种优化方法算法的几种优化方法 为了减小Apriori算法中存在的问题所带来的影响,提高Apriori算法的执行性能,许多学者提出了一些优化的算法。通常把这些在Apriori基础上优化的算法称为类Apriori算法。1 1)AprioriApriori算法几种典型的改进方法算法几种典型的改进方法 (1)基于散列的优化方法(散列项集到对应的桶中) (2)基于事务压缩的优化方法(压缩未来迭代扫描的事务数) (
16、3)基于划分的优化方法(为寻找候选项集划分数据) (4)基于抽样的优化方法(对给定数据的子集挖掘) (5)基于动态项集计数的优化方法(在扫描的不同点添加候选项集)2 2)频繁模式增长)频繁模式增长7.2 7.2 关联分析关联分析3 3)关联分析的应用)关联分析的应用 关联分析的研究近年来发展迅速,市场前景十分广阔。近年来随着数据库和网络技术的广泛应用,加上使用先进的自动数据生成和采集工具,人们所拥有的数据量急剧增加,使关联分析在市场营销、零售等行业已得到了比较广泛的应用。7.2.5 Apriori算法的几种优化方法算法的几种优化方法 7.2 7.2 关联分析关联分析4 4)关联分析的发展趋势)
17、关联分析的发展趋势 7.2.5 Apriori算法的几种优化方法算法的几种优化方法 2.关联规则挖掘算法 的交互性4.关联规则挖掘技术与其它技术的融合1. 关联规则的兴趣度关联规则的兴趣度3.关联规则算法挖掘效率的提高7.3 7.3 序列模式分析序列模式分析给定一个序列集,每一个序列由项集构成,然后给定由用户确定的最小支持度阈值,序列模式挖掘就是发现所有出现频率不小于给定的最小支持度的频繁子序列。定义定义4定义定义3定义定义2定义定义1项集:项集:各个项(item)组成的集合。集合I=il,i2,.,im,其中每个ik(1km)是一个项。 序列:不同项集的有序排列。序列S可以表示为S=s1,s
18、2, sn。其中,sk(1kn)为项集,也称为序列S的元素。 序列长度:序列长度:一个序列包含的所有项目的个数,长度为1的序列记为1-序列。 序列的包含:序列的包含:设存在两个序列A,B。其中:A=a1,a2,am,B=b1, b2,bn。如果存在整数1i1i2imn,使得a1 bi1,a2 bi2,am bim,则称序列A是B的子序列,又称B序列包含A序列,记为A B。 7.3.1 7.3.1 基本概念基本概念 1 1)序列模式相关概念)序列模式相关概念7.3 7.3 序列模式分析序列模式分析定义定义8定义定义7定义定义6定义定义5序列数据库:序列数据库:把所有的数据按时间进行排列,将得到一
19、个序列,记作itemset(Tl), itemset(T2),.,itemset(Tn),这里Ti(1i_n)是第i次交易时间,itemset(Ti)为该次交易的项集。由全部序列组成的数据库称为序列数据库,记作SDB。 支持数:支持数:序列A在序列数据库SDB的支持数为序列数据库中包含序列A的序列个数。序列的支持度:序列的支持度:指序列数据库中支持序列A的序列数(也称A的支持数)与SDB中总序列数之比。序列的支持度是一个预先设定的阈值。频繁序列:频繁序列:给定最小支持度阈值,如果序列A在序列数据库中的支持数不低于该阈值,则称序列A为频繁序列。 7.3.1 7.3.1 基本概念基本概念 定义定义
20、10定义定义9最大的序列模式:最大的序列模式:在一个序列集中如果序列S不包含于任何其他序列中,则称序列S为最大的。 序列模式挖掘:序列模式挖掘:给定一个序列的集合,其中每个序列都由事件(或元素)的列表组成,而每个事件都由一个项集组成,给定用户指定的最小支持度阈值,序列模式挖掘找出所有的频繁子序列。定义定义107.3 7.3 序列模式分析序列模式分析 其中,序列a(bc)df是序列1的子序列,因为前者的事件都是序列1的每个事件的子集,而且保持了事件的顺序。 对于A=(ab)c,子序列A被序列1和序列3包含,因此A的支持度为2,这满足最小的支持度。因此,A是频繁的,所以把它叫做序列模式。它是一个3
21、模式,因为它是一个长度为3的序列模式。还有其他的序列模式如B=(bc)a等等,子序列B被序列1和序列2包含,因此B的支持度为2,满足最小的支持度。7.3.1 7.3.1 基本概念基本概念 2 2)序列模式应用举例)序列模式应用举例【例7.3】 设序列数据库如表7-4所示,并设用户指定的最小支持度min_support=2。表7-4 序列数据库 序列ID序列1a(abc)(ac)d(cf)2(ad)c(bc)(ae)3(ef)(ab)(df)cb4eg(af)cbc7.3 7.3 序列模式分析序列模式分析序列模式的挖掘算法从整体上可以被分为两大类:一是基于Apriori特性的、逐层的发现方法,如
22、AprioriAll、GSP和SPADE算法等;二是基于投影的模式增长方法,如FreeSpan和PrefixSpan等。这些方法的共同之处是利用用户给定的最小支持度阈值,基于Apriori启发式搜索机制,即,非频繁模式的超模式一定是非频繁的;频繁模式的子模式一定是频繁的,以确保产生正确、完全的序列模式集合。7.3.2 7.3.2 经典的序列模式挖掘算法分类经典的序列模式挖掘算法分类 频繁项集阶段 变换阶段 1排序阶段 此阶段将挖掘所有的频繁项集,将挖掘到的所有频繁项集映射至一个连续整数的集合变换方法为在一个变换后的顾客序列中,每个交易被它所包含的全部频繁项集的集合所代替最大序列阶段 序列阶段
23、若最终目的是要挖掘所有的最大频繁序列,算法将包含最大序列阶段。一旦挖掘了全部频繁序列的集合乙,再挖掘最大序列 将交易数据库以Cid为主键,Tid为次键排序,得到顾客序列数据库 7.3 7.3 序列模式分析序列模式分析 AprioriAll算法将序列的长度定义为序列中包含的项集的数量,将序列模式挖掘的过程分为以下五个阶段:给定数据序列d和候选序列集C,需要找到C中被d包含的全部候选序列 7.3.3 AprioriAll7.3.3 AprioriAll算法算法 【例7.4】给出一个客户序列组成的数据库如图72所示,假如最小支持度为40%,那么在频繁项集阶段可以得到频繁1-序列,之后应用Aprior
24、iAll算法可以逐步演变成最终的频繁序列集。图72给出了整个过程:7.3.3 AprioriAll7.3.3 AprioriAll算法算法 7.3 7.3 序列模式分析序列模式分析图图7-2第一次扫描数据库时,找到所有的频繁项,也就是具有最小支持度的项。每项产生由其本身组成的1事件频繁序列。 从序列模式的种子集前次扫描得到的序列模式开始扫描,每个候选序列比产生它的种子序列模式多包含一个项。扫描一遍数据库,得到每个候选k序列的支持度。Ck中支持度至少是min_sup的候选集形成所有频繁k序列的集合Lk。然后这个集合成为下一遍扫描的种子集。 7.3 7.3 序列模式分析序列模式分析 1 1)GSP
25、GSP算法步骤算法步骤7.3.4 GSP7.3.4 GSP算法算法4当一遍扫描不能产生新的序列模式或新的候选序列时,算法终止。 2 2)实例解释)实例解释7.3.4 GSP7.3.4 GSP算法算法7.3 7.3 序列模式分析序列模式分析【例7.5】假设给定表75的序列数据库S,min_sup=2。表75 序列数据序列ID序列1a(abc)(ac)d(cf)2(ad)c(bc)(ae)3(ef)(ab)(df)cb4eg(af)cbc(1)第一次扫描时(k=1),GSP收集每项的支持度。候选1序列的集合是:a:4,b:4,c:4,d:3,e:3,f:3,g:1。(2)序列g的支持度为1,是唯一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科第7章 数据挖掘基本算法教学ppt课件 本科 数据 挖掘 基本 算法 教学 ppt 课件
限制150内