第三讲数据预处理_第1页
第三讲数据预处理_第2页
第三讲数据预处理_第3页
第三讲数据预处理_第4页
第三讲数据预处理_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三讲数据预处理第一页,共六十九页,2022年,8月28日2数据预处理(DataPreprocessing)为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第二页,共六十九页,2022年,8月28日3为什么进行数据预处理?现实世界中的数据是“脏”的不完整:缺少属性值,缺少某些属性,或者仅包含聚集类数据噪音:包含错误、异常数据或存在偏离期望的孤立点值。不一致:包含编码或名称的差异。例如,用于商品分类的部门编码存在差异。没有质量保证的数据,就没有高质量的挖掘结果!高质量的决策必须以高质量的数据为基础数据仓库需要一致集成的高质量数据第三页,共六十九页,2022年,8月28日4数据质量的多维测度一个被普遍接受的多维观点准确性(Accuracy)完整性(Completeness)一致性(Consistency)适时性(Timeliness)可信性(Believability)可增值性(Valueadded)可解释性(Interpretability)可获取性(Accessibility)第四页,共六十九页,2022年,8月28日5数据预处理的主要任务数据清理(Datacleaning)Fillinmissingvalues,smoothnoisydata,identifyorremoveoutliers,andresolveinconsistencies数据集成(Dataintegration)Integrationofmultipledatabases,datacubes,orfiles数据转换(Datatransformation)Normalizationandaggregation数据归约/约简(Datareduction)Obtainsreducedrepresentationinvolumebutproducesthesameorsimilaranalyticalresults第五页,共六十九页,2022年,8月28日6数据预处理的形式第六页,共六十九页,2022年,8月28日7为什么要预处理数据?现实世界的数据一般是脏的、不完整的和不一致的。数据预处理技术可以改进数据的质量,从而有助于提高其后的挖掘过程的精度和性能。由于高质量的决策必然依赖于高质量的数据,因此数据预处理是知识发现过程中的重要步骤。第七页,共六十九页,2022年,8月28日8数据预处理为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第八页,共六十九页,2022年,8月28日9数据清理数据清理任务补充缺失值识别异常并平滑噪音数据修正不一致的数据第九页,共六十九页,2022年,8月28日10MissingData(缺失数据)数据并非总是可得到的例如:许多元组在某些属性上没有记录值,比如销售数据中的客户收入导致缺失数据的原因设备出错和其他记录数据不一致,进而被删除了由于误解导致数据没有录入在录入的时候某些数据可能被认为是不重要的缺失数据可能需要被推知第十页,共六十九页,2022年,8月28日11如何处理缺失数据忽略该元组:通常类标志缺失时(假设在分类任务中)手工填入缺失值:繁琐+不可能?用一个全局常量来填充缺失值:例如,用“unknown”来替换空缺值。可能挖掘出一个有趣的概念,因为这些数据都具有相同的值“unknown”。该方法虽然简单,却并不十分可靠。利用该属性的均值来填充缺失值:例如用顾客的平均收入替换收入(income)的空值。利用与给定元组属于同一类的所有样本的均值:例如,如果将顾客按信用等级(credit_risk)分类,则用具有相同信用度的顾客的平均收入替换收入的空缺值。smarter利用最可能的值来填充缺失值:决策树。例如利用数据集中其他顾客的属性,可以构造一棵决策树,来预测income的空缺值。第十一页,共六十九页,2022年,8月28日12如何处理缺失数据方法3-6使数据倾斜,填入的值可能不正确。然而,方法6是最常用的方法。与其他方法相比,它使用现存数据的多数信息来预测空缺值。通过考虑其他属性的值,有更大机会保持空值属性和其他属性之间的联系。第十二页,共六十九页,2022年,8月28日13噪音数据(NoisyData)Noise:(具有不正确的属性值)在可测度变量中的随机错误或偏差导致不正确属性值的原因错误的数据收集手段数据输入问题数据传送问题技术限制第十三页,共六十九页,2022年,8月28日14如何处理噪音数据?给定一个数值属性,例如price,怎样才能平滑数据,去掉噪音?常用的数据平滑技术:分箱(Binningmethod):分箱方法通过考察“邻居”(即周围的值)来平滑存储数据的值。首先将数据排序并将其分割到一些相等深度的“桶”(bucketorbin)中然后可根据桶均值,桶中间值,桶边界值等进行平滑第十四页,共六十九页,2022年,8月28日15Sorteddata:4,8,15,21,21,24,25,28,34Partitioninto(equidepth)bins:Bin1:4,8,15Bin2:21,21,24Bin3:25,28,34Smoothingbybinmeans:Bin1:9,9,9Bin2:22,22,22Bin3:29,29,29Smoothingbyboundaries:Bin1:4,4,15Bin2:21,21,24Bin3:25,25,34BinningMethod第十五页,共六十九页,2022年,8月28日16数据平滑的Binning方法*Sorteddataforprice(indollars):4,8,9,15,21,21,24,25,26,28,29,34*Partitioninto(equi-depth)bins:-Bin1:4,8,9,15-Bin2:21,21,24,25-Bin3:26,28,29,34*Smoothingbybinmeans:-Bin1:9,9,9,9-Bin2:23,23,23,23-Bin3:29,29,29,29*Smoothingbybinboundaries:-Bin1:4,4,15,15-Bin2:21,21,25,25-Bin3:26,26,34,34第十六页,共六十九页,2022年,8月28日17简单的离散化方法:Binning等宽(距)划分:将范围分为等大小的N个区间如果A和

B是该属性的最低或最高值,则区间的宽度为:

W=(B-A)/N.最直接易懂但是异常值可能会主导其展现不能很好的处理偏离数据(Skeweddata)等深(频)划分:将范围划分为N个区间,每个区间包含近似相等数量的样本较好的数据比例第十七页,共六十九页,2022年,8月28日18如何处理噪音数据?聚类(Clustering)孤立点可以被聚类检测。聚类将类似的值组织成群或“聚类”。直观地看,落在聚类集合之外的值被视为孤立点。回归通过让数据适合一个函数(如线性回归函数)来平滑数据。线性回归涉及找出适合两个变量的“最佳”直线,使得一个变量能够预测另一个。第十八页,共六十九页,2022年,8月28日19聚类分析第十九页,共六十九页,2022年,8月28日20回归xyy=x+1X1Y1Y1’第二十页,共六十九页,2022年,8月28日21数据预处理为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第二十一页,共六十九页,2022年,8月28日22数据集成数据集成(Dataintegration):将多个数据源中的数据组合到一个一致的数据存储中。需要考虑的问题:实体识别问题从多种数据源中识别真实世界中的实体e.g.,A.cust-idB.cust-#通过元数据解决侦测并解决数据值的冲突对于真实世界中的同一实体,来自不同数据源的属性值可能是不同的可能的原因:不同的表示,不同比率,e.g.,公制vs.英制单位属于语义的异种性第二十二页,共六十九页,2022年,8月28日23数据集成中的冗余数据处理在集成多种数据库时经常会出现冗余数据同一属性值在不同的数据库中可能有不同的名字一个属性可能是另外一个表中的一个“衍生”属性,e.g.,年薪冗余数据可能通过相关性分析而被发现仔细集成来自不同源的数据有助于减少或避免冗余和不一致性从而改善挖掘速度和质量其中,是A的标准差第二十三页,共六十九页,2022年,8月28日24数据转换数据转换:将数据转换成适合于挖掘的形式。涉及以下内容:平滑:从数据中去掉噪音。这种技术包括分箱、聚类和回归。聚集:对数据进行汇总和聚集。数据泛化:使用概念分层,用高层次概念替换低层次“原始”数据。规范化:将属性数据按比例映射到一个小的特定范围,如[-1,1]min-maxnormalizationz-scorenormalizationnormalizationbydecimalscaling属性构造(或特征构造):从给定属性中创建新属性第二十四页,共六十九页,2022年,8月28日25数据转换:规范化min-maxnormalization:对原始数据进行线性变换。能够保持原始数据值之间的关系。如果今后的输入落在A的原数据区之外,该方法将面临“越界”的错误。例如,假定属性income的最小与最大值分别为$12000和$98000,映射income到区间[0.0,1.0]。根据公式,income值$73600将变换为第二十五页,共六十九页,2022年,8月28日26数据转换:规范化z-scorenormalization:属性A的值基于A的平均值和标准差。当属性A的最大和最小值未知,或孤立点左右了min-maxnormalization时,该方法是有用的。normalizationbydecimalscaling:通过移动属性A的小数点位置进行规范化。小数点的移动位数依赖于A的最大绝对值。WherejisthesmallestintegersuchthatMax(||)<1第二十六页,共六十九页,2022年,8月28日27数据预处理为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第二十七页,共六十九页,2022年,8月28日28数据归约数据仓库可能存储T数量级的数据,如果运行于完整的数据集,复杂数据分析或挖掘要花费非常长的时间。数据归约(Datareduction):获得数据集的一个简约表示,使得在容量上大大减小,但仍接近于保持原数据的完整性,并产生相同或基本相同的分析结果。数据归约策略数据立方体聚集(Datacubeaggregation)维数约简(Dimensionalityreduction)数值压缩(Numerosityreduction)离散化和概念分层生成(Discretizationandconcepthierarchygeneration)用于数据归约的时间不应当超过或“抵消”在归约后数据挖掘上挖掘节省的时间。第二十八页,共六十九页,2022年,8月28日29维数约简维数约简:通过删除不相关的属性(或维)减少数据量。通常使用属性子集选择法。属性子集选择选择最小的一组属性,使得数据类的概率分布与使用所有属性获得的最初概率分布尽可能的一致减少被发现模式属性的数量,使得模式更容易理解d个属性有2d

个可能的子属性集合启发式算法(HeuristicMethods):贪心算法,作局部最优选择,期望由此导致全局最优解。包括以下技术:逐步向前选择逐步向后消除结合上述二者决策树归纳:基于信息增益度量,ID3和C4.5算法第二十九页,共六十九页,2022年,8月28日30启发式属性选择方法几个启发式属性选择方法:

在属性独立的假设下,通过重要程度测试找出最好的或最坏的单个属性最优逐步属性选择:首先选出一个最好的属性然后再在这个最好属性的条件下,选择下一个,...逐步属性消除:重复地去除最差的属性最优组合属性选择与消除第三十页,共六十九页,2022年,8月28日31决策树归纳的一个例子初始的属性集合:{A1,A2,A3,A4,A5,A6}A4?A1?A6?Class1Class2Class1Class2>Reducedattributeset:{A1,A4,A6}YNYNYN第三十一页,共六十九页,2022年,8月28日32数值压缩数值压缩:通过选择替代的、较小的数据表示形式来减少数据量。参数方法用一个模型来估计数据,因此一般来说只有模型参数需要存储,而无须存储实际数据。例如:线性回归模型。非参数方法

无须假设模型存储简约后的表示,包括:histograms,clustering,sampling第三十二页,共六十九页,2022年,8月28日33回归模型线性回归:将数据建模,用来拟合一条直线,用来近似给定数据。Y=+X经常使用最小二乘方法来拟合直线多元回归:Y=b0+b1X1+b2X2.第三十三页,共六十九页,2022年,8月28日34Histograms第三十四页,共六十九页,2022年,8月28日35ClusterRawDataCluster/StratifiedSample第三十五页,共六十九页,2022年,8月28日36SamplingSRSWOR(simplerandomsamplewithoutreplacement)SRSWRRawData第三十六页,共六十九页,2022年,8月28日37数据预处理为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第三十七页,共六十九页,2022年,8月28日38离散化和概念分层离散化:将连续属性的范围分成区间,用来减少给定连续属性值的个数。为什么要离散化有些分类算法只接受类别属性减小数据大小为进一步分析做准备概念分层:通过用高层概念(如青年,中年,老年)收集和替换低层概念(如年龄属性的数值)来减少数据量。第三十八页,共六十九页,2022年,8月28日39数值型数据的离散化和概念分层生成方法BinningHistogramanalysisClusteringanalysisEntropy-baseddiscretizationSegmentationbynaturalpartitioning第三十九页,共六十九页,2022年,8月28日40基于熵的离散化给定一组样本S,如果S利用边界T被划分为两个区间S1和S2,划分之后的熵为使得熵函数在所有可能的边界中取得最小值的那个边界被选作为二元离散因子递归地将这一过程应用于所得的分区,直到满足特定的结束条件,e.g.,实验表明这样处理数据可以减少数据大小,以及改善分类准确率。第四十页,共六十九页,2022年,8月28日41总结数据准备是数据仓库和数据挖掘中的大问题数据准备包括数据清理和数据集成数据归约和属性选择离散化目前已经开发了许多中方法用于数据准备,但其仍是个活跃的研究领域第四十一页,共六十九页,2022年,8月28日42数据预处理为什么要预处理数据?数据清理数据集成与转换数据简约(归约)离散化与概念分层生成用SSIS对数据进行ETL操作第四十二页,共六十九页,2022年,8月28日用SSIS对数据进行ETL操作SQLServerIntegrationServices(SSIS)是由SQLServer2000中的DTS服务升级而来,是用于生成高性能数据集成和工作流解决方案的平台,可以进行数据的提取、转换和加载(ETL)操作。SSIS可以解决业务数据库中数据模型不同、数据不兼容等问题。SSIS通过包来管理复杂的数据整合任务,通过控制流、数据流和事件处理程序等组件来处理这些任务。43第四十三页,共六十九页,2022年,8月28日44包包控制流任务源转换目标数据流任务包的典型使用方式第四十四页,共六十九页,2022年,8月28日第一个SSIS包的设计将设计一个包来处理AdventureWorks数据库的“TransactionHistoryArchive”表,同时把处理后的数据转换为平面文件目标(文本文件),并且在包内把此目标文件复制到备份文件夹中。45第四十五页,共六十九页,2022年,8月28日1.新建项目46第四十六页,共六十九页,2022年,8月28日47第四十七页,共六十九页,2022年,8月28日2.设置连接管理器(1)鼠标右键单击“连接管理器”区域任意位置,在弹出的快捷菜单中选择“新建OLEDB连接”命令。(2)在“配置OLEDB连接管理器”对话框中单击“新建”按钮,在弹出的“连接管理器”对话框中选择相应服务器,并选择AdventureWorks数据库。(3)设置好后可单击此对话框中的“测试连接”按钮。返回SSIS设计器。48第四十八页,共六十九页,2022年,8月28日49第四十九页,共六十九页,2022年,8月28日3.规划控制流本例中需要计算销售归档数据表中的数据,并把结果保存为一个文本文件,同时复制到备份文件夹中。(1)确认管理标签是“控制流”,从工具箱中选择“数据流任务”组件拖动到控制流设计器中,改名为“计算归档值”。(2)从工具箱中选择“文件系统任务”组件拖动到控制流设计器中,命名为“备份”。拖动“计算归档值”数据流任务下的绿色箭头到这个文件系统任务。(3)选择工具箱中的“序列容器”组件拖动到控制流设计界面,同时把前2个组件一起放入到序列容器中。50第五十页,共六十九页,2022年,8月28日51第五十一页,共六十九页,2022年,8月28日4.设计“计算归档值”数据流(1)双击“计算归档值”组件,计入数据流管理界面。(2)从工具箱中选择“OLEDB源”组件,改名为“提取数据”。双击此组件,在弹出的“OLEDB源编辑器”窗口中进行设置。如图所示。52第五十二页,共六十九页,2022年,8月28日53第五十三页,共六十九页,2022年,8月28日4.设计“计算归档值”数据流(3)从工具箱中选择“派生列”组件,命名为“计算每一项的总成本”,并把“提取数据”组件所带的绿色箭头拖动到“计算每一项的总成本”组件,后双击该组件,进行设置。54第五十四页,共六十九页,2022年,8月28日55

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论