1、2019/2/15,1,数据挖掘入门,2019/2/15,2,引言 KDD与数据挖掘 数据挖掘方法 数据挖掘的应用和发展趋势 数据预处理 可视化数据挖掘,2019/2/15,3,一、引言,什么激发了数据挖掘近年来,数据挖掘引起了信息产业界的极大关注,其主要原因是存在大量数据可以广泛使用,并且迫切需要将这些数据转换成有用的信息和知识。获取的信息和知识可以广泛应用于各种领域,如商务管理、生产控制、市场分析、工程设计和科学探索等。面对海量数据库和大量繁杂信息,如何才能从中提取有价值的知识,进一步提高信息的利用率,由此引发了一个新的研究方向:基于数据库的知识发现(Knowledge Discovery
2、 in Database)及相应的数据挖掘(Data Mining)理论和技术的研究。,2019/2/15,4,为什么数据挖掘是重要的数据的丰富带来了对强有力的数据分析工具的需求。快速增长的海量数据收集存放在大型和大量的数据库中,没有强有力的工具,这些数据就变成了“数据坟墓”难得再访问的数据档案。因此数据和信息之间的鸿沟要求系统地开发数据挖掘工具,将数据坟墓转换成知识“金块”。,2019/2/15,5,2.1 KDD定义人们给KDD下过很多定义,内涵也各不相同,目前公认的定义是由Fayyad等人提出的。所谓基于数据库的知识发现(KDD)是指从大量数据中提取有效的、新颖的、潜在有用的、最终可被理
3、解的模式的非平凡过程。,二、KDD与数据挖掘,2019/2/15,6,2.2 KDD过程KDD是一个人机交互处理过程。该过程需要经历多个步骤,并且很多决策需要由用户提供。从宏观上看,KDD过程主要经由三个部分组成,即数据整理、数据挖掘和结果的解释评估。,2019/2/15,7,知识发现(KDD)的过程,数据清理筛选,数据,目标数据,Knowledge,预处理及变换,变换后的数据,数据挖掘,解释/评估,2019/2/15,8,知识发现(KDD)的步骤,数据准备:了解KDD应用领域的有关情况。包括熟悉相关的知识背景,搞清用户需求。数据选取:数据选取的目的是确定目标数据,根据用户的需要从原始数据库中
4、选取相关数据或样本。在此过程中,将利用一些数据库操作对数据库进行相关处理。数据预处理:对步骤2中选出的数据进行再处理,检查数据的完整性及一致性,消除噪声及与数据挖掘无关的冗余数据,根据时间序列和已知的变化情况,利用统计等方法填充丢失的数据。,2019/2/15,9,数据变换:根据知识发现的任务对经过预处理的数据再处理,主要是通过投影或利用数据库的其它操作减少数据量。确定KDD目标:根据用户的要求,确定KDD要发现的知识类型。选择算法:根据步骤5确定的任务,选择合适的知识发现算法,包括选取合适的模型和参数。,2019/2/15,10,数据挖掘:这是整个KDD过程中很重要的一个步骤。运用前面的选择
5、算法,从数据库中提取用户感兴趣的知识,并以一定的方式表示出来。模式解释:对在数据挖掘步骤中发现的模式(知识)进行解释。通过机器评估剔除冗余或无关模式,若模式不满足,再返回到前面某些处理步骤中反复提取。知识评价:将发现的知识以用户能了解的方式呈现给用户。其中也包括对知识一致性的检查,以确信本次发现的知识不会与以前发现的知识相抵触。,2019/2/15,11,什么是数据挖掘数据挖掘(从数据中发现知识)从海量的数据中抽取感兴趣的(有价值的、隐含的、以前没有用但是潜在有用信息的)模式和知识。其它可选择的名字数据库中知识挖掘、知识提取、数据/模式分析、数据考古、数据捕捞、信息获取、事务智能等。广义观点数
6、据挖掘是从存放在数据库、数据仓库中或其它信息库中的大量数据中挖掘有趣知识的过程。,2019/2/15,12,数据挖掘系统的组成数据库、数据仓库或其他信息库:是一个或一组数据库、数据仓库、电子表格或其他类型的信息库。可以在数据上进行数据清理和集成。数据库或数据仓库服务器:根据用户的挖掘请求,数据库或数据仓库服务器负责提取相关数据。知识库:是领域知识,用于指导搜索,或评估结果模式的兴趣度。,2019/2/15,13,数据挖掘引擎:数据挖掘系统的基本部分,由一组功能模块组成,用于特征化、关联、分类、聚类分析以及演变和偏差分析。模式评估模块:使用兴趣度量,并与数据挖掘模块交互,以便将搜索聚焦在有趣的模
7、式上,可能使用兴趣度阈值过滤发现的模式。图形用户界面:该模块在用户和数据挖掘系统之间通信,允许用户与系统交互,指定数据挖掘查询或任务,提供信息,帮助搜索聚焦,根据数据挖掘的中间结果进行探索式数据挖掘。,2019/2/15,14,数据挖掘系统结构,数据仓库,数据清理 数据集成,过滤,数据库,数据库或数据仓库服务器,数据挖掘引擎,模式评估,图形用户界面,知识库,2019/2/15,15,3.1 可以分别按挖掘任务、挖掘对象和挖掘方法来分类。按挖掘任务分类:包括分类或预测知识模型发现,数据总结,数据聚类,关联规则发现,时序模式发现,依赖关系或依赖模型发现,异常和趋势发现等。按挖掘对象分类:包括关系数
8、据库,面向对象数据库,空间数据库,时态数据库,文本数据库,多媒体数据库,异构数据库,数据仓库,演绎数据库和Web数据库等。,三、数据挖掘方法,2019/2/15,16,按挖掘方法分类:包括统计方法,机器学习方法,神经网络方法和数据库方法,其中:统计方法可分为:回归分析(多元回归、自回归等),判别分析(贝叶斯判别、费歇尔判别、非参数判别等),聚类分析(系统聚类、动态聚类等),探索性分析(主成分分析、相关分析等)等。机器学习方法可分为:归纳学习方法(决策树、规则归纳等),基于范例学习,遗传算法等。神经网络方法可以分为:前向神经网络(BP算法等),自组织神经网络(自组织特征映射、竞争学习等)。数据库
9、方法分为:多为数据分析和OLAP技术,此外还有面向属性的归纳方法。,2019/2/15,17,3.2 数据挖掘方法粗糙集1982年波兰数学家Z.Pawlak针对G.Frege的边界线区域思想提出了粗糙集(Rough Set),他把那些无法确认的个体都归属于边界线区域,而这种边界线区域被定义为上近似集和下近似集之差集。粗糙集理论主要特点在于它恰好反映了人们用粗糙集方法处理不分明问题的常规性,即以不完全信息或知识去处理一些不分明现象的能力,或依据观察、度量到的某些不精确的结果而进行分类数据的能力。,2019/2/15,18,模糊集经典集合理论对应二值逻辑,一个元素要么属于、要么不属于给定集合。因此
10、经典集合不能很好地描述具有模糊性和不确定性的问题。美国加利福尼亚大学的扎德教授于1965年提出了模糊集合论,用隶属程度来描述差异的中间过渡,是一种用精确的数学语言对模糊性进行描述的方法。,2019/2/15,19,定义:论域X=x上的模糊集合A由隶属函数A(x)来表征。其中A(x)在实轴的闭区间0,1中取值,A(x)的大小反映x对于模糊集合A的隶属程度。A(x)的值接近1,表示x隶属于A的程度很高。A(x)的值接近0,表示x隶属于A的程度很低。特例,当A的值域取0,1闭区间的两个端点,亦即0,1两个值时,A便退化为一个普通的逻辑子集。隶属函数也就退化为普通逻辑值。,2019/2/15,20,聚
11、类分析聚类是对物理的或抽象的对象集合分组的过程。聚类生成的组为簇,簇是数据对象的集合。簇内部任意两个对象之间具有较高的相似度,而属于不同簇的两个对象间具有较高的相异度。相异度可以根据描述对象的属性值计算,对象间的距离是最常采用的度量指标。在实际应用中,经常将一个簇中的数据对象作为一个整体看待。用聚类生成的簇来表达数据集不可避免地会损失一些信息,但却可以使问题得到必要的简化。主要的数据挖掘聚类方法有:划分的方法、层次的方法、基于密度的方法、基于网格的方法、基于模型的方法,2019/2/15,21,关联规则关联规则反映一个事物与其它事物之间的相互依存性和关联性,如果两个事物或者多个事物之间存在一定
12、的关联关系,那么其中一个事物就能够通过其他事物预测到。人们希望在海量的商业交易记录中发现感兴趣的数据关联关系,用以帮助商家作出决策。例如:面包 2% 牛奶 1.5% (占超市交易总数)2%和1.5%表明这两种商品在超市经营中的重要程度,称为支持度。商家关注高支持度的产品。面包=牛奶 60%在购买面包的交易中,有60%的交易既买了面包又买了牛奶,成60%为规则“面包=牛奶”的信任度。信任度反映了商品间的关联程度。,2019/2/15,22,项目构成的集合称为项集。项集在事物数据库中出现的次数占总事物的百分比叫做项集的支持度。如果项集的支持度超过用户给定的最小支持度阈值,就称该项集是频繁项集。关联
13、规则就是支持度和信任度分别满足用户给定阈值的规则。发现关联规则需要经历如下两个步骤:(1)找出所有的频繁项。(2)由频繁项集生成满足最小信任度阈值的规则。,2019/2/15,23,5.人工神经网络人工神经网络是指由简单计算单元组成的广泛并行互联的网络,能够模拟生物神经系统的结构和功能。组成神经网络的单个神经元的结构简单,功能有限,但是,由大量神经元构成的网络系统可以实现强大的功能。由于现实世界的数据关系相当复杂,非线性问题和噪声数据普遍存在。将人工神经网络应用于数据挖掘,希望借助其非线性处理能力和容噪能力,得到较好的数据挖掘结果。将人工神经网络应用于数据挖掘的主要障碍是,通过人工神经网络学习
14、到的知识难于理解;学习时间太长,不适于大型数据集。,2019/2/15,24,6,分类与预测分类和预测是两种重要的数据分析方法,在商业上的应用很多。分类和预测可以用于提取描述重要数据类型或预测未来的数据趋势。分类的目的是提出一个分类函数或分类模型(即分类器)通过分类器将数据对象映射到某一个给定的类别中。数据分类可以分为两步进行。第一步建立模型,用于描述给定的数据集合。通过分析由属性描述的数据集合来建立反映数据集合特性的模型。第二步是用模型对数据对象进行分类。预测的目的是从历史数据记录中自动推导出对给定数据的推广描述,从而能够对事先未知的数据进行预测。,2019/2/15,25,分类的方法: 决
15、策树:决策树内部节点进行属性值测试,并根据属性值判断由该节点引出的分支,在决策树的叶结点得到结论。内部节点是属性或属性的集合,叶节点代表样本所属的类或类分布。贝叶斯分类:是一种统计学分类方法,可以预测类成员关系关系的可能性,如给定样本属于一个特征类的概率。贝叶斯方法已在文本分类、字母识别、经济预测等领域获得了成功的应用。基于遗传算法分类:模拟生物进化过程中的计算模型,是自然遗传学与计算机科学互相结合、互相渗透而形成的新的计算方法。利用选择、交叉、变异等操作对子代进行操作,优点是问题求解与初始条件无关,搜索最优解的能力极强,可以对各种数据挖掘技术进行优化。,2019/2/15,26,预测预测是构
16、造和使用模型评估无标号样本类,或评估给定样本可能具有的属性值或区间值。预测的目的是从历史数据中自动推导出对给定数据的推广描述,从而能对未来数据进行预测。例如,金融系统可以根据顾客信誉卡消费量预测他未来的刷卡消费量或用于信誉证实。推销人员希望在开拓新客户时,找出顾客一些共同特征,预测出潜在顾客群。预测的方法主要是回归统计,包括:线性回归、非线性回归、多元回归、泊松回归、对数回归等。分类也可以用来预测。,2019/2/15,27,7,多媒体数据挖掘多媒体数据库系统由多媒体数据库管理系统和多媒体数据库构成。其中多媒体数据库用于存储和管理多媒体数据,多媒体数据库管理系统负责对多媒体数据库进行管理。多媒
17、体数据库包括结构化的数据、半结构化的数据和非结构化的数据,如音频数据、视频数据、文本数据和图像数据等。 多媒体数据挖掘就是通过综合分析多媒体数据的内容和语义,从大量多媒体数据中发现隐含的、有效的、有价值的、可理解的模式,得出事件的发展趋向和关联关系,为用户提供问题求解层次上的决策支持能力。,2019/2/15,28,多媒体数据是指由多种不同类型多媒体数据组成的,包括文本、图形、图像、声音、视频图像、动画等不同类型的媒体数据。为了挖掘多媒体数据,必须对两种或多种类型的媒体数据进行综合挖掘。多媒体挖掘的方法有两种:一种是先从多媒体数据数据库中提取出结构化数据,然后用传统的数据挖掘工具在这些结构化的
18、数据上进行挖掘。另一种解决办法是研究开发可以直接对多媒体数据进行挖掘的工具。,2019/2/15,29,四、数据挖掘系统与应用,数据挖掘系统的开发工作十分复杂,不仅要有大量的数据挖掘算法,而且其应用领域往往取决于最终用户的知识结构等因素。下面介绍几个数据挖掘系统: SKICAT是MIT喷气推进实验室与天文科学家合作开发的用于帮助天文学家发现遥远的类星体的工具。 Health-KEFIR是用于健康状况预警的知识发现系统。 TASA是为预测通信网络故障而开发的通信网络预警分析系统。会产生“如果在某一时间段内发生某些预警信息组合,那么其他类型的预警信息将在某个时间范围内发生”的规则。时间段大小由用户
19、定义。 R-MINI运用分类技术从噪声中提取有价值的信息。由于是在微弱变化中获取信息,该系统也可以应用于证券领域中的股市行情预测。,2019/2/15,30,KDW是大型商业数据库中的交互分析系统。包括聚类、分类、总结、相关性分析等多种模式。 DBMiner是加拿大Simon Fraser大学开发的一个多任务KDD系统。能够完成多种知识发现,综合了多种数据挖掘技术。 Clementine可以把直观的图形用户界面与多种分析技术结合在一起,包括神经网络、关联规则和规则归纳技术。 Darwin包含神经网络、决策书和K-邻近三种数据挖掘方法,处理分类、预测和预报问题。 DMW是一个用在信用卡欺诈分析方
20、面的数据挖掘工具,支持反向传播神经网络算法,并能以自动和人工模式操作 Intelligent Miner是IBM开发的包括人工智能、机器学习、语言分析和知识发现领域成果在内的复杂软件解决方案。,2019/2/15,31,五,数据预处理,为什么需要数据预处理? 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建 本章小结,2019/2/15,32,为什么需要数据预处理 ?,在现实社会中,存在着大量的“脏”数据 不完整性(数据结构的设计人员、数据采集设备和数据录入人员) 缺少感兴趣的属性 感兴趣的属性缺少部分属性值 仅仅包含聚合数据,没有详细数据 噪音数据(采集数据的设备、数据录入人员
21、、数据传输) 数据中包含错误的信息 存在着部分偏离期望值的孤立点 不一致性(数据结构的设计人员、数据录入人员) 数据结构的不一致性 Label的不一致性 数据值的不一致性,2019/2/15,33,为什么需要数据预处理 ?,数据挖掘的数据源可能是多个互相独立的数据源 关系数据库 多维数据库(Data Cube) 文件、文档数据库 数据转换 为了数据挖掘的方便 海量数据的处理 数据归约(在获得相同或者相似结果的前提下),2019/2/15,34,为什么需要数据预处理?,没有高质量的数据,就没有高质量的挖掘结果 高质量的决策必须基于高质量的数据基础上 数据仓库是在高质量数据上的集成,2019/2/
22、15,35,数据预处理的主要任务,数据清理 填入缺失数据 平滑噪音数据 确认和去除孤立点 解决不一致性 数据集成 多个数据库、Data Cube和文件系统的集成 数据转换 规范化、聚集等 数据归约 在可能获得相同或相似结果的前提下,对数据的容量进行有效的缩减 数据离散化 对于一个特定的连续属性,尤其是连续的数字属性,可以把属性值划分成若干区间,以区间值来代替实际数据值,以减少属性值的个数.,2019/2/15,36,数据预处理的形式,数据清理,数据集成,数据转换,数据归约,2019/2/15,37,主要内容,为什么需要数据预处理? 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建
23、 本章小结,2019/2/15,38,数据清洗,主要任务 补充缺失数据 识别孤立点,平滑噪音数据 处理不一致的数据,2019/2/15,39,缺失数据的处理,部分数据通常是不可用的 在许多元组中部分属性值为空。如:在客户表中的客户收入为空。 导致数据缺失的原因 数据采集设备的故障 由于与其它信息的数据存在不一致性,因此数据项被删除 由于不理解或者不知道而未能输入 在当时数据输入的时候,该数据项不重要而忽略 数据传输过程中引入的错误 缺失数据通常需要经过合理的推断予以添加,2019/2/15,40,缺失数据的处理方法,忽略该记录(元组) 通常在进行分类、描述、聚类等挖掘,但是元组缺失类标识时 该
24、种方法通常不是最佳的,尤其是缺失数据比例比较大的时候 手工填入空缺的值 枯燥、费时,可操作性差,不推荐使用 使用一个全局的常量填充空缺数值 给定一个固定的属性值如:未知、不祥、 Unknown 、 Null等 简单,但是没有意义,2019/2/15,41,使用属性的平均值填充空缺数值 简单方便、挖掘结果容易产生不精确的结果 使用与给定元组同一个类别的所有样本的平均值 分类非常重要,尤其是分类指标的选择 使用最有可能的值予以填充 利用回归、基于推导的使用贝叶斯形式化的方法的工具或者判定树归纳确定 利用属性之间的关系进行推断,保持了属性之间的联系,缺失数据的处理方法(续),2019/2/15,42
25、,噪音数据,噪音数据:一个度量(指标)变量中的随机错误或者偏差 主要原因 数据采集设备的错误 数据录入问题 数据传输问题 部分技术的限制 数据转换中的不一致 数据清理中所需要处理的其它问题 重复的记录 不完整的数据 不一致的数据,2019/2/15,43,噪音数据的处理,分箱(Binning)的方法 聚类方法 检测并消除异常点 线性回归 对不符合回归的数据进行平滑处理 人机结合共同检测 由计算机检测可疑的点,然后由用户确认,2019/2/15,44,处理噪音数据:分箱方法,分箱(Binning)方法: 基本思想:通过考察相邻数据的值,来平滑存储数据的值 基本步骤: 首先,对数据进行排序,并分配
26、到具有相同宽度/深度的不同的“箱子”中 其次,通过箱子的平均值(Means)、中值(Median)、或者边界值等来进行平滑处理,2019/2/15,45,分箱(Binning) 方法举例,对数据进行排序: 4, 8, 9, 15, 21, 21, 24, 25, 26, 28, 29, 34 对数据进行分割(相同深度) : - Bin 1: 4, 8, 9, 15 - Bin 2: 21, 21, 24, 25 - Bin 3: 26, 28, 29, 34 根据bin中的平均值进行离散化: - Bin 1: 9, 9, 9, 9 - Bin 2: 23, 23, 23, 23 - Bin 3
27、: 29, 29, 29, 29,2019/2/15,46,基于聚类分析的平滑处理,2019/2/15,47,通过线性回归的平滑处理,x,y,y = x + 1,X1,Y1,Y1,2019/2/15,48,主要内容,为什么需要数据预处理 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建 本章小结,2019/2/15,49,数据集成,数据集成的概念 将多个数据源中的数据结合起来存放在一个一致的数据存储中 数据源包括:多个数据库、多维数据库和一般的文件 数据集成也是数据仓库建设中的一个重要问题 数据集成的内容 模式集成 利用数据库和数据仓库的元数据信息 主要工作是识别现实世界中的实体
28、定义 冗余数据的处理 检测和解决数值冲突 对于现实世界中的同一实体,来自于不同数据源的属性值可能不同 主要原因:不同的数据表示、度量单位、编码方式以及语义的不同,2019/2/15,50,模式集成,数据类型冲突 性别:string(Male、Female)、Char(M、F)、Interger(0、1) 日期:Date、DateTime、String 数据标签冲突:解决同名异义、异名同义 学生成绩、分数 度量单位冲突 学生成绩 百分制:100 0 五分制: A 、B、C、D、E 字符表示:优、良、及格、不及格 概念不清 最近交易额:前一个小时、昨天、本周、本月?聚集冲突:根源在于表结构的设计,
29、2019/2/15,51,冗余数据的处理,从多个数据源中抽取不同的数据,容易导致数据的冗余 不同的属性在不同的数据源中是不同的命名方式 有些属性可以从其它属性中导出,例如:销售额单价销售量 有些冗余可以通过相关分析检测到其中:n是元组的个数, 和 分别是A和B的平均值,和 分别是A和B的标准差 元组级的“重复”,也是数据冗余的一个重要方面 减少冗余数据,可以大大提高数据挖掘的性能,2019/2/15,52,数据转换,平滑处理: 从数据中消除噪音数据 聚集操作: 对数据进行综合,类似于Data Cube的构建 数据概化:构建概念层次 数据规范化: 将数据集中到一个较小的范围之中 最大-最小规范化
30、 z-score(零均值)规范化 小数范围规范化(01规范化) 属性构造 构造新的属性并添加到属性集中,以帮助数据挖掘,2019/2/15,53,数据转换:规范化,最大-最小规范化 对原始数据进行线性变换 保持了原始数据值之间的关系 当有新的输入,落在原数据区之外,该方法将面临“越界”错误 受到孤立点的影响可能会比较大,2019/2/15,54,数据转换:规范化(续),z-score(零均值)规范化 属性基于平均值和标准差规范化 当属性的最大值和最小值未知,或者孤立点左右了最大最小规范化时,该方法有效0-1规范化(小数定标规范化) 通过移动属性的小数点位置进行规范化例如A的值为125,那么|A
31、|=125,则j=3,有v=0.125。,Where j is the smallest integer such that Max(| |)1,2019/2/15,55,属性构造,由给定的属性构造并增添新的属性,以帮助提高精度和对高维数据结构的理解 属性结构还可以帮助平缓使用判定算法分类的分裂问题 例如: Area=Width Height 销售额单价销售量,2019/2/15,56,主要内容,为什么需要数据预处理? 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建 本章小结,2019/2/15,57,数据归约的提出,在数据仓库中可能保存TB级的数据,大数据量的数据挖掘,可能需
32、要大量的时间来完成整个数据的数据挖掘。 数据归约 在可能获得相同或相似结果的前提下,对数据的容量进行有效的缩减 数据归约的方法 数据立方体聚集:聚集操作作用于立方体中的数据 减少数据维度(维归约):可以检测并删除不相关、弱相关或者冗余的属性或维 数据压缩:使用编码机制压缩数据集 数值压缩:用替代的、较小的数据表示替换或估计数据,2019/2/15,58,Data Cube的聚集,“基点方体” “顶点方体” Data Cube中的多个层次的聚集 进一步缩减所要处理的数据量 当响应OLAP查询或者数据挖掘时,应当使用与给定任务相关的“最小方体”,2019/2/15,59,维归约(特征提取),维归约
33、:通过删除不相关的属性(或维)减少数据量 特征选取 (属性子集的选取): 选取最小的特征属性集合,得到的数据挖掘结果与所有特征参加的数据挖掘结果相近或完全一致 特征提取,对于d 个属性来说,具有2d 个可能的子集,2019/2/15,60,维归约的主要方法,利用启发式的方法来减少数据维度(随着维度的增长数据量将呈指数级别增长): 逐步向前选择:维数逐步增多的方法(每次增添“最好”的属性) 逐步向后选择:维数逐步减少的方法(每次删除“最差”的属性) 两者组合的方法 判定树归纳方法(ID3, C4.5),2019/2/15,61,基于判定树归纳的方法,Initial attribute set:
34、A1, A2, A3, A4, A5, A6 ,A4 ?,A1?,A6?,Class 1,Class 2,Class 1,Class 2,Reduced attribute set: A1, A4, A6,Y,Y,Y,N,N,N,2019/2/15,62,数据压缩,数据压缩:应用数据编码或变换,以便得到数据的归约或压缩表示 无损压缩:原数据可以由压缩数据重新构造而不丢失任何信息 字符串压缩是典型的无损压缩 现在已经有许多很好的方法但是它们只允许有限的数据操作 有损压缩:只能重新构造原数据的近似表示 影像文件的压缩是典型的有损压缩 典型的方法:小波变换、主要成分分析,2019/2/15,63,数
35、值归约,数值归约:通过选择替代的、“较小”的数据表示形式来减少数据量 有参的方法 假设数据符合某些模型,通过评估模型参数,仅需要存储参数,不需要存储实际数据(孤立点也可能被存放) 典型方法:对数线性模型,它估计离散的多维概率分布 无参的方法 不存在假想的模型 典型方法:直方图、聚类和抽样,2019/2/15,64,直方图,类似于分箱技术,是一种流行的数据归约方式 将属性值划分为不相交的子集,或“桶” 桶安放在水平轴上,而桶的高度(和面积)是该桶所代表的值的平均频率。 每个桶只表示单个属性值,则称其为“单桶”。通常,“桶”表示给定属性的一个连续空间 可以通过编程,动态修改部分参数,进行合理构造。
36、,count,5,10,15,20,25,30,1,2,3,4,5,6,7,8,9,10,1-10,11-20,21-30,5,10,15,20,25,13,25,15,Price,Price,count,2019/2/15,65,主要内容,为什么需要数据预处理? 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建 本章小结,2019/2/15,66,数据离散化和概念层次,属性值分类 枚举型 有序的 无序的 连续型:如 Real类型 数据离散化 对于一个特定的连续属性,可以把属性值划分成若干区间,以区间值来代替实际数据值,以减少属性值的个数。 概念层次 利用高层的概念(如儿童、青年
37、、中年、老年等)来代替低层的实际数据值(实际年龄),以减少属性值的个数。,2019/2/15,67,数值数据的离散化和概念分层建立的方法,分箱(Binning) 直方图分析 聚类分析的方法 根据自然分类进行分割,2019/2/15,68,分箱方法:一种简单的离散化技术,相同宽度 (距离)数据分割 将数据分成N等份,各个等份数据之间具有相同的距离 如果 A 和 B 分别为属性值中的最大值和最小值,那么各个数据等份之间的距离为:W = (B-A)/N. 异常点将会扮演很重要的角色 倾斜的数据不能很好的解决 相同深度 (频率)数据分割 将数据分成N等份,各个等份具有相同的数据个数。 具有较好的可伸缩
38、性 适合于数据分类的情况,2019/2/15,69,离散化:直方图方法,将数据分割到若干个桶之中,用桶中的平均值(或求和等)来表示各个桶。 可以通过编程,动态修改部分参数,进行合理构造。,count,5,10,15,20,25,30,1,2,3,4,5,6,7,8,9,10,1-10,11-20,21-30,5,10,15,20,25,13,25,15,Price,Price,count,2019/2/15,70,离散化:聚类分析方法,将数据按照“类内最大相似度,类间最小相似度的原则”对数据进行有效聚类 利用聚类的中心点来表示该类所包含的对象 数据聚类将非常有效,但是必须保证数据中没有噪音数据
39、,2019/2/15,71,按照自然分类进行数据分割,利用3-4-5 法则对数字型数据分类,将数据分成若干个“自然”的区间: 如果在所有数字的最高位覆盖 3, 6, 7或9个不同的值,则将数据分成3段。3(1,1,1) 6(2,2,2) 7(2,3,2) 9(3,3,3) 如果在所有数字的最高位覆盖 2, 4, 8个不同的值,则将数据分成4 段。 如果在所有数字的最高位覆盖 1, 5, 10个不同的值,则将数据分成 5 段。,2019/2/15,72,3-4-5 法则举例,例1:包含数据:101、110、203、222、305、315 方法:最高位包含3个值(1、2、3) 分成100,200)
40、,200,300),300,400)三段 例2:包含数据:101、110、103、422、405、415,400 方法:最高位包含2个值(1、4) 分成100,150),150,200) ,400,450) ,450,500)四段 例3:包含数据:101、210、203、322、305、415,500 方法:最高位包含5个值(1、2、3、4、5) 分成100,200),200,300) ,300,400) ,400,500),500,600)五段,2019/2/15,73,分类数据的概念分层,概念分层是由用户或专家对具有偏序关系的属性的一种层次关系的显式表示。也是一种数据分类的显式表示。 概念
41、层次的获得 隐式存储于数据库中。如:地址。 由专家显式给出。 借助数据分析自动生成。 概念层次的表示 基于实例。如:freshman, ., seniorundergraduate.; 基于数据库表模式。如:address(city, province, country)。 基于规则。如: good(x) undergraduate(x) gpa(x) 3.5。,2019/2/15,74,概念层次树举例,概念层次树将大大减少挖掘数据的数据量。,country,province_or_ state,city,street,15 distinct values,65 distinct values
42、,3567 distinct values,674,339 distinct values,2019/2/15,75,主要内容,为什么需要数据预处理? 数据清洗 数据集成与转换 数据归约 数据离散化与概念层次的构建 本章小结,2019/2/15,76,本章小结,数据的预处理无论对于数据仓库和数据挖掘都是非常重要的一个环节 数据预处理包括 数据清理 数据集成 数据归约和特征选取 数据的离散化 数据预处理涉及面广,现已建立了一系列的方法,但是目前仍然是一个非常活跃的研究领域,2019/2/15,77,六,可视化数据挖掘,可视化: 使用计算机图形学创建可视化图像,帮助用户理解复杂,大规模数据 可视化
43、数据挖掘: 使用可视化技术,从大规模数据集中发现隐含,有用知识的过程,2019/2/15,78,信息可视化,信息可视化:结合了科学可视化、人机交互、数据挖掘、图像技术、图形学、认知科学等诸多学科的理论和方法,而逐步发展起来的。信息可视化参考模型,2019/2/15,79,可视化数据挖掘,可视化的目的 提供对大规模数据集定性的理解 查看数据中的模式,趋势,结构,不规则性,关系等 帮助寻找感兴趣的区域,为进一步定量分析提供合适的参数 为计算机得出的结果提供可视化的证明,2019/2/15,80,可视化数据挖掘,可视化与数据挖掘的结合 数据可视化 数据挖掘结果可视化 数据挖掘过程可视化 交互式可视化
44、数据挖掘,2019/2/15,81,数据可视化,数据可视化 以下面两种方式观察数据库或数据仓库的数据: 在不同的粒度或抽象层面观察 属性或维度的不同结合 数据可以被表示成不同的格式,柱状图、饼状图、散点图、三维立方体、曲线、数据分布图表等,2019/2/15,82,MineSet 数据可视化,数据的直方图,均值,中值,标准差,四分位数,2019/2/15,83,数据挖掘结果可视化,以视图的形式给出由数据挖掘算法得出的结果或知识 例如 决策树 贝叶斯网络 关联规则 聚类 孤立点,2019/2/15,84,SAS Enterprise Miner: scatter plots,2019/2/15,
45、85,Visualization of association rules in MineSet 3.0,2019/2/15,86,Visualization of a decision tree in MineSet 3.0,2019/2/15,87,Visualization of cluster groupings in SAS,2019/2/15,88,数据挖掘过程可视化,将数据挖掘各种处理过程用可视化的方式呈现给用户,可以看到: 数据是如何被提取的 是从哪个数据库或数据仓库提取的数据 被选择数据如何被清理,整合,处理和挖掘的 在数据挖掘中采用什么方法 数据被存储在哪里,2019/2/15,89,Visualization of Data Mining Processes by Clementine,可视化流程使得数据观察和交互的变得简单方便,2019/2/15,90,交互式可视化数据挖掘,使用可视化工具在数据挖掘过程中帮助用户作出更加合理的挖掘决定 更好的理解数据和样本 用户可以根据理解作出决定 用户可以根据领域知识作出决定 可视化结果使用户能够指导下次算法执行,2019/2/15,91,谢谢!,