《数据挖掘原语和语言课件.ppt》由会员分享,可在线阅读,更多相关《数据挖掘原语和语言课件.ppt(38页珍藏版)》请在三一办公上搜索。
1、数据挖掘原语、语言和系统结构,为什么要数据挖掘原语和语言?,没有精确的指令和规则,数据挖掘系统就没法使用。一个完全自动(不需要人为干预或指导)的数据挖掘机器:会产生大量模式(重新把知识淹没)会涵盖所有数据,使得挖掘效率低下大部分有价值的模式集可能被忽略挖掘出的模式可能难以理解,缺乏有效性、新颖性和实用性令人不感兴趣。用数据挖掘原语和语言来指导数据挖掘。,数据挖掘原语的组成部分,数据挖掘原语应该包括以下部分:说明数据库的部分或用户感兴趣的数据集要挖掘的知识类型用于指导挖掘的背景知识模式评估、兴趣度量如何显示发现的知识数据挖掘原语用于用户和数据挖掘系统通信,让用户能从不同的角度和深度审查和发现结果
2、,并指导挖掘过程。,说明数据挖掘任务的原语,任务相关的数据数据库(仓库)名、数据立方体、选择条件、相关属性、分组条件挖掘的知识类型特征化、区分、关联、分类/预测、聚类背景知识概念分层,关联的确信度模式兴趣度度量简单性、确定性、实用性、新颖性发现模式的可视化规则、表、图表、图、判定树,任务相关的数据,用户感兴趣的只是数据库或数据仓库的一个子集。相关的操作:DB选择、投影、连接、聚集等;DW切片、切块初始数据关系数据子集选择过程产生的新的数据关系可挖掘的视图用于数据挖掘相关任务的数据集,任务相关的数据例子,挖掘加拿大顾客和他们常在AllElectronics购买的商品间的关联规则数据库(仓库)名
3、(e.g. AllElectronics_db)包含相关数据的表或数据立方体名(e.g. item, customer, purchases, item_sold)选择相关数据的条件(今年、加拿大)相关的属性或维(item表的name和price,customer表的income和age),要挖掘的知识类型,要挖掘的知识类型将决定使用什么数据挖掘功能。概念描述(特征化和区分),关联规则,分类/预测,聚类和演化分析等模式模板又称元模式或元规则,用来指定所发现模式所必须匹配的条件,用于指导挖掘过程。,关联规则元模式例子,研究AllElectronics的顾客购买习惯,使用如下关联规则:P(X: c
4、ustomer, W) Q(X, Y) =buys(X, Z)X-customer表的关键字P,Q-谓词变量W, Y, Z-对象变量模板具体化age(X, “3039”) income(X, “40k49k”)=buys(X, “VCR”) 2.2%, 60%occupation(x, “student”) age(X, “2029”)=buys(X, “computer”)1.4%, 70%,背景知识:概念分层,背景知识是关于挖掘领域的知识,概念分层是背景知识的一种,它允许在多个抽象层上发现知识。概念分层以树形结构的节点集来表示,其中每个节点本身代表一个概念,根节点称为all,而叶节点则对应
5、于维的原始数据值。,概念分层 上卷和下钻,在概念分层中应用上卷操作(概化),使得用户可以使用较高层次概念替代较低层次概念,从而可以在更有意义,跟抽象的层次观察数据,从而跟容易发现知识。同时上卷操作带来的数据归约还能有效的节省I/O支出。概念分层的下钻操作使用较低层概念代替较高层概念,从而使用户能够对过于一般化的数据做更详细分析。上卷和下钻操作让用户以不同视图观察数据,洞察隐藏的数据联系。概念分层的自动生成。,概念分层的类型,模式分层E.g., street $250,兴趣度度量,没有兴趣度度量,挖掘出来的有用模式,很可能会给淹没在用户不感兴趣的模式中。简单性确定性实用性新颖性兴趣度的客观度量方
6、法:根据模式的结构和统计,用一个临界值来判断某个模式是不是用户感兴趣的。,简单性和确定性,简单性(simplicity)模式是否容易被人所理解模式结构的函数(模式的长度、属性的个数、操作符个数)。e.g. 规则长度或者判定树的节点个数。确定性(certainty)表示一个模式在多少概率下是有效的。置信度 (A=B)=(包含A和B的元组值)/(包含A的元组值),e.g. buys(X, “computer)=buys(X, “software”)30%, 80%100%置信度:准确的。,实用性和新颖性,实用性可以用支持度来进行度量:支持度(A=b) = (包含A和 B的元组数)/(元组总数) e
7、.g. buys(X, “computer)=buys(X, “software”)30%, 80%同时满足最小置信度临界值和最小支持度临界值的关联规则称为强关联规则。新颖性提供新信息或提高给定模式集性能的模式通过删除冗余模式来检测新颖性(一个模式已经为另外一个模式所蕴涵)Location(X, “Canada”)=buys(X, “Sony_TV”) 8%, 70%Location(X, “Vancouver”)=buys(X, “Sony_TV”) 2%, 70%,发现模式的表示和可视化,以多种形式显示挖掘出来的模式:表、图、判定树、数据立方体等等,以适合不同背景的用户的需要。使用概念分层
8、,用更有意义,更容易理解的高层概念来替代低层概念;并通过上卷、下钻等操作从不同的抽象级审视所发现的模式。特定知识类型的表示。,一种数据挖掘查询语言DMQL,DMQL的设计目的支持特别的和交互的数据查询,以便利于灵活和有效的知识发现提供一种类似于SQL的标准化查询语言希望达到SQL在关系数据库中的地位系统开发和演化的基础方便的信息交互,广泛的技术支持,商业化,广为认可设计挑战数据挖掘任务涉及面宽数据特征、关联规则、分类、演变分析每种任务都有不同的需求,DMQL的语法,采用与SQL相类似的语法,便于与SQL的集成。允许在多个抽象层上,由关系数据库和数据仓库进行多类型知识的特殊挖掘DMQL的设计基于
9、数据挖掘原语,语法中应该包括对以下任务的指定:说明数据库的部分或用户感兴趣的数据集要挖掘的知识类型用于指导挖掘的背景知识模式评估、兴趣度量如何显示发现的知识,任务相关数据说明的语法,任务相关数据说明应包括的内容:包含相关数据的数据库或数据仓库相关的表名或数据立方体的名字选择相关数据的条件探察的相关属性或维关于检索数据的排序和分组指令,任务相关数据说明子句,说明相关的数据库或数据仓库use database 或use data warehouse 指定涉及的表或数据立方体,定义检索条件From where 列出要探察的属性或维In relevance to相关数据的排序order by 相关数据
10、的分组group by 相关数据的分组条件:having ,任务相关数据说明示例,挖掘加拿大顾客与在AllElectronics经常购买的商品之间的关联规则use database AllElectronics_dbin relevance to I.name, I.price, C.income, C.agefrom customer C, item I, purchases P, items_sold Swhere I.item_ID=S. item_ID and S.trans_ID=P.trans_ID and P.cust_ID=C.cust_ID and C.country=“Ca
11、nada”group by P.date,指定挖掘知识类型,要挖掘的知识类型将决定所使用的数据挖掘功能。几种主要的数据挖掘功能特征化目标数据的一般特征或特性汇总数据区分将目标对象的一般特性与一个或多个对比类对象的特性相比较关联分析发现关联规则,这些规则展示属性值频繁的在给定数据中集中一起出现的条件分类找出区分数据类或概念的模型(或函数),以便用之标志未知的对象类。聚类分析、孤立点分析、演变分析,指定挖掘知识类型特征化,目标数据的一般特征或特性汇总语法Mine_Knowledge_Specification := mine characteristics as pattern_name anal
12、yze measure(s) analyze子句指定聚集度量(count, sum, count%),通过这些度量对每个找到的数据特征进行计算示例:顾客购买习惯的特征描述,对于每一特征,显示满足特征的任务相关元组的百分比mine characteristics as custPurchasinganalyze count%,指定挖掘知识类型数据区分,将目标对象的一般特性与一个或多个对比类对象的特性相比较语法Mine_Knowledge_Specification := mine comparison as pattern_name for target_classwhere target_co
13、ndition versus contrast_class_iwhere contrast_condition_i analyze measure(s) analyze子句指定聚集度量(count, sum, count%),将对每个描述进行计算或显示示例:用户将客户区分为大顾客与小顾客,并显示满足每个区分的元组数Mine_Knowledge_Specification := mine comparison as purchaseGroups for bigSpenderswhere avg(I.price) $100 versus budgetSpenderswhere avg(I.pric
14、e) $100 analyze count,指定挖掘知识类型关联,发现关联规则,这些规则展示属性值频繁的在给定数据中集中一起出现的条件语法Mine_Knowledge_Specification := mine associations as pattern_name matching 子句后面往往可以跟元模式,用来指定用户有兴趣探察的数据束或假定示例:使用元模式指导的挖掘来指定用于描述顾客购买习惯的关联规则挖掘Mine_Knowledge_Specification := mine associations as buyingHabbitsmatching P(X: customer, W)
15、 Q(X, Y) =buys(X, Z),指定挖掘知识类型分类,找出区分数据类或概念的模型(或函数),以便用之标志未知的对象类语法Mine_Knowledge_Specification := mine classification as pattern_name analyze classifying_attribute_or_dimensionanalyze子句说明根据某个属性或维进行分类,通常每个分类属性的或维的值就代表一个分类示例:挖掘客户的信用等级模式mine classification as classifyCustCreditRatinganalyze credit_ratin
16、g,概念分层说明的语法,每个属性或维可能有多个概念分层,已适应用户从不同角度看待问题的需要;用户可以使用如下语句指定使用哪个概念分层:use hierarchy for 示例1:定义模式分层location,location中包含一个概念分层的全序(streetcityprovincecountry),相应的DMQL语法定义如下所示:Define hierarchy location_hierarchy on location as street, city, province, country,概念分层说明的语法集合分组分层,Level 0Level 1Level2,define hiera
17、rchy age_hierarchy for age on customer as level1: young, middle_aged, senior level0: alllevel2: 2039 level1: younglevel2: 4059 level1: middle_agedlevel2: 6089 level1: senior,兴趣度度量说明的语法,兴趣度的度量包括置信度、支持度、噪声和新颖度等度量,可以通过将模式的兴趣度度量与相应的临界值相比较决定一个模式是否为感兴趣的模式。with threshold = threshold_value示例:挖掘关联规则时限定找到的感兴趣
18、模式必须满足最小支持度为5%,最小置信度为70%with support threshold = 5%with confidence threshold = 70%,模式表示和可视化说明的语法,对挖掘出来的模式,可以使用多种形式进行表示,包括:规则、表、饼图、立方体、曲线等display as 为了方便用户在不同的角度或者不同的概念层观察发现的模式,用户可以使用上卷、下钻、添加或丢弃属性或维等操作Multilevel_Manipulation:= roll up on attribute_or_dimension | drill down on attribute_or_dimension |
19、 add attribute_or_dimension | drop attribute_or_dimension例:假定描述是基于维location, age和income的挖掘。用户可以”roll up on location”, “drop age”, 概化发现的模式。,一个DMQL查询的完整示例,查询AllElectronics购买商品的价格不小于$100的,用AmEx信用卡结帐的加拿大顾客的购买习惯特征(年龄,商品类型和产地),以表的形式表示挖掘的模式,use database AllElectronics_db use hierarchy location_hierarchy fo
20、r B.addressmine characteristics as customerPurchasing analyze count% in relevance to C.age, I.type, I.place_made from customer C, item I, purchases P, items_sold S, works_at W, branchwhere I.item_ID = S.item_ID and S.trans_ID = P.trans_ID and P.cust_ID = C.cust_ID and P.method_paid = AmEx and P.empl
21、_ID = W.empl_ID and W.branch_ID = B.branch_ID and B.address = Canada and I.price = 100with noise threshold = 0.05 display as table,其他数据挖掘语言和数据挖掘原语的标准化,关联规则语言规范MSQL (Imielinski & Virmani99)MineRule (Meo Psaila and Ceri96) Query flocks based on Datalog syntax (Tsur et al98)数据挖掘的OLE DB基于OLE DB和OLE DB f
22、or OLAP技术整合数据库,数据仓库和数据挖掘CRISP-DM (CRoss-Industry Standard Process for Data Mining)提供了一个有效的数据挖掘平台和处理结构强调使用数据挖掘技术解决商务问题的需要,基于数据挖掘语言的图形用户界面(GUI)设计,就像SQL是关系数据库应用的GUI设计的“核心”一样,DMQL是数据挖掘应用GUI设计的核心。数据挖掘的GUI可能包含以下部分:数据收集和数据查询编辑发现模式的表示分层结构说明和操纵数据挖掘原语的操作交互的多层挖掘其他各种信息,数据挖掘系统的体系结构,一个系统的体系结构是指一个系统的各种结构,包括系统的各种部分
23、,这些部分所显示出来的特性,以及它们之间的相互关系。系统功能与系统体系结构的无关性。系统的体系结构决定的是系统的功能属性。数据挖掘系统体系结构的核心问题:我们是否应当将数据挖掘系统与数据库/数据仓库系统集成(或耦合)不耦合松散耦合半紧密耦合紧密耦合,DM与DB/DW的耦合方式,不耦合DM系统不利用DB/DW系统的任何功能。松散耦合DM系统将使用DB/DW系统的某些功能。半紧密耦合除了将DM系统连接到一个DB/DW系统之外,一些基本数据挖掘原语(通过分析频繁遇到的数据挖掘功能确定)可以在DB/DW系统中实现。紧密耦合DM系统平滑的集成到DB/DW系统中。数据挖掘子系统被视为信息挖掘子系统的一部分
24、,数据挖掘查询和功能根据DB或DW系统的挖掘查询分析、数据结构、索引模式和查询处理方法优化。,概念描述:特征化与比较,什么是概念描述?,描述性挖掘 VS. 预测性挖掘描述性挖掘:以简洁概要的方式描述数据,并提供数据的有趣的一般性质。预测性数据挖掘:通过分析数据建立一个或一组模型,并试图预测新数据集的行为。概念描述:为数据的特征化和比较产生描述(当所描述的概念所指的是一类对象时,也称为类描述)特征化:提供给定数据集的简洁汇总。区分:提供两个或多个数据集的比较描述。,概念描述 VS. OLAP,概念描述和数据仓库的联机分析处理(OLAP)都跟数据概化密切相关,即以简洁的形式在更一般的抽象层描述数据,允许数据在抽象层概化,便于考察数据的一般行为。两者的主要区别:概念描述可以处理复杂数据类型的属性及其聚集一个更加自动化的过程OLAP实际使用的OLAP系统中,维和度量的数据类型都非常有限(非数值型的维和数值型的数据),表现为一种简单的数据分析模型一个由用户控制的过程,数据概化和基于汇总的特征化,数据概化数据库中的数据和对象通常包含原始概念层的细节信息,数据概化就是将数据库中的跟任务相关的数据集从较低的概念层抽象到较高的概念层的过程。主要方法:数据立方体(OLAP使用的方法)面向属性的归纳方法,1,2,3,4,5,概念层,