《数据挖掘——概念与技术(第3版)》笔记(三)

【内容包括:第3章 数据预处理】

一、数据预处理

1.概述

数据质量涉及因素:准确性 完整性 一致性 时效性 可信性 可解释性

数据是不完整的、不寻常的和不一致的

数据质量的三个要素 准确性、完整性和一致性
现实世界的大型数据库和数据仓库的共同特点

被掩盖的缺失数据 当用户不希望提交个人信息时,故意向强制输入字段输入不正确的值

时效性 记录提交的时间延迟导致数据库不完整,但是一旦接收后,就是正确的
可信性 有多少信息是用户信赖的
可解释性 反映数据是否容易理解

2.数据预处理的主要任务

数据清理 例程通过填写缺失的值、光滑噪声数据、识别或删除离群点 解决不一致来清理数据。

数据集成在分析中使用来自多个数据源的数据,涉及集成多个数据库、数据立方体或文件

代表同一概念的属性在不同的数据库中可能具有不同的名字,导致不一致性或冗余。

数据归约 降低数据集的规模又不损害数据挖掘的结果,得到数据集的简化表示

维归约 使用数据编码方案,得到原始数据的简化或压缩表示
数据压缩技术 属性子集选择 属性构造

数值归约 使用参数模型或非参数模型 用较小的表示取代数据

数据变化 规范化能得到更好的结果
离散化、概念分层使得数据的挖掘可以在多个抽象层上进行

二、数据清理

1.缺失值

  1. 忽略元组
  2. 人工填写缺失值 (费时)
  3. 使用全局常量填写缺失值
  4. 使用属性的中心度量如均值或中位数填写缺失值
  5. 使用与给定元组数同一类的所有样本的属性均值或中位数
  6. 使用最可能的值填充缺失值(回归、贝叶斯形式化方法的基于推理的工具或决策树归纳确定)

2.噪声数据

噪声 被测量的随机误差或方差。

分箱 通过考察数据的近邻来光滑有序数据值

箱均值光滑
箱中位数光滑
箱边界光滑 箱中的每一个值被替换为最近的边界值 宽度约达 光滑效果越明显

回归 用一个函数你和数据来光滑数据
线性回归 涉及找出拟合两个属性或变量的最佳直线,使得一个属性可以用来预测另一个
多元线性回归 线性回归的扩充,涉及的属性多于两个,数据拟合到一个多为曲面

离群点分析 通过聚类来检测离群点,聚类将类似的值组织成群或簇
落在簇之外的点称为离群点

3.数据清理

1) 偏差检测

元数据 用关于数据的性质来进行异常的识别。
编码使用不一致、数据表示不一致、字段过载。
根据连续性规则、唯一性规则和空值规则来考察数据。

数据清洗工具 数据审计工具

2)数据变换

数据迁移工具
ETL工具(Extraction/Transformation/Loading)

偏差检测和数据变换两部迭代执行,然而这一过程容易出错,导致更多偏差。
新的数据清理方法强调交互性,集成两步。另一种提高数据清理交互性的方法是开发数据变换操作的规范说明语言。

三、数据集成

合并来自多个数据存储的数据。

1.实体识别问题

实体识别问题:来自多个信息源的现实世界的等价实体如何才能匹配?

2.冗余和相关分析

一个属性如果能够由另一个或一组属性导出,则这个属性可能是冗余的。
有些冗余可以被相关分析检测到。

对于标称属性,使用卡方检验。
对于数值属性,使用相关系数和协方差。
都评估一个属性的值如何随另一个变化。

标称数据的卡方检验

假设A有c个不同值,B有r个不同值
χ 2 = ∑ i = 1 c ∑ j = 1 r ( o i j − e i j ) 2 e i j \chi^{2} = \sum_{i=1}^c\sum_{j=1}^r\frac{(o_{ij}-e{ij})^2}{e_{ij}} χ2=i=1cj=1reij(oijeij)2
联合事件 ( A i , B j ) (A_i,B_j) (Ai,Bj)的观测频度: o i j o_{ij} oij
联合事件 ( A i , B j ) (A_i,B_j) (Ai,Bj)的期望频度: e i j = c o u n t ( A = a i ) × c o u n t ( B = b j ) n e_{ij}=\frac{count(A=a_i)×count(B=b_j)}{n} eij=ncount(A=ai)×count(B=bj)
n是数据元组的个数,
c o u n t ( A = a i ) count(A=a_i) count(A=ai)是A上具有值为a_i的元组个数,
c o u n t ( B = b j ) count(B=b_j) count(B=bj)是B上具有值为b_j的元组个数。

χ 2 \chi^2 χ2的值贡献最大的单元是其实际计数与期望计数很不相同的单元。

数值数据的相关系数

对于数值数据,可以通过计算AB之间的相关系数,估计这两个属性的相关度。

r A , B = ∑ i = 1 n ( a i − A ‾ ) ( b i − B ‾ ) n σ A σ B = ( a i ) ( b i ) − n A ‾ B ‾ n σ A σ B r_{A,B}=\frac{\sum_{i=1}^n(a_i-\overline{A})(b_i-\overline{B})}{n\sigma_A\sigma_B} =\frac{(a_i)(b_i)-n\overline{A}\overline{B}}{n\sigma_A\sigma_B} rA,B=nσAσBi=1n(aiA)(biB)=nσAσB(ai)(bi)nAB

元组个数:n
元组在A和B上的值: a i , b i a_i,b_i ai,bi
A和B的标准差: σ A , σ B \sigma_A,\sigma_B σA,σB
AB叉乘集: ∑ ( a i b i ) \sum(a_ib_i) (aibi)


− 1 ⩽ r A , B ⩽ 1 -1\leqslant{r_{A,B}}\leqslant1 1rA,B1
如果相关度大于0,则A,B是正相关的,值越大相关性越大。
较高的相关度表明A(或B)可以作为冗余而被删除。

如果相关度等于0,则A,B是独立的,他们之间不存在相关性。
如果该结果小于0,则A,B负相关,这意味着每一个属性都阻止另一个出现。

相关性并不蕴含因果关系。

数值数据的协方差

协方差和方差是两个类似的度量,评估两个属性如何一起变化。考虑两个数值属性A、B和n次观测的集合|(a1,b1),…(an,bn)|。A和B的均值又被称为A和B的期望值,即:
E ( A ) = A ‾ = ∑ i = 1 n a i n E(A)=\overline{A}=\frac{\sum_{i=1}^na_i}{n} E(A)=A=ni=1nai
E ( B ) = B ‾ = ∑ i = 1 n b i n E(B)=\overline{B}=\frac{\sum_{i=1}^nb_i}{n} E(B)=B=ni=1nbi

A和B的协方差为
C o v ( A , B ) = E ( A − A ‾ ) ( B − B ‾ ) = ∑ i = 1 n ( a i − A ‾ ) ( b i − B ‾ ) n Cov(A,B)=E(A-\overline{A})(B-\overline{B})=\frac{\sum_{i=1}^n(a_i-\overline{A})(b_i-\overline{B})}{n} Cov(A,B)=E(AA)(BB)=ni=1n(aiA)(biB)
且有
r A , B = C o v ( A , B ) σ A σ B r_{A,B}=\frac{Cov(A,B)}{\sigma_A\sigma_B} rA,B=σAσBCov(A,B)
C o v ( A , B ) = E ( A ⋅ B ) − A ‾ ⋅ B ‾ Cov(A,B)=E(A⋅B)-\overline{A}⋅\overline{B} Cov(A,B)=E(AB)AB

对于两个趋向一起改变的属性A和B,如果A大于A的期望值(A的均值),则B很有可能大于B的期望值,因此A和B的协方差为正。
如果A,B是独立的,协方差为0。
但如果协方差为零,不能说明A、B独立。

3.元组冲突

在元组级检测重复
去规范化表的使用是数据冗余的一个来源。

4.数据值冲突的检测与处理

来自不同数据源的属性值可能不同(表示、尺度或编码不同)

四、数据归约

1. 数据归约策略概述

维归约:减少考虑的随机变量或属性的个数。
(小波变换、主成分分析)
数量归约:用替代的、较小的数据表示形式替换原数据。
数据压缩:使用变换,以便得到原数据的归约或压缩表示。
无损的:如果原数据能够从压缩后的数据重构,而不损失信息。
有损的:只能近似重构元数据。
对于串压缩,有一些无损压缩算法。

2. 小波变换

离散小波变换(DWT)
用于数据向量X时,将它变换成不同的数值小波系数向量X’,两个向量具有相同的长度。

如何数据压缩? 关键在于小波变换后的数据可以截短。仅存放一小部分最强的小波系数,就能保留近似的压缩数据。

算法:层次金字塔算法
在每次迭代时将数据减半
1.输入数据长度L是2的整次幂,通过在数据向量后添加0来满足。
2.每个变换涉及两个函数,一个使数据光滑,另一个进行加权查分。
3.两个函数作用于X中的数据点对,作用于所有的测量队,导致一个长度为L/2的数据集
4. 两个函数递归地作用于循环得到地数据集,直到数据集地长度为2
5.迭代到的数据集中选择地值被指定为数据变换地小波系数
矩阵必须是标准正交的

离散傅里叶变换(DFT)
DWT有更好的有损压缩。
对于给定的数据向量,如果DWT和DFT保留相同数目的系数,则DWT将提供原数据更准确的近似;DWT需要的空间更小。
只有一种DFT,但又若干族DWT。

3.主成分分析

假设待归约地数据由n个属性或维描述地元组或数据向量组成,PCA搜索k个最能代表数据的n维正交向量,k<=n。
PCA通过创建一个替换的、较小的变量集“组合”属性的基本要素。
过程:

  1. 对输入数据规范化,使得每个属性都落入相同的区间。
  2. 计算k个标准正交向量,作为规范化输入数据的基。这些是单位向量,每一个都垂直于其他向量,这些向量称为主成分,输入数据是主成分的线性组合。
    3.对主成分按“重要性”或强度降序排列。
    4.通过去掉较弱的成分来归约数据。

PCA能够更好地处理稀疏数据,而小波变换更适合高维数据。

4.属性子集选择

通过删除不相关或冗余的属性(维)减少数据量。
属性子集选择的目标是找出最小属性集,使得数据类的概率分布尽可能地接近使用所有属性得到的原分布。

如何找出原属性的一个“好的”子集?

对于n个属性,2^n个可能的子集。
压缩搜索空间的启发式算法 贪心算法。

1.逐步向前选择,由空属性集开始,确定原属性集中最好的属性。
2.逐步向后删除,在每一步中,删除尚在属性集中最差的属性。
3.逐步向前选择和逐步向后删除的组合。
4.决策树归纳:
每个内部结点表示一个属性上的测试
每个分支对应于测试的一个结果
每个外部结点表示一个类预测
组合属性

最好的
使用统计显著性检验来确定,假定属性是相互独立的。
使用信息增益度量,建立分类决策树。

5.回归和对数线性模型:参数化数据归约

对数线性模型 近似离散的多维概率分布。
给定n维元组的集合,把每一个元组看作n维空间的点。
对于离散属性集,可以使用对数线性模型。基于维组合的一个较小子集,估计多为空间中每个点的概率。

回归和对数线性模型都可以用于稀疏数据,尽管它们的应用可能是有限的。
处理倾斜数据,回归更好;用于高维数据时,对数线性模型更好。

6.直方图

直方图将A的数据分布划分为不相交的子集或桶,如果每个桶只代表单个属性值/频率对,则该桶称为单值桶。桶通常代表给定属性的一个连续的区间。

划分规则:等宽、等频

7. 聚类

簇的质量的表示:
1.半径。直径是簇中两个对象的最大距离。
2.形心距离。型芯距离是簇中每一个对象到簇形心的平均距离。

8.抽样

无放回简单随机抽样 SRSWOR
有放回简单随机抽样 SRSWR
簇抽样
分层抽样

抽样的优点:
得到的样本花费正比例于样本集的大小s,而不是数据集的大小N。
抽样的复杂度可能亚线性于数据的大小。
其他数据归约的计数至少需要完全扫描数据

用于数据归约时,抽样最常用来估计聚类查询的回答。在指定的误差范围内,可以确定估计一个给定函数所需样本的大小。

9.数据立方体聚集

基本方体 在最低层抽象层创建的立方体
顶点方体 最高层抽象的立方体

五、数据变换与数据离散化

1.策略概述

1.光滑
2.属性构造
3.聚集
4.规范化
5.离散化
6.由标称属性产生概念分层

2.通过规范化变换数据

较小的单位表示属性将导致该属性具有较大值域,因此趋向于使这样的属性具有较大的影响或较高的权重。
为了避免对度量单位选择的依赖性,数据应该规范化或标准化。

1)最大-最小规范化

对原始数据进行线性变换。

v i ′ = v i − m i n A m a x A − m i n A ( n e w m a x A − n e w m i n A ) + n e w m i n A v_i^{&#x27;}=\frac{v_i-min_A}{max_A-min_A}(newmax_A-newmin_A)+newmin_A vi=maxAminAviminA(newmaxAnewminA)+newminA
假设 m i n A min_A minA m a x A max_A maxA分别是属性A的最小值和最大值,把A的值vi映射到区间 [ n e w m i n A , n e w m a x A ] [newmin_A,newmax_A] [newminA,newmaxA]中的 v i v_i vi

保持了原始数据之间的联系,如果今后的输入实例在A的原始数据值域之外,则该方法将面临越界错误

2)z分数规范化(0均值规范化)

A的值vi被规范成vi’

v i ′ = v i − A ‾ σ A v_i^{&#x27;}=\frac{v_i-\overline{A}}{\sigma_A} vi=σAviA

A ‾ \overline{A} A是A的均值, σ A \sigma_A σA是A的标准差

标准差可以使用均值绝对偏差替换。
均值绝对偏差
s A = 1 n ( ∣ v 1 − A ‾ ∣ + ∣ v 2 − A ‾ ∣ + . . . + ∣ v n − A ‾ ∣ ) s_A=\frac{1}{n}(|v_1-\overline{A}|+|v_2-\overline{A}|+...+|v_n-\overline{A}|) sA=n1(v1A+v2A+...+vnA)

对于离群点,均值绝对偏差 s A s_A sA比标准差更加鲁棒(对偏差不取平方)

3)按小数定标规范化

通过移动属性A 的值的小数点位置进行规范化,小数店的移动位数依赖于A的最大绝对值。

v i ′ = v i 1 0 j v_i&#x27;=\frac{v_i}{10^j} vi=10jvi
其中j是使得 m a x ( v i ′ ) &lt; 1 max(v_i&#x27;)&lt;1 max(vi)<1的最小整数

3.通过分箱离散化

  • 基于指定的箱个数的自顶向下的分裂技术
  • 不使用类信息,是一种非监督的离散化技术
  • 对用户指定的箱个数很敏感,也容易受离群点的影响

4.通过直方图分析离散化

  • 不使用类信息,是一种非监督离散化方法
  • 可以递归地用于每个分析,产生多级概念分层,直到达到预设地概念层数,也可以对每一层使用最小区间长度来控制递归过程

5.通过聚类、决策树和相关分析离散化

决策树: 选择划分点使得一个给定的结果分区包含尽可能多的同类元组
熵:用于确定划分点的度量。为了离散化数值属性A,选择最小化熵的A的值作为划分点,并递归地划分结果区间,得到分层离散化,形成A的概念分层。

6.标称数据的概念分层产生

概念分层可以用来把数据变换到多个粒度层
四种标称数据概念分层的产生方法

  • 1.由用户或专家在模式级显式地说明属性地部分序
  • 2.通过显式数据分组说明分层结构的一部分
  • 3.说明属性集但不说明它们的偏序
  • 4.只说明部分属性集

具有最多不同值的属性放在分层结构的最底层

模式和属性值计数信息都可以用来产生标称数据的概念分层
使用概念分层变换数据使得较高层的知识模式可以被发现

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值