1、数据仓库与数据挖掘原理及应用东华理工大学 理学院刘爱华目录目录1.数据仓库基础数据仓库基础 7.分类和预测分类和预测 2.数据仓库设计和实现数据仓库设计和实现 8.关联分析关联分析 3.数据仓库实例数据仓库实例 9.Web挖掘挖掘 4.OLAP和和OLAM 10.数据挖掘实例数据挖掘实例 5.数据挖掘基础数据挖掘基础 11.知识知识 6.聚类分析聚类分析 12.语义网和本体语义网和本体 1 数据仓库基础数据仓库基础1.1 引言引言1.2 体系结构体系结构1.3 组成组成1.4 元数据元数据1.5 数据粒度数据粒度1.6 数据模型数据模型1.7 ETL1.1 引言引言 数据仓库定义数据仓库定义
2、数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合。此定义由最为权威的、被称为“数据仓库之父”的William H.Inmon 先生给出。面向主题的面向主题的 是相对于传统数据库的面向应用而言的。所谓面向应用,指的是系统实现过程中主要围绕着一些应用或功能。而面向主题则考虑一个个的问题域,对问题域涉及到的数据和分析数据所采用的功能给予同样的重视。典型的主题领域典型的主题领域 顾客、产品、事务或活动、保险单、索赔和账目。1.1 引言引言 集成的集成的 数据仓库中的数据来自各个不同的数据源(操作数据库)。由于历史的原因,各操作数据库的组织结构往往是不同的,在这些异构数据
3、输入到数据仓库之前,必须经历一个集成过程。1.1 引言引言 集成的集成的 最重要的特点。应用问题的设计人员制定出不同的设计决策,且表示方法不同。例如编码、命名习惯、实际属性和属性度量等方面不一致。数据进入数据仓库时,需要消除各种不一致性。例如,数据仓库中顾客“性别”的编码,可采用“男/女”或“m/f”,采用哪种方式并不重要,重要的是在数据仓库中应该统一编码。如果应用数据编码为“X/Y”,则进入数据仓库时需要进行转换。此外,对所有应用所涉及的问题都要考虑一致性。例如命名习惯、键码结构、属性度量以及数据特点等。1.1 引言引言 与时间相关的与时间相关的 数据仓库以维的形式对数据进行组织,时间维是数
4、据仓库中很重要的一个维度。并且数据仓库中的数据时间跨度大,从几年甚至到几十年,称为历史数据。1.1 引言引言 不可修改的不可修改的 面向应用的事务数据库需要对数据进行频繁的插入、更新操作,而对于数据仓库中数据的操作仅限于数据的初始导入和记录查询。操作型数据是一次访问和处理一个记录,可以对操作型数据库中的数据进行更新。但数据仓库中的数据则不同,通常是一起载入与访问的,在数据仓库环境中并不进行一般意义上的数据更新。1.1 引言引言1.2 体系结构体系结构 二层体系结构数 据 挖 掘/数 据 展 现 系 统数 据集 市数 据集 市数 据集 市数 据集 市数 据 仓 库 存 储数 据元 数 据数 据
5、暂 存 区抽 取/转 换/清 洁业 务 系 统 数 据外 部 数 据1.2 体系结构体系结构 三层体系结构数 据 挖 掘/数 据 展 现 系 统数 据集 市数 据集 市数 据集 市数 据集 市数 据 仓 库 存 储数 据元 数 据数 据 暂 存 区抽 取/转 换/清 洁业 务 系 统 数 据外 部 数 据O D S1.3 数据仓库组成数据仓库组成 一个数据仓库的大小一般都是在100GB以上 通常,数据仓库系统应该包含下列程序:(1)抽取数据与加载数据(2)整理并转换数据(采用一种数据仓库适用的数据格式)(3)备份与备存数据(4)管理所有查询(即将查询导向适当的数据源)1.3 数据仓库组成数据仓
6、库组成1.4 元数据元数据 定义定义 元数据(Metadata)是关于数据的数据。在数据仓库系统中,元数据可以帮助数据仓库管理员和数据仓库开发人员非常方便地找到他们所需的数据;元数据是描述数据仓库中数据结构和构建方法的数据。1.4 元数据元数据 分类分类 按照用途的不同分为技术元数据(Technical Metadata)和业务元数据(Business Metadata)两大类。技术元数据存储关于数据仓库系统技术细节的数据,是用于开发和管理数据仓库使用的数据,它保证了数据仓库系统的正常运行;业务元数据从业务角度描述数据仓库中的数据,它提供介于使用者和实际系统之间的语义层,使得数据仓库使用人员能
7、够“读懂”数据仓库中的数据。1.5 数据粒度数据粒度 定义 粒度是指数据仓库的数据单位中保存数据的细化或综合程度的级别。细化程度越高,粒度级就越小;相反,细化程度越低,粒度级就越大。粒度深深地影响存放在数据仓库中数据量的大小,同时影响数据仓库所能回答的查询类型。在数据仓库中的数据粒度与查询的详细程度之间要做出权衡。1.5 数据粒度数据粒度 当提高粒度级别时,数据所能回答查询的能力会随之降低。换言之,在一个很低的粒度级别上,几乎可以回答任何问题,但在高粒度级别上,数据所能处理的问题的数量是有限的。1.6 数据模型数据模型 数据模型是对现实世界的一种抽象,根据抽象程度的不同,可形成不同抽象层次上的
8、数据模型。与数据库的数据模型相类似,数据仓库的数据模型也分为三个层次:概念模型 逻辑模型 物理模型 数据仓库的数据模型 星型结构 雪花型结构 星型雪花型结构 数据仓库的数据事实数据维度数据 不论是星型、雪花型或者是星型雪花型结构都是以事实表为中心。不同点只是在外围维度表相互之间的关系不同而已。1.6 数据模型数据模型 将原来业务系统的数据经过抽取、转换、加载到数据仓库所在的中心存储库的过程称为ETL(Extraction,Transformation and Loading)过程,制定这个过程的策略称之为ETL策略,而完成ETL过程的工具则是ETL工具。相对于数据仓库中的表而言,业务系统数据库
9、中的表称为源表,业务系统数据库称为源数据库,数据仓库中所有的数据都来自于业务系统数据库。在打造一个数据仓库的过程中,ETL的实施是一项繁琐、冗长而艰巨的任务,因为它关系到数据仓库中数据的质量问题,如果导入的数据漏洞百出,对决策者来说无疑是个噩耗。ETL过程是搭建“数据仓库”时最重要的最重要的和最最易误解的易误解的步骤之一。1.7 ETL ETL过程不仅仅是数据的迁移迁移(Migration)或净化净化(Cleansing),也应该是企企业数据管理策略业数据管理策略中不可缺少的一部分。ETL过程的功能是:发现发现数据仓库需要的数据,将其从源系统中抽取抽取出来,并进行一定的处理处理,然后装载装载到
10、数据仓库中去。1.7 ETL 提高数据质量 提供一种统一的、跨平台的存取数据方法 将数据“信息化”,为企业决策者的经营分析提供信息来源1.7 ETL2 数据仓库设计和实现数据仓库设计和实现2.1 数据仓库设计数据仓库设计2.2 ETL设计设计2.3 数据仓库实现数据仓库实现(1 1)确定数据仓库的主题)确定数据仓库的主题 根据电信业务和电信运营的需求,电信公司涉及的最主要的三个主题是:客户发展 收益分析 呼叫特性分析 2.1 数据仓库设计数据仓库设计(2 2)数据仓库模型的设计)数据仓库模型的设计可用的数据可用的数据 例如,要完成客户发展、收益分析、呼叫特性分析三个主题,下列三部分信息是必要的
11、,即:客户的基本信息表 客户的账单信息表 客户的呼叫信息表 2.1 数据仓库设计数据仓库设计(2 2)数据仓库模型的设计)数据仓库模型的设计粒度的确定粒度的确定 在数据仓库设计中,最重要的步骤是确定数据的粒度。单一粒度单一粒度 对于客户基本信息表,由于它属于增长较为缓慢的信息(随着客户数量的增长,客户业务信息的变更表会增长),可以使用单一的数据粒度。2.1 数据仓库设计数据仓库设计(2 2)数据仓库模型的设计)数据仓库模型的设计 OLAP OLAP模型的设计模型的设计 针对每一个主题确定其需要的维度和度量变量,然后为每一个主题定义关系模式,从而形成一个星型结构,在这个星型结构的基础上,可以生成
12、多维数据表,建立多维数据库。以客户信息主题为例,客户信息主题的维度设计书如下:2.1 数据仓库设计数据仓库设计 数据提取转换加载随着应用和系统环境的不同而具有不同的特点。一般而言,总包括下面的处理过程:a.预处理 正式开始作业之前的准备工作,包括清空工作区、检查过渡准备区。如果需要直接访问操作型数据源系统时,要检查远程数据库服务器状态,并核对目标区数据加载状态,以核算出加载作业的参数,如加载数据的时间间隔和范围(24小时的数据,还是前3天的数据)。2.2 ETL设计设计 b.启动数据加载的批作业 c.因为维度表有事实表所参照的主键,所以要先完成对维表的加载,生成维表主键,并作为以后加载事实表所
13、需要的外键。在加载维表中,有时要处理好缓慢变化的维的问题,并可能涉及到版号的处理问题。2.2 ETL设计设计 d.加载事实表 这中间也涉及到键查找的问题,即从有关维表中找到相应的主键,并以此作事实表的外键。e.事实表加载完成后,再对总计方阵体系进行刷新,以保障总计方阵与它的基础数据同步。f.设计具有完善的出错处理机制和作业控制日志系统,用以监测和协调整个加载的过程。2.2 ETL设计设计加载数据到数据仓库的具体步骤加载数据到数据仓库的具体步骤 设定数据库和数据源 建立多维数据集 设计存储和处理多维数据集 为多维数据集创立分区2.3 数据仓库实现数据仓库实现企业级数据仓库的实现途径企业级数据仓库
14、的实现途径从建造某个部门特定的数据集市开始,逐步扩充数据仓库所包含的主题和范围,最后形成一个能够完全反映企业全貌的企业级数据仓库;从一开始就从企业的整体来考虑数据仓库的主题和实施。2.3 数据仓库实现数据仓库实现 第一种方法类似于软件工程中“自底向上”的方法,投资少、周期短且易于见到成果,但由于该设计开始时是以特定的部门级主题为框架的,向其他的主题和部门扩充往往比较困难;第二种方法与第一种相反,即“自顶向下”的方法,投资大、周期长。实际中大多采用第一种方法。2.3 数据仓库实现数据仓库实现3 数据仓库实例数据仓库实例3.1 实例一实例一3.2 实例二实例二4 OLAP和和OLAM4.1 OLA
15、P4.2 OLAM OLAP OLAP定义定义 60年代,关系数据库之父E.F.Codd提出了关系模型,促进了联机事务处理(OLTP)的发展(数据以表格的形式而非文件方式存储)。1993年,E.F.Codd提出了OLAP概念,认为OLTP已不能满足终端客户对数据库查询分析的需要,SQL对大型数据库的简单查询也不能满足终端客户分析的要求。客户的决策分析需要对关系数据库进行大量计算才能获得结果,而查询的结果并不能满足决策者提出的需求。因此,E.F.Codd提出了多维数据库和多维分析的概念,即OLAP。4.1 OLAP OLAPOLAP(On-Line Analysis ProcessingOn-L
16、ine Analysis Processing)定义)定义 是数据仓库上的分析展示工具,它建立在数据多维视图的基础上。OLAPOLAP的主要特点的主要特点 一是在线性(On Line),体现为对用户请求的快速响应和交互式操作;二是多维分析(Multi_Analysis),这是OLAP技术的核心所在。4.1 OLAP 根据对数据的组织方式的不同,OLAP分为两种:基于多维数据库的基于多维数据库的OLAP(MD-OLAP)OLAP(MD-OLAP)基于关系数据库的基于关系数据库的OLAP(ROLAP)OLAP(ROLAP)前者响应速度快、执行效率高,但源于结构的局限,灵活性不高。与之相比,后者由于
17、建立在大量现有数据库(数据仓库)的基础上,灵活性、扩展性要高的多,并且支持大数据量和较多维数的能力也要强于前者。因此,虽然在响应速度、执行效率上差一点,仍然得到了广泛应用。现有的OLAP工具大多基于后者。4.1 OLAP 将OLAP与数据挖掘结合起来,发展出一种为数据挖掘服务的具有新型OLAP的数据仓库,将更能适应实际的需要。OLAM(On Line Analytical Mining,联机分析挖掘)正是这种结合的产物。4.2 OLAM5 数据挖掘基础数据挖掘基础5.1 概述概述5.2 实现实现5.3 工具工具 二十世纪末以来,全球信息量以惊人的速度急剧增长据估计,每二十个月将增加一倍。许多组
18、织机构的IT系统中都收集了大量的数据(信息)。目前的数据库系统虽然可以高效地实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。为了充分利用现有信息资源,从海量数据中找出隐藏的知识,数据挖掘技术应运而生并显示出强大的生命力。5.1 概述概述 数据挖掘是八十年代投资AI研究项目失败后,AI转入实际应用时提出的。它是一个新兴的,面向商业应用的AI研究。1989年8月,在美国底特律召开的第11届国际人工智能联合会议的专题讨论会上首次出现数据库中的知识发现(Knowledge Discovery in Database,KDD)这一术语。随后,在1
19、991年、1993年和1994年都举行KDD专题讨论会,汇集来自各个领域的研究人员和应用开发者,集中讨论数据统计、海量数据分析算法、知识表示、知识运用等问题。最初,数据挖掘是作为KDD中利用算法处理数据的一个步骤,其后逐渐演变成KDD的同义词。5.1 概述概述 现在,人们往往不加区别地使用两者。KDD常常被称为数据挖掘(Data Mining),实际两者是有区别的。一般将KDD中进行知识学习的阶段称为数据挖掘(Data Mining),数据挖掘是KDD中一个非常重要的处理步骤。数据挖掘是近年来出现的客户关系管理(Customer Relationship Management,CRM)、商业智
20、能(Business Intelligence,BI)等热点领域的核心技术之一。5.1 概述概述 数据准备数据准备 KDD的处理对象是大量的数据,这些数据一般存储在数据库系统中,是长期积累的结果。但往往不合适直接在这些数据上进行知识挖掘,需要做一些准备工作,也就数据的预处理。数据预处理包括数据的选择(选择相关数据)、净化(消除噪音、冗余数据)、推测(推算缺值数据)、转换(离散型数据与连续型数据之间的转换)、数据缩减(减少数据量)等。数据准备是KDD的第一个步骤,也是比较重要的一个步骤。数据准备得好坏将直接影响数据挖掘的效率和准确度以及最终模式的有效性。5.2 实现实现 数据挖掘数据挖掘 数据挖
21、掘是最为关键的步骤,它根据KDD的目标,选取相应算法的参数,分析数据,得到可能形成知识的模式模型。目前采用较多的技术有决策树、分类、聚类、粗糙集、关联规则、神经网络、遗传算法等。5.2 实现实现 模式的评估、解释模式的评估、解释 通过上面步骤所得到的模式,有可能是没有意义或没有实用价值的,因此需要评估,确定那些是有效的、有用的模式。此外,大部分模式是用数学手段描述的表达式,很难被人理解,还需要将其解释成可理解的方式以呈现给用户。5.2 实现实现 知识运用知识运用 发现知识是为了运用,如何使知识能被运用也是KDD的步骤之一。运用知识有两种方法:一种是只需看知识本身所描述的关系或结果,就可以对决策
22、提供支持;另一种是要求对新的数据运用知识,由此可能产生新的问题,而需要对知识做进一步的优化。KDD过程可能需要多次的循环反复,每一个步骤一旦与预期目标不符,都要回到前面的步骤,重新调整,重新执行。5.2 实现实现 一般而言,一个企业实施数据挖掘项目有三种方式可供选择:购买成熟的模型 购买一般性数据挖掘系统软件 构建数据挖掘系统 5.2 实现实现 目前,世界上比较有影响的典型数据挖掘系统包括:Enterprise Miner(SAS公司)Intelligent Miner(IBM公司)SetMiner(SGI公司)Clementine(SPSS公司)Warehouse Studio(Sybase
23、公司)See5(RuleQuest Research公司)CoverStory EXPLORA Knowledge Discovery Workbench DBMiner Quest等5.3 工具工具6 聚类分析聚类分析6.1 硬聚类硬聚类6.2 模糊聚类模糊聚类6.3 评价评价 聚类分析聚类分析 从纷繁复杂的数据中,根据最大化类内相似性、最小化类间相似性的原则进行聚类或分组。即使得在一个簇内的对象具有高相似性,而不同簇间的对象具有低相似性的过程。6.1 硬聚类硬聚类6.1 硬聚类硬聚类 基于划分的聚类方法基于划分的聚类方法 基于层次的聚类方法基于层次的聚类方法 基于密度的聚类方法基于密度的聚
24、类方法 基于网格的聚类方法基于网格的聚类方法 基于模型的聚类方法基于模型的聚类方法 6.2 模糊聚类模糊聚类 模糊聚类(Fuzzy Clustering Analysis,FCA)是指一个对象以不同程度属于多个类,各个类之间的界限是不确定的。其本质是不仅要考虑对象是否属于该类,而且要考虑属于该类的程度如何。模糊聚类完全不同于所谓的硬聚类,即类别之间的界限是明确而严格的。聚类有效性对聚类分析具有重要意义,被认为是聚类分析的一个瓶颈。对于相同的数据集合,采用不同的聚类方法,可能得到不同的聚类结果。即便是采用同一种聚类方法,若选择不同的初始参数(如聚类数、聚类中心等)也可能会得到不同的聚类结果。6.
25、3 评价评价 可伸缩性可伸缩性 即算法中模式数发生变化的情况。有些算法在模式数小的条件下,算法的性能很好,但是模式数增大后,算法性能下降。如PAM算法是一种k-中心点算法,它对小的数据集合非常有效,但对大的数据集合则没有良好的可伸缩性。高维性高维性 即算法中模式属性个数发生变化的情况。同样,有些算法只擅长处理低维数据。在高维空间中聚类是一个挑战,特别是数据有可能非常稀疏和偏斜。6.3 评价评价 发现任意形状的聚类发现任意形状的聚类 一个簇可能是任意形状的,但一般的聚类算法是基于欧氏距离和曼哈顿距离度量实现聚类,更趋于发现球状簇。在这方面,基于密度的聚类方法较好。处理噪声数据的能力处理噪声数据的
26、能力 噪声数据可能是数据本身不完整,也可能是孤立点数据(Outlier)。有些算法不擅于处理孤立点数据,因此还专门出现了发现孤立点数据的算法。6.3 评价评价 用于决定输入参数的领域知识最小化和输用于决定输入参数的领域知识最小化和输入记录顺序敏感性入记录顺序敏感性 一方面要求降低算法对输入参数的敏感程度,另一方面要求输入记录顺序对算法的结果影响小。如经典的k-均值算法,需要预先给出簇的数目。在一些知识发现应用中,这一参数非常影响聚类的质量。这常常是高效率算法的弱点。6.3 评价评价 可解释性和可用性可解释性和可用性 知识发现过程中,聚类结果总是表现为一定的知识,这就要求聚类结果可解释、易理解。
27、这与可视化密切相关,同时也与实际应用有关。如SOM(Self Organization Mapping)算法用于文本聚类可以产生知识地图,表现了良好的可视化性能。7 分类和预测分类和预测7.1 概述概述7.2 神经网络神经网络7.3 决策树决策树7.4 实现过程实现过程7.1 概述概述 分类是数据挖掘中的一个重要课题。分类的目的是获得一个分类函数或分类模型(也常常称作分类器),该模型能把数据库中的数据项映射到某一个给定类别。分类可用于提取描述重要数据类的模型或预测未来的数据趋势。分类方法的评价标准分类方法的评价标准 预测的正确性 时间 构建模型的时间 使用模型所需的时间 健壮性 处理噪声及缺失
28、值的能力 可扩展性 可操作性 规则的优化 决策树的大小 分类规则的简洁性7.1 概述概述常见的分类方法常见的分类方法 决策树分类 决策树归纳是一种经典的分类算法。它采用自顶向下、递归的、各个击破的方式构造决策树。树的每一个结点上使用信息增益度量选择属性,可以从所生成的决策树中提取出分类规则。7.1 概述概述 KNNKNN分类分类 即K最近邻法,最初由Cover和Hart于1968年提出的,是一个理论上比较成熟的方法。该方法的思路非常简单直观:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)样本中的大多数属于某一个类别,则该样本也属于这个类别。该方法在分类决策上只依据最邻近的一个或者几
29、个样本的类别来决定待分类样本所属的类别。该算法较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。7.1 概述概述 SVMSVM分类方法分类方法 即支持向量机(Support Vector Machine)法,由Vapnik等人于1995年提出,具有相对优良的性能指标。该方法是建立在统计学习理论基础上的机器学习方法。通过学习,SVM可以自动寻找出那些对分类有较好区分能力的支持向量,由此构造出的分类器可以最大化类与类的间隔,因而有较好的适应能力和较高的分准率。该方法只需要由各类域的边界样本的类别来决定最后的分类结果。SVM法对小样本情况下的自动分类有着较
30、好的分类结果。7.1 概述概述 VSMVSM分类方法分类方法 即向量空间模型(Vector Space Model)法,由Salton等人于60年代末提出。这是最早也是最著名的信息检索方面的数学模型。其基本思想是将文档表示为加权的特征向量:D=D(T1,W1;T2,W2;Tn,Wn),然后通过计算文本相似度的方法来确定待分类样本的类别。当文本被表示为空间向量模型的时候,文本的相似度就可以借助特征向量之间的内积来表示。VSM法相对其他分类方法而言,更适合于专业文献的分类。人工神经网络人工神经网络(ANN)(ANN)预测方法预测方法 目前应用最广泛的短期预测方法。它是一种通用的非线性自适应函数估计
31、器,通过对研究目标的历史数据训练,建立起复杂的非线性映射模型。它不依赖于输入变量和预测目标之间明确的表达式,输入变量和预测目标之间的关系通过训练过程来形成,避免了建模过程的困难;另一显著特征是它的自适应算法,在每一时刻都可以选择新的训练样本来估计和调整系统参数,得到预测值。现在多采用误差反向传播(BP)算法和径向基函数(RBF)方法。但是,它的隐层神经元个数不易确定,易陷入局部最优点,需要大量训练样本且训练时间较长。7.1 概述概述 专家系统预测方法专家系统预测方法 基于知识建立起来的计算机系统,它拥有某个领域内专家们的知识和经验,能像专家们那样运用这些知识,通过推理作出决策。实践证明,专家系
32、统预测不仅需要新技术的支持,同时也需要融合人类自身的经验和智慧。因此,需要专家系统的相关技术。但是,知识获取的“瓶颈”问题妨碍了专家系统的快速开发。7.1 概述概述 模糊预测方法模糊预测方法 建立在模糊数学理论上的一种预测新技术,模糊数学是用数学方法来研究和处理具有“模糊性”的现象。所谓模糊性主要是指有关事物差异的中间过渡中的不分明性,如温度值的“高与低”等,这些模糊现象很难明确划分其界限。7.1 概述概述 小波分析预测方法小波分析预测方法 20世纪数学研究成果中最杰出的代表。它是一种时域频域分析方法,在时域和频域上同时具有良好的局部化性质。7.1 概述概述 优选组合预测方法(两种)优选组合预
33、测方法(两种)一是指将几种预测方法所得预测结果,选取适当权重进行加权平均;二是指将几种预测方法进行比较,选择拟合优度最佳或标准离差最小的预测模型作为最优模型进行预测。组合预测方法是建立在信息利用最大化的基础上,它集结多种单一模型所包含的信息,进行最优组合。因此,在大多数情况下,通过组合预测可以达到改善预测结果的目的。7.1 概述概述7.2 神经网络神经网络 人工神经网(Artificial Neural Network,ANN)是20世纪80年代后期迅速发展起来的人工智能技术,它对噪声数据具有很高的承受能力,对未经训练的数据具有分类模拟的能力,因此在网站信息、生物信息和基因以及文本的数据挖掘等
34、领域得到了越来越广泛的应用。在多种ANN模型中,反向传播(Back Propagation,BP)网络是应用最广的一种。神经网络的训练神经网络的训练 训练的终止条件 获得一组权重值,使得训练集中几乎所有样本都分类正确 训练步骤 利用随机值对权值进行初始化 将训练样本逐一地输入给神经网络,进行训练 对于每个神经元 将其所有的输入值进行线性求和计算得到总的输入 利用激励函数计算其输出值 计算误差 修正网络权值和阈值(偏差)7.3 决策树决策树 决策树分类是用属性值对样本集逐级划分,直到一个节点仅含有同一类的样本为止。决策树首先起源于Hunt等人提出的概念学习系统(Concept Learning
35、System,CLS),然后发展到Quinlan的ID3算法,最后演化为能处理连续属性值的C45算法。7.3 决策树决策树 决策树的输入决策树的输入 一组带有类别标记的样本 决策树的输出决策树的输出 一棵二叉或多叉树。二叉树的内部节点(非叶子节点)一般表示为一个逻辑判断,如形式为(ai=vi)的逻辑判断,其中ai是属性,vi是该属性的某个属性值;树的边是逻辑判断的分支结果。多叉树(ID3)的内部节点是属性,边是该属性的所有取值,有几个属性值,就有几条边。树的叶子节点则是类别标记。7.3 决策树决策树 决策树的构造决策树的构造 采用自上而下的递归构造。以多叉树为例,其构造思路是:如果训练样本集中
36、所有样本是同类的,则将它作为叶子节点,节点内容即是该类别标记;否则,根据某种策略选择一个属性,按照属性的不同取值,将样本集划分为若干子集,使得每个子集上的所有样本在该属性上具有同样的属性值。然后再依次处理各个子集。实际上就是“分而治之”(divide-and-conquer)的策略。二叉树同理,差别仅在于要选择一个好的逻辑判断。7.3 决策树决策树 决策树构造的条件决策树构造的条件 构造好的决策树的关键是:如何选择好的逻辑判断或属性。对于同样一组样本,可以有很多决策树能符合这组样本。研究表明,一般情况下,树越小则树的预测能力越强。要构造尽可能小的决策树,关键在于选择恰当的逻辑判断或属性。由于构
37、造最小的树是NP问题,因此只能采用启发式策略选择好的逻辑判断或属性。7.3 决策树决策树 剪枝技术剪枝技术 是一种克服噪声的技术,同时它也能使树得到简化而变得更容易理解。剪枝的类型剪枝的类型 -向前剪枝(forward pruning)在生成树的同时决定是继续对不纯的训练子集进行划分还是停机。-向后剪枝(backward pruning)是一种两阶段法:拟合化简(fitting-and-simplifying),首先生成与训练数据完全拟合的一棵决策树,然后从树的叶子开始剪枝,逐步向根的方向剪。7.3 决策树决策树 剪枝的局限性剪枝的局限性 剪枝并不是对所有的数据集都好,就象最小树并不是最好(具
38、有最大的预测率)的树。当数据稀疏时,要防止过分剪枝(over-pruning)。从某种意义上而言,剪枝也是一种偏向(bias),对有些数据效果好而有些数据则效果差。构建模型:预设分类类别 对每个样本进行类别标记 训练集构成分类模型 分类模型可表示为:分类规则、决策树或数学公式 使用模型:识别未知对象的所属类别 模型正确性的评价 已标记分类的测试样本与模型的实际分类结果进行比较 模型的正确率是指测试集中被正确分类的样本数与样本总数的百分比。测试集与训练集相分离,否则将出现过拟合(over-fitting)现象。7.4 实现过程实现过程8 关联分析关联分析8.1 概述概述8.2 Apriori8.
39、3 FPGrowth8.1 概述概述 AprioriApriori算法的基本流程算法的基本流程 使用逐层搜索的迭代方法,通过对数据库的多次扫描发现所有的频繁项集。在每一趟扫描中只考虑具有同一长度k(即为项集中所含项目的个数)的所有项集。算法的第一次扫描仅仅计算每个项目的具体支持度,以确定长度为1的频繁项集。在后继的每一次扫描中,首先使用在前一次获得的频繁项集Lk-1和Apriori-gen函数产生的候选项集q,接着扫描数据库,计算Ck中候选项的支持度,最后确定候选项集中哪些真正成为频繁项集。重复上述过程直到再也发现不了新的频繁项集为止。8.2 Apriori算法算法算法算法 Apriori A
40、priori 算法的局限性算法的局限性 由于依赖于候选项集产生频繁项集的理论(Apriori类算法)所开发的算法具有先天的弱点,使得在基于Apriori算法开发的应用没有实质性突破。Han等提出的一种新的算法理论,用一种压缩的数据结构(FP-tree)存储关联规则挖掘所需的全部数据信息,通过对源数据的两次扫描,将数据信息存到这种结构里,避开了产生候选项集的步骤,极大地减少了数据交换和频繁匹配的开销。这就是所谓无候选项集产生的算法(Frequent Patterns Growth,FP-growth)。8.3 FP-Grpwth算法算法 改进的算法改进的算法FP-growthFP-growth(
41、1)它构造了一种新颖的、紧凑的数据结构FP-tree。它是一种扩展的前缀树结构,存储了关于频繁模式数量的重要信息。(2)开发了基于FP-tree的模式片断成长算法,它从长度为1的频繁模式开始,只检查它的条件模式构建它的条件模式树,并且在这个树上递归地进行挖掘。模式的成长通过联合条件模式树新产生的后缀模式实现。(3)挖掘过程中采用的搜索技术是基于分区的,通过分割再解决的方法,而不是Apriori类算法的自下向上产生频繁模式的集合。FP-growthFP-growth算法的主要思想算法的主要思想 该算法主要是为了克服类Apriori算法的产生候选项集的缺点,通过采用一种新的数据结构FP-tree来
42、达到目的。优点:只扫描数据库二次,并且不用产生候选项集,提高了效率。8.3 FP-Grpwth算法算法9 Web挖掘挖掘9.1 概述概述9.2 Web文档抽取和表示文档抽取和表示9.3 特征抽取特征抽取9.4 Web聚类聚类9.5 Web分类分类9.1 概述概述 定义定义 描述性的定义 Web挖掘是指使用数据挖掘技术在WWW数据中发现潜在的、有用的模式或信息。Web挖掘是一项综合技术,覆盖了多个研究领域,包括Web技术、数据库、数据挖掘、计算机语言学、信息获取、统计学以及人工智能等。抽象化的定义 一般地,Web挖掘是指从大量Web集合中发现隐含的模式。如果将看作输入,将看作输出,则Web挖掘就
43、是一个从输入到输出的映射,即:。9.1 概述概述 定义定义 概括性的定义 Web挖掘是从与WWW相关的资源和行为中抽取感兴趣的、潜在的有用的模式和隐含信息。Web挖掘可在很多方面发挥作用,如搜索引擎结构挖掘、确定权威页面、Web文档分类、Web日志挖掘和智能检索等。9.2 Web文档抽取和表示文档抽取和表示 Web表示模型表示模型 布尔模型 概率模型 向量空间模型 9.3 特征抽取特征抽取 Web表示模型表示模型 统计 TFIDF 互信息互信息 9.4 Web聚类聚类 实现步骤实现步骤 模式表示,包括特征抽取以及把Web文档表示成可计算的形式;根据领域知识定义模式之间的距离测度公式;聚类或者分
44、组;评价输出结果。9.4 Web聚类聚类主要困难主要困难 一个Web文档可能包含多个主题,允许属于不同主题的文档归入多个不同的簇。高维诅咒问题,即由于文档特征项维度众多而造成处理效率严重降低。海量文档的处理效率。聚类效果评价。9.5 Web分类分类10 数据挖掘实例数据挖掘实例10.1 客户细分客户细分 10.2 重入网识别重入网识别 10.3 WAP日志挖掘日志挖掘10.1 客户细分客户细分 客户群价值分布客户群价值分布 低低端端客客户户中中高高端端客客户户高高端端客客户户中中端端客客户户0.0 02 5 0.0 05 0 0.0 07 5 0.0 0客客户户价价值值n n=3 3 6 6
45、0 0 6 6n n=5 5 6 6 9 9n n=1 1 0 0 8 8n n=5 5 4 4 1 110.1 客户细分客户细分 客户消费行为的聚类结果客户消费行为的聚类结果 10.1 客户细分客户细分 客户通话行为的聚类结果客户通话行为的聚类结果 10.2 重入网识别重入网识别 识别过程识别过程 确定待匹配用户和新入网用户清单。呼叫指纹识别需要建立新入网用户群和待匹配用户群两个数据集。选择特征变量和数据清洗 建立呼叫指纹库 设定呼叫指纹相似度阈值,大于该阈值的匹配用户对可界定为疑似重入网用户。验证 10.3 WAPWAP日志挖掘日志挖掘 分析过程分析过程 数据整合 聚类 结果展示 解释和评
46、价 11 知识知识11.1 概述概述11.2 知识分类知识分类11.3 知识表示知识表示11.4 知识管理知识管理11.1 概述概述 信息信息 是事物运动的状态和状态变化的方式。数据数据 指一个有关事实F的集合(如学生档案数据库中有关学生基本情况的各条记录),用来描述事物有关方面的信息。一般而言,这些数据都是准确无误的。数据可能存储在数据库、数据仓库和其他信息资料库中。11.1 概述概述 知识知识 人们实践经验的结晶且为新的实践所证实的;是关于事物运动的状态和状态变化的规律;是对信息加工提炼所获得的抽象化产物。知识的形式可能是模式、关联、变化、异常以及其他有意义的结构。11.1 概述概述 模式
47、模式 对于集合F中的数据,我们可以用语言L来描述其中数据的特性,得出一个表达式E,E所描述的数据是集合F的一个子集FE。只有当表达式E比列举所有FE中元素的描述方法更为简单时,我们才可称之为模式。如:“如果成绩在81-90之间,则成绩优良”可称为一个模式,而“如果成绩为81、82、83、84、85、86、87、88、89或90,则成绩优良”则不能不能称之为一个模式。11.2 知识分类知识分类 显性知识显性知识 可以通过正常的语言方式传播的知识,典型的显性知识主要是指以专利、科学发明和特殊技术等形式存在的知识,存储在书本、计算机数据库、CD ROM中。显性知识是可以表达的、有物质载体的和可确知的
48、。在OECD所划分的四类知识中,关于Know-what和Know-why的知识基本属于显性知识。隐性知识或称为隐含经验类知识(隐性知识或称为隐含经验类知识(Tacit Knowledge)个人或组织经过长期积累而拥有的知识,通常不易用言语表达,也不可能传播给别人或传播起来非常困难。例如技术高超的厨师或艺术家可能达到世界水平,却很难将自己的技术或技巧表达出来从而将其传播给别人或共享。隐性知识对应的是OECD分类中Know-how和Know-who的知识,其特点是不易被认识到、不易衡量其价值、不易被其他人所理解和掌握。11.3 知识表示知识表示11.3 知识表示知识表示产生式系统产生式系统 自然界
49、的各种知识单元之间存在着大量的因果关系,这些因果关系或者前提与结论的关系,采用产生式(或称规则)表示是非常方便的。实际上,谓词公式的蕴含关系就是产生式的特例,如“天下雨,地上湿了”。11.3 知识表示知识表示语义网络语义网络 语义网络是对对象及其属性分类知识编码的图形结构。语义网络是一种由节点及节点间带标记的连接弧组成的有向图,其中节点表示事物、对象、状态和概念等,有两类;连接弧表示节点间的关系,有三类,可用标记说明具体的语义关系。11.3 知识表示知识表示概念图概念图 概念图以图形表示就是一种有向连通图,包括概念结点和概念关系结点两种。弧的方向代表概念结点和概念关系结点之间的联系。概念结点表
50、示问题领域中的一个具体的或抽象的实体,概念关系结点表示概念结点之间的联系。11.3 知识表示知识表示框架框架 框架通常由描述事物的各个方面的槽组成,每个槽可以有若干个侧面,而每个侧面又可以有若干个值。框架是一种通用的知识表达方法,对于如何运用框架还没有一种统一的形式,常常由各种问题的不同需要决定。11.4 知识管理知识管理目标目标 知识的发布,以使一个组织内的所有成员都能应用知识;确保知识在需要时是可得的;推进新知识的有效开发;支持从外部获取知识;确保知识、新知识在组织的扩散;确保组织内部的人知道所需知识在何处。11.4 知识管理知识管理框架框架 框架通常由描述事物的各个方面的槽组成,每个槽可