开发者学堂课程【高校精品课-北京理工大学-数据仓库与数据挖掘(上):数据集成】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/921/detail/15631
数据集成
内容分析:
一、定义
二、数据集成中的冗余问题
一、定义
1、数据集成是数据预清理的重要步骤。它指的是将来自多个不同数据源的数据在物理或逻辑上实现集中并提供统一的数据访问接口。
2、数据集成方案:
这里主要介绍基于数据仓库的数据集成方案,基于数据仓库的数据集成方案首先会通过数据的抽取转换和加载记忆数据的 ETL 操作,将来自于多个不同数据源的数据统一的集中到数据仓库中,由数据仓库提供数据访问接口,通过数据访问接口,就可以对集成后的数据进行访问和分析。
3、数据集成的任务
对于数据集成来说,最重要的任务是维护来自多个不同数据源的数据的一致性,但是由于来自多个不同数据源的数据,可能会出现不同的表示、重复,甚至不一致的情况。因此在数据集成中有很多问题需要考虑,比如说像实体识别、重复记录检测以及属性冗余等。
二、数据集成中的冗余问题
1、含义:数据集成中的冗余主要指的是属性名称的不一致。
比如同为学生的学号,可以用学生的 ID,也可以用学生的 number 来表示,此外如果有一个属性可以由另外一组属性推导出来。
那么这个属性也是冗余的。
2、导致原因:不同的表示方法、不同的测量尺度等
3、解决方法:通过相关性分析来发现属性冗余:对于数值类型的属性,可以使用相关系数或者是协方差来进行相关性的检测;对于标称类型的属性,可以通过卡方检验来发现属性冗余。
⑴对于标称类型的属性,可以通过卡方检验来发现属性冗余。
①卡方检验:对于卡方检验来说,它首先是基于一个假设,这个假设就是两个属性的分布是独立的。对于两个属性 A和 B,假设 A 属性的取值有 c 种情况,B属性的取值用r种情况,数据记录总共是有 n 个。这两个数据的卡方值,可以用公式去计算:
期望测度公式:事件 A= 发生次数乘以事件 B= 发生次数,除以数据元素的个数
代表事件 A=、B= 的观测测度,即这个事件的发生次数
指事件 A=、B= 的期望测度
若卡方值比较大,就说明这两个属性的相关性是比较强的
②例子:期望测度为90
下面通过一个实际的例子介绍卡方值的计算:在这个例子中,有两个属性:下棋和喜欢科幻小说。对于每个属性都有两种取值情况:是或否。根据属性的取值,可以构建一个2×2的矩阵,矩阵中的每一个元素记录每一个事件的观测测度,即这个事件的发生次数。把这个矩阵称之为属性相一表,在属性相一表中,对于每一个事件不仅要记录它的实际观测度,还要记录它的期望测度。比如对于这样的一个事件,要把期望测度90计算出来并且标明。那这个90是怎么计算的呢?可以使用之前介绍的公式。对于这样的一个事件,下棋和喜欢科幻小说,下棋的人数是300,喜欢科幻小说的人数是450,总共的数据记录是1500。所以对于这个事件,期望测度就可以用300*450.÷1500,那么就可以得到90。
通过以上方法,可以把每一个事件的期望测度都求出来,在求得每个事件的期望测度之后,可以用卡方计算公式,把这个卡方值计算出来,由于每一个属性都是两种取值情况,所以自由度为一。
对自由度为一、在置信水平为0.001的情况下,拒绝假设的值是10.8,那计算出来这个卡方值是远远高于拒绝假设的这个值,所以说可以通过卡方值判断这两个属性是相关性很强的属性。
⑵对于数值类型的属性,可以使用相关系数或者是协方差来进行相关性的检测。
①方差就指的是这个数据的观测值和期望值的偏离程度,一般是采用这个数据的均值,即这个μ代表这个数据的期望值,对方差开平方就可以得到标准差。
②对于两个属性x、y,它的标准差计算公式如下:
n指的是数据元素的个数, 表示平均值,Xk是表示第k个记录的x属性的取值
在计算得到每个属性的方差之后,可以计算这两个属性的协方差:
通过协方差的计算公式可以发现方差是协方差的一种特殊表现形式,也就是如果两个属性相同,这里把y用x代表,就可以得到 x 的方差。
③协方差的值是大于0的,表示这两个属性是正相关,一个属性会随着另外一个属性的增长而增长,随着这个属性的减小而减小。如果协方差的值小于0,说明这两个属性是负相关,一个属性会随着另外一个属性的增加而减小。如果这两个属性是独立的,它们的协方差的值是0,注意:这个命题的逆命题是不成立的,即这个命题的逆命题,只有在一些特定的情况下,比如说两个属性都满足多元正态分布,只有在这种情况下它的逆命题才是成立的。
例:
对于两个属性 x 和 y,可以通过协方差的计算公式计算得到这个协方差为0,那如果协方差为0,并不是x和y就是独立的。因为从数值上可以得到 Y 是等于 x 的平方。通过这样的一个可视化,也可以发现当X是小于0的时候,那么它们是一种负相关。而当x大于0的时候,他们是一种正相关。所以只有当 x 和 y 属性满足特定的假设条件,比如说像x和y属性满足多元正态分布,这个时候如果协方差为0,这两个属性是独立的。
⑶协方差规范化得到皮尔森相关系数
对协方差 x 、 y ,用 x 和 y 的标准差进行规范化,使落入一个特定的区间-1和1之间,这样就可以得到皮尔森相关系数。和协方差类似:如果皮尔森相关系数大于0,这两个属性是正相关。如果皮尔森系数等于0,在满足某些特定条件下,这两个属性是独立的。当皮尔森系数小于0的时候,这两个属性是负相关。
这张图就展示了皮尔森相关系数从-1到0再到1的变化情况:
负相关的情况:
相关系数为0的情况,也就是两个数据是彼此独立,没有任何相关关系的:
正相关的情况