第三讲 数据预处理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例如,假定属性income的最小与最大值分别为$12 000 和$98 000,映射income到区间[0.0,1.0]。根据公式, income值$73 600将变换为 73600 12000 (1.0 0) 0.716
98000 12000
25
数据转换: 规范化
z-score normalization:属性A的值基于A的平均值和标
18
聚类分析
19
回归
y
Y1 Y1’
y=x+1
X1
x
20
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
21
数据集成
数据集成(Data integration):将多个数据源中的 数据组合到一个一致的数据存储中。需要考虑的问 题:
数据转换(Data transformation)
Normalization and aggregation
数据归约/约简(Data reduction)
Obtains reduced representation in volume but produces the same or similar analytical results
噪音: 包含错误、异常数据或存在偏离期望的孤立点值。 不一致: 包含编码或名称的差异。例如,用于商品分类
的部门编码存在差异。
没有质量保证的数据, 就没有高质量的挖掘 结果!
高质量的决策必须以高质量的数据为基础 数据仓库需要一致集成的高质量数据
3
数据预处理的主要任务
数据清理(Data cleaning)
导致不正确属性值的原因
错误的数据收集手段 数据输入问题 数据传送问题 技术限制
13
如何处理噪音数据?
给定一个数值属性,例如price,怎样才能平滑数 据,去掉噪音?常用的数据平滑技术:
分箱(Binning method):分箱方法通过考察 “邻居”(即周围的值)来平滑存储数据的值。
generation)
用于数据归约的时间不应当超过或“抵消”在归约后数据 挖掘上挖掘节省的时间。
28
维数约简
维数约简:通过删除不相关的属性(或维)减少数据量。 通常使用属性子集选择法。
属性子集选择
选择最小的一组属性,使得数据类的概率分布与使用所有属性 获得的最初概率分布尽可能的一致
据。 规范化:将属性数据按比例映射到一个小的特定范围,如[-1,1]
min-max normalization z-score normalization normalization by decimal scaling
属性构造(或特征构造):从给定属性中创建新属性
24
数据转换: 规范化
11
如何处理缺失数据
方法3-6使数据倾斜,填入的值可能不正 确。然而,方法6是最常用的方法。与其 他方法相比,它使用现存数据的多数信息 来预测空缺值。通过考虑其他属性的值, 有更大机会保持空值属性和其他属性之间 的联系。
12
噪音数据(Noisy Data)
Noise: (具有不正确的属性值)在可测度变量 中的随机错误或偏差
8
数据清理
数据清理任务
补充缺失值 识别异常并平滑噪音数据 修正不一致的数据
9
Missing Data(缺失数据)
数据并非总是可得到的
例如:许多元组在某些属性上没有记录值, 比如销售数据中的 客户收入
导致缺失数据的原因
设备出错 和其他记录数据不一致,进而被删除了 由于误解导致数据没有录入 在录入的时候某些数据可能被认为是不重要的
v' v 10 j
Where j is the smallest integer such that Max(| v' |)<1
26
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
27
数据归约
22
数据集成中的冗余数据处理
在集成多种数据库时经常会出现冗余数据
同一属性值在不同的数据库中可能有不同的名字
一个属性可能是另外一个表中的一个“衍生”属性, e.g., 年 薪
冗余数据可能通过相关性分析而被发现
其中,
(A A)(B B)
rA,B (n 1) A B
A 是A的标准差 A
减少被发现模式属性的数量,使得模式更容易理解
d个属性有 2d 个可能的子属性集合 启发式算法(Heuristic Methods):贪心算法,作局部
最优选择,期望由此导致全局最优解。包括以下技术:
逐步向前选择 逐步向后消除 结合上述二者 决策树归纳:基于信息增益度量,ID3和C4.5算法
第三讲
数据预处理
1
数据预处理(Data Preprocessing)
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
2
为什么进行数据预处理?
现实世界中的数据是“脏”的
不完整: 缺少属性值, 缺少某些属性, 或者仅包含聚集类 数据
数据仓库可能存储T数量级的数据,如果运行于完整的数 据集,复杂数据分析或挖掘要花费非常长的时间。
数据归约(Data reduction):获得数据集的一个简约表示, 使得在容量上大大减小,但仍接近于保持原数据的完整性, 并产生相同或基本相同的分析结果。
数据归约策略
数据立方体聚集(Data cube aggregation) 维数约简(Dimensionality reduction) 数值压缩(Numerosity reduction) 离散化和概念分层生成(Discretization and concept hierarchy
实体识别问题
从多种数据源中识别真实世界中的实体 e.g., A.cust-id B.cust-#
通过元ห้องสมุดไป่ตู้据解决
侦测并解决数据值的冲突
对于真实世界中的同一实体,来自不同数据源的属性值可能是不 同的
可能的原因: 不同的表示, 不同比率, e.g., 公制 vs.英制单位 属于语义的异种性
缺失数据可能需要被推知
10
如何处理缺失数据
忽略该元组: 通常类标志缺失时 (假设在分类任务中) 手工填入缺失值: 繁琐 + 不可能? 用一个全局常量来填充缺失值:例如,用 “unknown”来替换空缺值。可能挖
掘出一个有趣的概念,因为这些数据都具有相同的值“unknown”。该方法虽 然简单,却并不十分可靠。 利用该属性的均值来填充缺失值:例如用顾客的平均收入替换收入(income) 的空值。 利用与给定元组属于同一类的所有样本的均值:例如,如果将顾客按信用等 级(credit_risk)分类,则用具有相同信用度的顾客的平均收入替换收入的空 缺值。smarter 利用最可能的值来填充缺失值:决策树。例如利用数据集中其他顾客的属性, 可以构造一棵决策树,来预测income的空缺值。
首先将数据排序并将其分割到一些相等深度的“桶” (bucket or bin)中
然后可根据桶均值,桶中间值,桶边界值等进行平滑
14
Binning Method
Sorted data: 4,8,15,21,21,24,25,28,34 Partition into (equidepth) bins: Bin1: 4,8,15 Bin2:21,21,24 Bin3:25,28,34 Smoothing by bin means: Bin1:9,9,9 Bin2:22,22,22 Bin3:29,29,29 Smoothing by boundaries: Bin1:4,4,15 Bin2:21,21,24 Bin3:25,25,34
较好的数据比例
17
如何处理噪音数据?
聚类(Clustering)
孤立点可以被聚类检测。聚类将类似的值组织成群或 “聚类”。直观地看,落在聚类集合之外的值被视为 孤立点。
回归
通过让数据适合一个函数(如线性回归函数)来平滑 数据。
线性回归涉及找出适合两个变量的“最佳”直线,使 得一个变量能够预测另一个。
29
决策树归纳的一个例子
初始的属性集合: {A1, A2, A3, A4, A5, A6}
A4 ?
Y
N
A1?
A6?
Y
N
Y
N
Class 1 Class 2 Class 1 Class 2
> Reduced attribute set: {A1, A4, A6}
5
数据预处理的形式
6
为什么要预处理数据?
现实世界的数据一般是脏的、不完整的和 不一致的。数据预处理技术可以改进数据 的质量,从而有助于提高其后的挖掘过程 的精度和性能。由于高质量的决策必然依 赖于高质量的数据,因此数据预处理是知 识发现过程中的重要步骤。
7
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
准差。
v' v meanA v A
stand _ devA A
当属性A的最大和最小值未知,或孤立点左右了min-max normalization时,该方法是有用的。
normalization by decimal scaling:通过移动属性A的小 数点位置进行规范化。小数点的移动位数依赖于A的最 大绝对值。
15
数据平滑的Binning 方法
* Sorted data for price (in dollars): 4, 8, 9, 15, 21, 21, 24, 25, 26, 28,
29, 34 * Partition into (equi-depth) bins:
- Bin 1: 4, 8, 9, 15 - Bin 2: 21, 21, 24, 25 - Bin 3: 26, 28, 29, 34 * Smoothing by bin means: - Bin 1: 9, 9, 9, 9 - Bin 2: 23, 23, 23, 23 - Bin 3: 29, 29, 29, 29 * Smoothing by bin boundaries: - Bin 1: 4, 4, 15, 15 - Bin 2: 21, 21, 25, 25 - Bin 3: 26, 26, 34, 34
min-max normalization:对原始数据进行线性变换。
v' v minA (new _ maxA new _ minA) new _ minA maxA minA
能够保持原始数据值之间的关系。如果今后的输入落 在A的原数据区之外,该方法将面临“越界”的错误。
16
简单的离散化方法:Binning
等宽(距)划分:
将范围分为等大小的N个区间
如果 A和 B是该属性的最低或最高值,则区间的宽度 为: W = (B-A)/N.
最直接易懂 但是异常值可能会主导其展现 不能很好的处理偏离数据(Skewed data)
等深(频)划分:
将范围划分为N个区间,每个区间包含近似相等数量 的样本
( A A)2
n 1
仔细集成来自不同源的数据有助于减少或避免冗 余和不一致性从而改善挖掘速度和质量
23
数据转换
数据转换:将数据转换成适合于挖掘的形式。涉及以下 内容:
平滑:从数据中去掉噪音。这种技术包括分箱、聚类和回归。 聚集:对数据进行汇总和聚集。 数据泛化:使用概念分层,用高层次概念替换低层次“原始”数
Fill in missing values, smooth noisy data, identify or remove outliers, and resolve inconsistencies
数据集成(Data integration)
Integration of multiple databases, data cubes, or files
98000 12000
25
数据转换: 规范化
z-score normalization:属性A的值基于A的平均值和标
18
聚类分析
19
回归
y
Y1 Y1’
y=x+1
X1
x
20
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
21
数据集成
数据集成(Data integration):将多个数据源中的 数据组合到一个一致的数据存储中。需要考虑的问 题:
数据转换(Data transformation)
Normalization and aggregation
数据归约/约简(Data reduction)
Obtains reduced representation in volume but produces the same or similar analytical results
噪音: 包含错误、异常数据或存在偏离期望的孤立点值。 不一致: 包含编码或名称的差异。例如,用于商品分类
的部门编码存在差异。
没有质量保证的数据, 就没有高质量的挖掘 结果!
高质量的决策必须以高质量的数据为基础 数据仓库需要一致集成的高质量数据
3
数据预处理的主要任务
数据清理(Data cleaning)
导致不正确属性值的原因
错误的数据收集手段 数据输入问题 数据传送问题 技术限制
13
如何处理噪音数据?
给定一个数值属性,例如price,怎样才能平滑数 据,去掉噪音?常用的数据平滑技术:
分箱(Binning method):分箱方法通过考察 “邻居”(即周围的值)来平滑存储数据的值。
generation)
用于数据归约的时间不应当超过或“抵消”在归约后数据 挖掘上挖掘节省的时间。
28
维数约简
维数约简:通过删除不相关的属性(或维)减少数据量。 通常使用属性子集选择法。
属性子集选择
选择最小的一组属性,使得数据类的概率分布与使用所有属性 获得的最初概率分布尽可能的一致
据。 规范化:将属性数据按比例映射到一个小的特定范围,如[-1,1]
min-max normalization z-score normalization normalization by decimal scaling
属性构造(或特征构造):从给定属性中创建新属性
24
数据转换: 规范化
11
如何处理缺失数据
方法3-6使数据倾斜,填入的值可能不正 确。然而,方法6是最常用的方法。与其 他方法相比,它使用现存数据的多数信息 来预测空缺值。通过考虑其他属性的值, 有更大机会保持空值属性和其他属性之间 的联系。
12
噪音数据(Noisy Data)
Noise: (具有不正确的属性值)在可测度变量 中的随机错误或偏差
8
数据清理
数据清理任务
补充缺失值 识别异常并平滑噪音数据 修正不一致的数据
9
Missing Data(缺失数据)
数据并非总是可得到的
例如:许多元组在某些属性上没有记录值, 比如销售数据中的 客户收入
导致缺失数据的原因
设备出错 和其他记录数据不一致,进而被删除了 由于误解导致数据没有录入 在录入的时候某些数据可能被认为是不重要的
v' v 10 j
Where j is the smallest integer such that Max(| v' |)<1
26
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
27
数据归约
22
数据集成中的冗余数据处理
在集成多种数据库时经常会出现冗余数据
同一属性值在不同的数据库中可能有不同的名字
一个属性可能是另外一个表中的一个“衍生”属性, e.g., 年 薪
冗余数据可能通过相关性分析而被发现
其中,
(A A)(B B)
rA,B (n 1) A B
A 是A的标准差 A
减少被发现模式属性的数量,使得模式更容易理解
d个属性有 2d 个可能的子属性集合 启发式算法(Heuristic Methods):贪心算法,作局部
最优选择,期望由此导致全局最优解。包括以下技术:
逐步向前选择 逐步向后消除 结合上述二者 决策树归纳:基于信息增益度量,ID3和C4.5算法
第三讲
数据预处理
1
数据预处理(Data Preprocessing)
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
2
为什么进行数据预处理?
现实世界中的数据是“脏”的
不完整: 缺少属性值, 缺少某些属性, 或者仅包含聚集类 数据
数据仓库可能存储T数量级的数据,如果运行于完整的数 据集,复杂数据分析或挖掘要花费非常长的时间。
数据归约(Data reduction):获得数据集的一个简约表示, 使得在容量上大大减小,但仍接近于保持原数据的完整性, 并产生相同或基本相同的分析结果。
数据归约策略
数据立方体聚集(Data cube aggregation) 维数约简(Dimensionality reduction) 数值压缩(Numerosity reduction) 离散化和概念分层生成(Discretization and concept hierarchy
实体识别问题
从多种数据源中识别真实世界中的实体 e.g., A.cust-id B.cust-#
通过元ห้องสมุดไป่ตู้据解决
侦测并解决数据值的冲突
对于真实世界中的同一实体,来自不同数据源的属性值可能是不 同的
可能的原因: 不同的表示, 不同比率, e.g., 公制 vs.英制单位 属于语义的异种性
缺失数据可能需要被推知
10
如何处理缺失数据
忽略该元组: 通常类标志缺失时 (假设在分类任务中) 手工填入缺失值: 繁琐 + 不可能? 用一个全局常量来填充缺失值:例如,用 “unknown”来替换空缺值。可能挖
掘出一个有趣的概念,因为这些数据都具有相同的值“unknown”。该方法虽 然简单,却并不十分可靠。 利用该属性的均值来填充缺失值:例如用顾客的平均收入替换收入(income) 的空值。 利用与给定元组属于同一类的所有样本的均值:例如,如果将顾客按信用等 级(credit_risk)分类,则用具有相同信用度的顾客的平均收入替换收入的空 缺值。smarter 利用最可能的值来填充缺失值:决策树。例如利用数据集中其他顾客的属性, 可以构造一棵决策树,来预测income的空缺值。
首先将数据排序并将其分割到一些相等深度的“桶” (bucket or bin)中
然后可根据桶均值,桶中间值,桶边界值等进行平滑
14
Binning Method
Sorted data: 4,8,15,21,21,24,25,28,34 Partition into (equidepth) bins: Bin1: 4,8,15 Bin2:21,21,24 Bin3:25,28,34 Smoothing by bin means: Bin1:9,9,9 Bin2:22,22,22 Bin3:29,29,29 Smoothing by boundaries: Bin1:4,4,15 Bin2:21,21,24 Bin3:25,25,34
较好的数据比例
17
如何处理噪音数据?
聚类(Clustering)
孤立点可以被聚类检测。聚类将类似的值组织成群或 “聚类”。直观地看,落在聚类集合之外的值被视为 孤立点。
回归
通过让数据适合一个函数(如线性回归函数)来平滑 数据。
线性回归涉及找出适合两个变量的“最佳”直线,使 得一个变量能够预测另一个。
29
决策树归纳的一个例子
初始的属性集合: {A1, A2, A3, A4, A5, A6}
A4 ?
Y
N
A1?
A6?
Y
N
Y
N
Class 1 Class 2 Class 1 Class 2
> Reduced attribute set: {A1, A4, A6}
5
数据预处理的形式
6
为什么要预处理数据?
现实世界的数据一般是脏的、不完整的和 不一致的。数据预处理技术可以改进数据 的质量,从而有助于提高其后的挖掘过程 的精度和性能。由于高质量的决策必然依 赖于高质量的数据,因此数据预处理是知 识发现过程中的重要步骤。
7
数据预处理
为什么要预处理数据? 数据清理 数据集成与转换 数据简约(归约) 离散化与概念分层生成 用SSIS对数据进行ETL操作
准差。
v' v meanA v A
stand _ devA A
当属性A的最大和最小值未知,或孤立点左右了min-max normalization时,该方法是有用的。
normalization by decimal scaling:通过移动属性A的小 数点位置进行规范化。小数点的移动位数依赖于A的最 大绝对值。
15
数据平滑的Binning 方法
* Sorted data for price (in dollars): 4, 8, 9, 15, 21, 21, 24, 25, 26, 28,
29, 34 * Partition into (equi-depth) bins:
- Bin 1: 4, 8, 9, 15 - Bin 2: 21, 21, 24, 25 - Bin 3: 26, 28, 29, 34 * Smoothing by bin means: - Bin 1: 9, 9, 9, 9 - Bin 2: 23, 23, 23, 23 - Bin 3: 29, 29, 29, 29 * Smoothing by bin boundaries: - Bin 1: 4, 4, 15, 15 - Bin 2: 21, 21, 25, 25 - Bin 3: 26, 26, 34, 34
min-max normalization:对原始数据进行线性变换。
v' v minA (new _ maxA new _ minA) new _ minA maxA minA
能够保持原始数据值之间的关系。如果今后的输入落 在A的原数据区之外,该方法将面临“越界”的错误。
16
简单的离散化方法:Binning
等宽(距)划分:
将范围分为等大小的N个区间
如果 A和 B是该属性的最低或最高值,则区间的宽度 为: W = (B-A)/N.
最直接易懂 但是异常值可能会主导其展现 不能很好的处理偏离数据(Skewed data)
等深(频)划分:
将范围划分为N个区间,每个区间包含近似相等数量 的样本
( A A)2
n 1
仔细集成来自不同源的数据有助于减少或避免冗 余和不一致性从而改善挖掘速度和质量
23
数据转换
数据转换:将数据转换成适合于挖掘的形式。涉及以下 内容:
平滑:从数据中去掉噪音。这种技术包括分箱、聚类和回归。 聚集:对数据进行汇总和聚集。 数据泛化:使用概念分层,用高层次概念替换低层次“原始”数
Fill in missing values, smooth noisy data, identify or remove outliers, and resolve inconsistencies
数据集成(Data integration)
Integration of multiple databases, data cubes, or files