浙江大学远程教育学院 DISTANCELEARN I NGSCHOOLOFZHEJI ANGUN I VERS I TY 任课教师:王灿 课程代码:0703004 课程名称:数据挖掘 第 7-8讲 教师E-mai:sjwj@dlc.zju.edu.cn
7-8 王 灿 数据挖掘 sjwj@dlc.zju.edu.cn 0703004
数据预处理
数据预处理
为什么要预处理数据? 现实世界的数据是“肮脏的”——数据多了, 什么问题都会出现 口不完整的:有些感兴趣的属性缺少属性值,或仅包 含聚集数据 a含噪声的:包含错误或者“孤立点” 口不一致的:在编码或者命名上存在差异 ■没有高质量的数据,就没有高质量的挖掘结果 口高质量的决策必须依赖高质量的数据 ¤数据仓库需要对高质量的数据进行一致地集成
为什么要预处理数据? ◼ 现实世界的数据是“肮脏的”——数据多了, 什么问题都会出现 ❑ 不完整的:有些感兴趣的属性缺少属性值,或仅包 含聚集数据 ❑ 含噪声的:包含错误或者“孤立点” ❑ 不一致的:在编码或者命名上存在差异 ◼ 没有高质量的数据,就没有高质量的挖掘结果 ❑ 高质量的决策必须依赖高质量的数据 ❑ 数据仓库需要对高质量的数据进行一致地集成
数据质量的多维度量 个广为认可的多维度量观点 精确度 口完整度 a一致性 口合乎时机 a可信度 口附加价值 口可访问性 跟数据本身的含义相关的 口内在的、上下文的、表象的
数据质量的多维度量 ◼ 一个广为认可的多维度量观点: ❑ 精确度 ❑ 完整度 ❑ 一致性 ❑ 合乎时机 ❑ 可信度 ❑ 附加价值 ❑ 可访问性 ◼ 跟数据本身的含义相关的 ❑ 内在的、上下文的、表象的
数据预处理的主要任务 数据清理 ¤填写空缺的值,平滑噪声数据,识别、删除孤立点,解决不 致性 ■数据集成 ¤集成多个数据库、数据立方体或文件 ■数据变换 a规范化和聚集 数据归约 a得到数据集的压缩表示,它小得多,但可以得到相同或相近 的结果 数据离散化 口数据归约的一部分,通过概念分层和数据的离散化来规约数 据,对数字型数据特别重要
数据预处理的主要任务 ◼ 数据清理 ❑ 填写空缺的值,平滑噪声数据,识别、删除孤立点,解决不 一致性 ◼ 数据集成 ❑ 集成多个数据库、数据立方体或文件 ◼ 数据变换 ❑ 规范化和聚集 ◼ 数据归约 ❑ 得到数据集的压缩表示,它小得多,但可以得到相同或相近 的结果 ◼ 数据离散化 ❑ 数据归约的一部分,通过概念分层和数据的离散化来规约数 据,对数字型数据特别重要
空缺值 数据并不总是完整的 a例如:数据库表中,很多条记录的对应字段没有相 应值,比如销售表中的顾客收入 引起空缺值的原因 口设备异常 a与其他已有数据不一致而被删除 ¤因为误解而没有被输入的数据 a在输入时,有些数据应为得不到重视而没有被输入 口对数据的改变没有进行日志记载 空缺值要经过推断而补上
空缺值 ◼ 数据并不总是完整的 ❑ 例如:数据库表中,很多条记录的对应字段没有相 应值,比如销售表中的顾客收入 ◼ 引起空缺值的原因 ❑ 设备异常 ❑ 与其他已有数据不一致而被删除 ❑ 因为误解而没有被输入的数据 ❑ 在输入时,有些数据应为得不到重视而没有被输入 ❑ 对数据的改变没有进行日志记载 ◼ 空缺值要经过推断而补上
如何处理空缺值 ■忽略元组:当类标号缺少时通常这么做(假定挖掘任 务涉及分类或描述),当每个属性缺少值的百分比变 化很大时,它的效果非常差 ■人工填写空缺值:工作量大,可行性低 使用一个全局变量填充空缺值:比如使用 unknow或 ■使用属性的平均值填充空缺值 ■使用与给定元组属同一类的所有样本的平均值 使用最可能的值填充空缺值:使用像 Bayesian公式 或判定树这样的基于推所的方法
如何处理空缺值 ◼ 忽略元组:当类标号缺少时通常这么做(假定挖掘任 务涉及分类或描述),当每个属性缺少值的百分比变 化很大时,它的效果非常差。 ◼ 人工填写空缺值:工作量大,可行性低 ◼ 使用一个全局变量填充空缺值:比如使用unknown或 -∞ ◼ 使用属性的平均值填充空缺值 ◼ 使用与给定元组属同一类的所有样本的平均值 ◼ 使用最可能的值填充空缺值:使用像Bayesian公式 或判定树这样的基于推断的方法
噪声数据 ■噪声:一个测量变量中的随机错误或偏差 ■引起噪声数据的原因 ¤数据收集工具的问题 ¤数据输入错误 ¤数据传输错误 a技术限制 a命名规则的不一致
噪声数据 ◼ 噪声:一个测量变量中的随机错误或偏差 ◼ 引起噪声数据的原因 ❑ 数据收集工具的问题 ❑ 数据输入错误 ❑ 数据传输错误 ❑ 技术限制 ❑ 命名规则的不一致
如何处理噪声数据 分箱( binning) ¤首先排序数据,并将他们分到等深的箱中 ¤然后可以按箱的平均值平滑、按箱中值平滑、按箱的边界平 滑等等 聚类 a监测并且去除孤立点 计算机和人工检查结合 ¤计算机检测可疑数据,然后对它们进行人工判断 回归 口通过让数据适应回归函数来平滑数据
如何处理噪声数据 ◼ 分箱(binning): ❑ 首先排序数据,并将他们分到等深的箱中 ❑ 然后可以按箱的平均值平滑、按箱中值平滑、按箱的边界平 滑等等 ◼ 聚类: ❑ 监测并且去除孤立点 ◼ 计算机和人工检查结合 ❑ 计算机检测可疑数据,然后对它们进行人工判断 ◼ 回归 ❑ 通过让数据适应回归函数来平滑数据
数据平滑的分箱方法 prce的排序后数据(单位:美元):4,8,15,21,21,24,25, 28,34 划分为(等深的)箱: a箱1:4,8,15 口箱2:21,21,24 箱3:25,28,34 用箱平均值平滑: 口箱1:9,9,9 箱2:22,22,22 箱3:29,29,29 用箱边界平滑: 箱1:4,4,15 口箱2:21,21,24 口箱3:25,25,34
数据平滑的分箱方法 ◼ price的排序后数据(单位:美元):4,8,15,21,21,24,25, 28,34 ◼ 划分为(等深的)箱: ❑ 箱1:4,8,15 ❑ 箱2:21,21,24 ❑ 箱3:25,28,34 ◼ 用箱平均值平滑: ❑ 箱1:9,9,9 ❑ 箱2:22,22,22 ❑ 箱3:29,29,29 ◼ 用箱边界平滑: ❑ 箱1:4,4,15 ❑ 箱2:21,21,24 ❑ 箱3:25,25,34