数据预处理数据挖掘的过程数据搜集数据预处理DataMining模式解释和评估问题定义数据挖掘步骤问题定义(和领域知识专家一道)挖掘何种知识?明确要求确定可用算法数据搜集确定需要用到的数据库和数据集数据预处理去噪、缺失值处理、数据类型转换、数据简化等数据挖掘算法(分类、聚类和序列模式发现等)数据特点结果表示:描述性或预测性知识结果解释和评估去除冗余可视化关于数据数据数据(data)对象与其属性的集合。属性(attribute)是对象具有的性质或特征如:人眼睛的颜色,体温等。通过一组属性描述一个对象对象往往也称作记录、实体或实例。TidRefundMaritalStatusTaxableIncomeCheat1YesSingle125KNo2NoMarried100KNo3NoSingle70KNo4YesMarried120KNo5NoDivorced95KYes6NoMarried60KNo7YesDivorced220KNo8NoSingle85KYes9NoMarried75KNo10NoSingle90KYes10属性对象属性的值赋予属性的数或符号。属性与属性的值同样的属性可映射为不同的属性的值如:高度可以用米来度量,也可以用英尺来度量。不同的属性可以映射为相同的属性的值如:ID和年龄这两个属性的值均可为整数。但属性值的性质会有不同ID没有限制,但年龄有属性的类型属性有若干种类型名词性的如:眼睛的颜色,籍贯顺序的如:成绩{优,良,中,差},身高{高,中,矮}区间值的如:日程表数值型的如:长度、时间、数量离散属性与连续属性离散属性只有有限可数的属性值如:邮政编码,一篇文章中词的数目经常用整形变量来表示布尔属性是特殊的离散属性连续属性属性的值为实数如:温度、高度、重量常用浮点型变量来表示数据集的类型记录数据矩阵文档数据事务数据图WorldWideWeb分子结构顺序的空间数据时间数据序列数据基因序列数据记录数据记录的集合,每条记录又包含了固定的属性。TidRefundMaritalStatusTaxableIncomeCheat1YesSingle125KNo2NoMarried100KNo3NoSingle70KNo4YesMarried120KNo5NoDivorced95KYes6NoMarried60KNo7YesDivorced220KNo8NoSingle85KYes9NoMarried75KNo10NoSingle90KYes10数据矩阵若数据对象有固定数目的数值型的属性,则这些数据对象可以看做是多维空间中的点,这其中的每个维代表不同的属性。这类数据可以看做是一个由m个对象,n个属性组成的mn的矩阵。1.12.216.226.2512.651.22.715.225.2710.23ThicknessLoadDistanceProjectionofyloadProjectionofxLoad1.12.216.226.2512.651.22.715.225.2710.23ThicknessLoadDistanceProjectionofyloadProjectionofxLoad文档数据每篇文档均作为一个词语向量•每个词语都是这个向量的一个分量•分量的值可以是该词语在文档中出现的次数Document1seasontimeoutlostwingamescoreballplaycoachteamDocument2Document3305026020200702100300100122030事务数据记录数据的一种特殊类型,其中:•每条记录(事务)包含若干项目;•如:在购物数据中,每个商品都是一个项目。TIDItems1Bread,Coke,Milk2Beer,Bread3Beer,Coke,Diaper,Milk4Beer,Bread,Diaper,Milk5Coke,Diaper,Milk图数据52125顺序数据事务序列AnelementofthesequenceItems/Events顺序数据基因序列数据GGTTCCGCCTTCAGCCCCGCGCCCGCAGGGCCCGCCCCGCGCCGTCGAGAAGGGCCCGCCTGGCGGGCGGGGGGAGGCGGGGCCGCCCGAGCCCAACCGAGTCCGACCAGGTGCCCCCTCTGCTCGGCCTAGACCTGAGCTCATTAGGCGGCAGCGGACAGGCCAAGTAGAACACGCGAAGCGCTGGGCTGCCTGCTGCGACCAGGG顺序数据时空数据大陆与海洋的月平均气温数据挖掘研究的标准数据库UCIKnowledgeDiscoveryinDatabasesArchiveFrequentItemsetMiningImplementationsRepository为什么对数据进行预处理为什么进行数据预处理?现实世界的数据是“肮脏的”——数据多了,什么问题都会出现不完整缺少数据值;缺乏某些重要属性;仅包含汇总数据;e.g.,occupation=有噪声包含错误或者孤立点e.g.Salary=-10数据不一致e.g.,在编码或者命名上存在差异e.g.,过去的等级:“1,2,3”,现在的等级:“A,B,C”e.g.,重复记录间的不一致性e.g.,Age=“42”Birthday=“03/07/1997”数据的不完全性主要是在数据搜集的过程中造成的有些令人感兴趣的属性无法得到,如女士的年龄。有些属性在数据录入的时候可能被认为是不重要的,如身高。数据输入设备有时会出现故障。不一致的数据已被删除。数据中的噪声主要是在数据搜集的过程中造成的数据输入设备有时不够精确,如用秒表来测量风速。数据输入设备有时会出现故障。数据传输中的错误,如网络故障。数据的不一致性主要是在数据集成的过程中造成的同一个属性在不同的数据库中可能会有多个名字,如customer,cust,cust_id。同一个属性在不同的数据库中可能又有多种度量方式,如1.75m和175cm。数据传输中的错误,如网络故障。数据集成还会造成冗余有些数据可以由其它数据推出。数据预处理的动机noqualitydata,noqualityminingresults直接挖掘原始数据尽管绝大多数挖掘算法都有处理不完全数据和噪声数据的功能,但不够健壮。绝大多数数据挖掘算法都无法处理不一致的数据。即便没有以上三种数据,直接在原始数据集上挖掘常常也是效果不佳。数据预处理常常会占用整个挖掘60%的工作量数据预处理的主要任务(1)数据清洗(Datacleaning)过滤缺失数据,平滑噪声数据,确定或去掉孤立点,解决不一致问题。数据预处理的主要任务(2)数据集成(Dataintegration)集成多个数据库,数据立方体,文件等。数据变换(Datatransformation)规范化与聚集(-2,32,100,59,48)(-0.02,0.32,1.00,0.59,0.48)数据预处理的主要任务(3)数据约简(Datareduction)目标是得到规模小,且与原数据具有相同或相似功能的数据数据清洗数据清洗的目标过滤缺失数据平滑噪声数据修正不一致数据过滤缺失数据(1)忽略元组进行分类训练时,类别属性值缺失手工填充缺失数据枯燥乏味有时甚至是不可行的使用全局常量如“unknown”有些挖掘方法会把这些全局常量当作是令人感兴趣的属性过滤缺失数据(2)使用属性的均值使用最有可能出现的值平滑噪声数据(1)分箱(binning),对已排序的数据,通过其邻居进行平滑。平滑噪声数据(2)聚类(clustering),把相近的值组织为群或簇(cluster),那些不在任何簇之内的点将被视为孤立点(outlier)。平滑噪声数据(3)回归(regression),将数据拟合成一个数学函数,与期望值有一定距离的点就被视为是孤立点。平滑噪声数据(4)计算机与人工检查相结合先使用程序来发现某些可能为噪声的数据,然后再用人工来确定这些是否为噪声。修正不一致数据有些知识工程工具可以自动发现一些不一致的数据。有些不一致的数据需要手工修正。修改不一致的数据主要靠用户的参与。数据集成数据集成(1)将来自多个数据源的数据集成为一个一致的数据集市。模式集成如何将来自不同数据源的实体结合在一起。可以使用元数据来避免模式集成中的错误。检测并解决数据值的冲突语义的异构:对真实世界的同一个实体,不同数据源的属性往往也不同。原因可能是表示、尺度及编码的不同,如长度的表示,可以用“米”,也可以用“千米”。数据集成(2)处理冗余多数据库经常会产生冗余-同一个属性在不同的数据库中常常会有不同的名字。-有些属性可以由其它属性导出。-有些元组存在重复现象。规范化规范化(1)最小最大规范化:目标[new_minA,new_maxA]如,假设把收入范围$12,000~$98,000规范化到[0.0,1.0],则$73,600将映射到保留了原有数据的关系,可以消除不同属性之间的权重差异。716.00)00.1(000,12000,98000,12600,73AAAAAAminnewminnewmaxnewminmaxminvv_)__('缺点:需要预先知道该属性的最大值与最小值规范化(2)Z-值规范化(μ:均值,σ:标准差):Ex.Letμ=54,000,σ=16,000.ThenAAvv'225.1000,16000,54600,73优点:不需要知道数据集的最大和最小,对离群点规范化效果好;缺点:计算复杂度高。规范化(3)十进制规范化(小数定标规范化)其中j是使Max(|ν’|)1的最小整数如896可以规范化为0.896jvv10'优点:直观简单。缺点:并没有消除属性间的权重差异。数据规约数据归约(1)为什么需要进行数据规约?数据仓库中往往存有海量数据在整个数据集上进行复杂的数据分析与挖掘需要很长的时间数据归约数据归约可以用来得到数据集的归约表示,它小得多,但可以产生相同的(或几乎相同的)分析结果数据归约(2)常用的数据归约策略数据立方体聚集维归约,e.g.移除不重要的属性数据压缩数值归约,e.g.使用模型来表示数据离散化等用于数据归约的时间不应当超过或“抵消”在归约后的数据上挖掘节省的时间数据压缩(Datacompression)使用编码或者变换得到原数据的一个压缩表示。无损压缩(losslesscompression).原始数据可以由变换数据重构,且没有任何信息损失。有损压缩(lossycompression).原始数据可以由变换数据重构,有可容差的信息损失,如主成分分析(PrincipalComponentAnalysis,PCA),小波变换(Wavelettransformation)。数据压缩主要是以有损压缩为主。有损压缩VS.无损压缩原始数据压缩后的数据无损压缩近似的原始数据数据压缩有损压缩VS.无损压缩字符串压缩有广泛的理论基础和精妙的算法通常是无损压缩在解压缩前对字符串的操作非常有限音频/视频压缩通常是有损压缩,压缩精度可以递进选择有时可以在不解压整体数据的情况下,重构某个片断数据立方体的聚集(1)在构建数据立方体(datacube)的时候使用聚集操作。数据立方体是数据单元(cuboid)的格(lattice)。最底层存储单个实体的信息。数据立方体中的聚集有多个层次,层次越往上,数据的规模越小。使用可以解决问题的、最小的表示。数据立方体的聚集(2)维度约简(Dimensionalityreduct