1、第第1章章 数据仓库与数据挖掘概述数据仓库与数据挖掘概述第五章 数据预处理5.1数据预处理重要性5.2 数据清洗5.3数据集成与转换5.4 数据规约5.5 离散化和概念树生成5.1数据预处理重要性数据预处理重要性数据预处理是数据挖掘(知识发现)过程中的一个重要步骤,尤其是在对包含有噪声、不完整,甚至是不一致数据进行数据挖掘时,更需要进行数据的预处理,以提高数据挖掘对象的质量,并最终达到提高数据挖掘所获模式知识质量的目的5.1数据预处理重要性数据预处理重要性噪声数据:数据中存在着错误、或异常(偏离期望值)的数据;不完整数据:感兴趣的属性没有值;不一致数据:数据内涵出现不一致情况(如:作为关键字的
2、同一部门编码出现不同值)。数据清洗:消除数据中所存在的噪声、填补不完整数据以及纠正不一致数据;数据集成:将来自多个数据源的数据合并到一起构成一个完整的数据集,需要处理不一致数据;数据转换:将一种格式的数据转换为另一种格式的数据;数据规约:通过删除冗余特征或聚类消除多余数据。5.1数据预处理重要性数据预处理重要性噪声数据产生的原因:5.1数据预处理重要性数据预处理重要性不完整数据产生的原因:5.1数据预处理重要性数据预处理重要性数据清洗包括:5.1数据预处理重要性数据预处理重要性数据集成将来自多个数据源(如:数据库、文件等)数据合并到一起。由于描述同一个概念的属性在不同数据库取不同的名字,在进行
3、数据集成时就常常会引起数据的不一致或冗余。custom-idcust-idBillB5.1数据预处理重要性数据预处理重要性数据转换数据转换主要是对数据进行标准化操作。在正式进行数据挖掘之前,尤其是使用基于对象距离的挖掘算法时,如:神经网络、最近邻分类等,必须进行数据标准化。也就是将其缩至特定的范围之内,如:0,1。年龄工资5.1数据预处理重要性数据预处理重要性数据规约数据规约的目的就是缩小所挖掘数据的规模,但却不会影响(或基本不影响)最终的挖掘结果。现有的数据规约包括:1、数据聚合,如:构造数据立方(cube);2、消减维数,数据挖掘如:通过相关分析消除多余属性;3、数据压缩,如:利用编码方法
4、(如最小编码长度或小波);4、数据块消减,如:利用聚类或参数模型替代原有数据。5.1数据预处理重要性数据预处理重要性5.1数据预处理重要性数据预处理重要性各种数据预处理方法,并不是相互独立的,而是相互关联的。现实世界数据常常是含有噪声、不完全的和不一致的,数据预处理能够帮助改善数据的质量,进而帮助提高数据挖掘进程的有效性和准确性。高质量的决策来自高质量的数据。因此数据预处理是整个数据挖掘与知识发现过程中一个重要步骤。5.2数据清洗数据清洗缺失数据处理1、忽略该条记录若一条记录中有属性值被遗漏了,则将此条记录排除在数据挖掘过程之外。2、手工填补遗漏值。一般来说这种方法比较耗时,而且对于存在许多遗
5、漏情况的大规模数据集而言,显然可行较差。3、利用缺省值填补遗漏值对一个属性的所有遗漏的值均利用一个事先确定好的值来填补。如:都用0来填补。但当一个属性空缺率太高,采用这种方法,就可能误导挖掘进程。5.2数据清洗数据清洗缺失数据处理4、利用均值填补遗漏值计算一个属性(值)的平均值,并用此值填补该属性所有遗漏的值。如:若一个顾客的平均收入为 12000 元,则用此值填补 income 属性中所有被遗漏的值。5、利用同类别均值填补遗漏值这种方法尤其在进行分类挖掘时使用。如:若要对商场顾客按信用风险(credit-risk)进行分类挖掘时,就可以用在同一信用风险类别下(如良好)的 income 属性的
6、平均值,来填补所有在同一信用风险类别下属性income的遗漏值。5.2数据清洗数据清洗缺失数据处理6、利用最可能的值填补遗漏值可以利用回归分析、贝叶斯计算公式或决策树推断出该条记录特定属性的最大可能的取值。例如:利用数据集中其它顾客的属性值,可以构造一个决策树来预测属性income的遗漏值。5.2数据清洗数据清洗id姓名姓名年龄年龄投递投递地址地址电话电话报刊金报刊金额额订阅订阅网点网点兴趣兴趣职业职业报刊报刊类型类型00104张三21。350。体育00220李四35。330。政治00130王五。18000。体育00240赵六33。340。体育00345孙七27。310。政治00027周八。娱
7、乐00028吴九29。体育2921+33+29/3=285.2数据清洗数据清洗id姓名姓名年龄层次年龄层次籍贯籍贯性别性别兴趣兴趣客户级别客户级别00104张三青年北京男运动高00220李四中年天津女购物00130王五老年山东男低00240赵六青年上海女运动中00801孙七中年天津女集邮。年龄层次为老年,且籍贯为山东的男性,兴年龄层次为老年,且籍贯为山东的男性,兴趣爱好为集邮趣爱好为集邮集邮集邮5.2数据清洗数据清洗噪声数据处理5.2数据清洗数据清洗噪声数据处理分箱平滑数据:4,8,9,15,21,21,24,25,26,28,29,34划分为(等深的)箱:箱一:4,8,9,15箱二:21,2
8、1,24,25箱三:26,28,29,34用箱平均值平滑:箱一:9,9,9,9箱二:23,23,23,23箱三:29,29,29,295.2数据清洗数据清洗噪声数据处理分箱平滑数据:4,8,9,15,21,21,24,25,26,28,29,34划分为(等深的)箱:箱一:4,8,9,15箱二:21,21,24,25箱三:26,28,29,34用箱边界值平滑:箱一:4,4,4,15箱二:21,21,25,25箱三:26,26,26,345.2数据清洗数据清洗噪声数据处理聚类5.2数据清洗数据清洗噪声数据处理回归5.2数据清洗数据清洗不一致数据处理现实世界的数据库常出现数据记录内容的不一致,其中一
9、些数据不一致可以利用它们与外部的关联手工加以解决。例如:输入发生的数据录入错误一般可以与原稿进行对比来加以纠正。此外还有一些例程可以帮助纠正使用编码时所发生的不一致问题。5.3数据集成与转换数据集成与转换数据集成5.3数据集成与转换数据集成与转换数据转换1、平滑、平滑帮助除去数据中的噪声,主要技术方法有:分箱、聚类和回归。帮助除去数据中的噪声,主要技术方法有:分箱、聚类和回归。2、聚集、聚集对数据进行总结或合计操作。对数据进行总结或合计操作。3、泛化(、泛化(generalization)用更抽象(更高层次)的概念来取代低层次或数据层的数据对象。用更抽象(更高层次)的概念来取代低层次或数据层的
10、数据对象。街道属性泛化到更高层次的概念,诸如:城市、国家。同样对于数值型的街道属性泛化到更高层次的概念,诸如:城市、国家。同样对于数值型的属性;属性;年龄属性,就可以映射到更高层次概念,如:年轻、中年和老年。年龄属性,就可以映射到更高层次概念,如:年轻、中年和老年。4、标准化、标准化标准化就是将有关属性数据按比例投射到特定小范围之中。如将工资收入标准化就是将有关属性数据按比例投射到特定小范围之中。如将工资收入属性值映射到属性值映射到0到到1范围内。范围内。5、属性构造、属性构造根据已有属性集构造新的属性,以帮助数据挖掘过程。根据已有属性集构造新的属性,以帮助数据挖掘过程。标准化属性构造哪个维度
11、对建筑造价影哪个维度对建筑造价影响最大(长、宽、材料响最大(长、宽、材料选择、建筑风格)?长选择、建筑风格)?长和宽构造面积和宽构造面积哪种元素对胆固醇高有哪种元素对胆固醇高有直接作用(直接作用(Na、K、Ca、Mg)?可构造)?可构造Na/K数据缺失数据缺失噪声数据噪声数据不一致不一致数据数据数据清洗:数据清洗:(1)处理缺失数据数据;)处理缺失数据数据;(2)分箱、聚类、回归)分箱、聚类、回归处理噪声数据处理噪声数据数据集成:数据集成:实体识别、实体识别、冗余、单位冗余、单位差别差别不易存不易存储计算储计算挖掘的挖掘的数据数据数据转换:平滑、聚集、数据转换:平滑、聚集、泛化、标准化、属性构
12、造泛化、标准化、属性构造5.4数据规约数据规约数据规约技术正是用于帮助从原有庞大数据集中获得一个精简的数据集合,并使这一精简数据集保持原有数据集的完整性,这样在精简数据集上进行数据挖掘显然效率更高,并且挖掘出来的结果与使用原有数据集所获得结果基本相同。5.4数据规约数据规约5.4数据规约数据规约数据立方合计5.4数据规约数据规约数据立方合计5.4数据规约数据规约维规约什么样的顾客是否会在商场购买MP3播放机客户ID和电话号码为无用维度维规约就是通过消除多余和无关的属性而有效消减数据集的规模。5.4数据规约数据规约维规约属性子集选择方法的目标就是寻找出最小的属性子集。确保新数据子集的概率分布尽可
13、能接近原来数据集的概率分布。利用筛选后的属性集挖掘所获的结果,由于使用了较少的属性,从而使得用户更加容易理解挖掘结果。5.4数据规约数据规约维规约一般利用统计重要性的方法来选择“最优“或“最差”属性。这里假设各属性之间都是相互独立的。构造属性子集的基本启发式方法有以下几种5.4数据规约数据规约数据压缩数据压缩就是利用数据编码或数据转换将原来的数据集合压缩为一个较小规模的数据集合。若仅根据压缩后的数据集就可以恢复原来的数据集,那么就认为这一压缩是无损的,否则就称为有损的。在数据挖掘领域通常使用的两种数据压缩方法均是有损的,它们是小波转换和主成分分析。5.4数据规约数据规约数据块消减数据块消减方法
14、主要包含参数与非参数两种基本方法。所谓参数方法就是利用一个模型来帮助通过计算获得原来的数据,因此只需要存储模型的参数即可。例如:线性回归模型就可以根据一组变量预测计算另一个变量。而非参数方法则是存储利用直方图、聚类或取样而获得的消减后数据集。5.4数据规约数据规约数据块消减+线性回归方法是利用一条直线模型对数据进行拟合。例如:利用自变量X的一个线性函数可以拟合因变量Y的输出,其线性函数模型为:其中系数 和 称为回归系数,也是直线的截距和斜率。这两个系数可以通过最小二乘法计算获得。多变量回归则是利用多个自变量的一个线性函数拟合因变量Y的输出5.4数据规约数据规约数据块消减5.4数据规约数据规约数
15、据块消减5.4数据规约数据规约数据块消减在数据规约中,数据的聚类表示用于替换原来的数据。聚类技术将数据行视为对象。对于聚类分析所获得的组或类则有性质:同一组或类中的对象彼此相似而不同组或类中的对象彼此不相似。所谓相似通常利用多维空间中的距离来表示。5.4数据规约数据规约数据块消减5.4数据规约数据规约数据块消减5.4数据规约数据规约数据块消减聚类采样方法。首先将大数据集D划分为M个不相交的“类”;然后再从这M个类中的数据对象分别进行随机抽取,这样就可以最终获得聚类采样数据子集。5.4数据规约数据规约数据块消减5.4数据规约数据规约数据块消减分层采样方法。首先将大数据集D划分为若干不相交的“层”
16、。然后再分别从这些“层“中随机抽取数据对象,从而获得具有代表性的采样数据子集。例如:可以对一个顾客数据集按照年龄进行分层,然后再在每个年龄组中进行随机选择,从而确保了最终获得分层采样数据子集中的年龄分布具有代表性。5.4数据规约数据规约数据块消减5.5离散化和概念层次树生成离散化和概念层次树生成离散化技术方法可以通过将属性(连续取值)域值范围分为若干区间,来帮助消减一个连续(取值)属性的取值个数。可以用一个标签来表示一个区间内的实际数据值。在基于决策树的分类挖掘中,消减一个属性取值个数的离散化处理是一个极为有效的数据预处理步骤。5.5离散化和概念层次树生成离散化和概念层次树生成概念层次树可以通
17、过利用较高层次概念替换低层次概念(如年龄的数值)而减少原来数据集。虽然一些细节在数据泛化过程中消失了,但这样所获得的泛化数据或许会更易于理解、更有意义,挖掘效率更高。5.5离散化和概念层次树生成离散化和概念层次树生成5.5离散化和概念层次树生成离散化和概念层次树生成概念层次树生成5.5离散化和概念层次树生成离散化和概念层次树生成概念层次树生成3-4-5规则若一个区间包含 3、6、7、9 个不同值,则将该区间(包含 3、6、9 不同值)分解为三个等宽小区间;而将包含7个不同值分解为分别包含 2个、3个和2个不同值的小区间(也共是三个)。若一个区间包含 2、4、8个不同值,则将该区间分解为四个等宽
18、小区间。若一个区间包含 1、5、10 个不同值,则将该区间分解为五个等宽小区间。5.5离散化和概念层次树生成离散化和概念层次树生成概念层次树生成3-4-5规则对指定数值属性的取值范围不断循环应用3-4-5 规则,就可以构造出相应数值属性的概念层次树5%到95%将比这一区域边界大或者小的数值将分别归入(新增的)左右两个边界区间中假设某个时期内一个商场不同分支的利润数从假设某个时期内一个商场不同分支的利润数从-351,976元到元到4,700,896元元5.5离散化和概念层次树生成离散化和概念层次树生成类别概念层次类别数据(定类尺度)(categorical data)是一种离散数据。类别属性可取有限个不同的值且这些值之间无大小和顺序。这样的属性有:国家、工作、商品类别等5.5离散化和概念层次树生成离散化和概念层次树生成类别概念层次国家省城市街道1565356767435