大数据预处理技术-数据预处理概述-第一章

大数据预处理技术-数据预处理概述-第一章

大数据项目开发流程

image-20240324171258779

1
2
3
4
5
数据采集
数据预处理
数据存储
数据分析挖掘
数据可视化

数据预处理的背景和目的

image-20240324180708044

1
2
3
4
5
6
7
Ok,大家好啊,我们今天呢正式进入数据预处理的第一次理论课,那么数据预处理理论课的第一章呢,主要讲的是数据预处理的一个概述的相关知识点。在正式讲课之前,我们首先来看一下我们大数据项目开发的一个流程。那么大数据开发的流程呢,主要哈我们看图上有五个,第一是数据采集,第二个是数据处理,第三是数据存储,第四次数据分析与挖掘,第五是数据可视化。那么从图中我们可以看到数据预处理,也就是我们这门课所要学习的内容呢?它是在数据怎么样采集之后,存储和分析挖掘之前,那么它的这样一个位置就决定了它的工作,就是读入数据采集阶段的数据,然后采用各种手段来清洗我们的脏数据,再输出满足数据分析,数据挖掘的一个数据集。那么这个数据集一般都是存储在分布式系统当中的。当然对这个数据集进行分析挖掘之后,我们得到的分析挖掘的一个结果是通过啊我们的这个红色部分,也就是我们数据的可视化来向客户进行展示的,这就是我们数据项目开发流程的一个整体的脉络。那么接下来呢,我们将进入到数据预处理的第一章的学习。首先我们来看一下我们第一章的一个整体的脉络情况。第一节讲的是我们数据预处理的一个什么呀背景,也就是说在数数据挖掘项目中,为什么要进行数据处理,那是因为它存在这些数据存在怎么样?各种各样的质量问题,比如缺失,重复的。所以我们进行数据预处理的目的就是提升数据的质量,把数据中的当数据尽可能的全部清除掉。那么我们怎么来做才能清楚这些数据呢?我们要通过四个流程,第一是数据清理,第二是数据集成,第三是数据规约,第四次数据离散化。最后我们将简要的介绍一下本门课程将使用到的两个工具,一个是开头,一个是p,那么它的具体内容将在后面的章节进行重点的讲解。首先哈,我们来进入正式进入我们第一章第一节数据预处理的背景及数据的各种质量问题的一个学习。那么我们存在的数据质量到底包含哪些问题呢?一共我们这里分成了六个大的方面,第一个是数据的准确性,第二个呢是数据的完整性,第三个呢是数据的一致性,第四个呢是数据的相关性,第五个是数据的时效性,第六个是数据的可信性和可解释性。那么这六个方面的问题又可以从不同的角度去划分。第一个角度是采集角度,我们可以把准确性,完整性和一致性归纳进来,第二个呢是应用的角度,我们可以把相关性,时效性归纳进来。最后一个呢是可信性与可解释性,它是从用户的角度来进行划分的。那么首先我们来看第一个质量问题,叫做准确性。数据是正确的,是指数存储的数据在数据库中的值,对于真实世界的值它是怎么样一致的啊?举个例子,当我们在使用支付宝绑定银行卡号的时候,网站会要求其中有一项叫什么真实姓名和身份证号码对不对?那么用户提供的证件号码与实际号码如果一致,那么该号码存储在数据库中的值我们认为就是怎么样正确的,那么不正确又是哪些造成的?首先,第一是数据收集设备故障,导致我们的数据存储时可能会出现乱码,第二是在数据输入的时候,人为的输入不准确的信息,或者说计算机内部出错,导致录入的信息有误。比如说哈,我们上网的时候,当我们需要注册一些信息的时候,个人出于隐私考虑,可能会故意输入不正确的,比如说年龄啊,地址啊,手机号码等等。第三个呢,是数据在传输过程当中可能会出现错误,比如说超出了传输缓存区的大小,数据会出现截断的现象。这个怎么理解?也就像我们搬家一样的东西,要怎么样一个一个的放在一个个箱子里进行,然后再放到我们车上进行运输。那么这个物品的装物品的箱子它不可能是无限大的,它是有一定容积的,我们传输数据也是一样的道理。啊最后一个呢是命名约定数据输入和数字段格式不一致。其中哈最常见的,就比如说我们的日期格式,年月日对不对?对。那么接下来呢?我们来看一下数据质量的第二个完整性。完整性是指信息具有一个实体描述的所有必须的部分。那么在传统关系型数据库中,完整性通常与控制,也就是我们的浪子有关,它包括两个部分,一个是记录的缺失,另外一个叫做记录属性的缺失。那么记录的缺失就是我们整条一行数据的缺失。比如说我们记录了啊,某个人的姓名,年龄,身高啊,体重,电话号码,柱子等等信息,那么整个这个信息的丢失就叫做记录的缺失,如果其中只有一个或者某些属性值缺失,那么就是进入属性的缺失,比如说这条消息当中啊,年龄没有登录啊,身高没有登录,或者另外一条消息当中电话号码啊,缺了啊等等。那么造成数据不完整的原因又有哪些呢?我们接下来看一下啊。第一,涉及隐私无法获取啊,这个很好理解,我不告诉你。第二,由于输入时仍未疏忽,导致那么有些信息虽然不涉及隐私,但是在采集的时候,不采集人员他还认为不重要,它就没问啊。所以这就是人位的输入第三个数据数时,由于机器故障。啊这个很好理解,那机器有问题,你本来告诉他正确的,它翻译出来就是错误的,对吧?那么我们再来看第三个质量问题,叫做什么?一致性。数据的一致性是指在数据库当中,不同表中存储和使用的同一个数据应当是怎么样等价的,表示数据有相同的值或者相同的一个含义,因为是同一个数据,不管你存在哪里,那么你应该你的值和还都是相同的,也就是说我们某某同学,你不管在学校也好,还是在家里也好,你就是你,你不会。还有啊,像孙悟空这样72变对吧?在不同地方变成不同的人,那是不可能的。那么造成不一致的第一个原因是逻辑不一致啊,什么叫逻辑不不一致,我们来看一下表一和表二,表一中描述的是学生的一个基本信息,它包括了我们的学号,姓名,性别,年龄以及专业。那么从表一表二当中我们可以看到啊,表一当中的专业号除了王小刚同学的,其他同学在表达中都能够找到,但是哈,我们要求表一中的专业必须来自表二,所以呢,说明该条记录怎么样,专业好无必须修改正确,才能保证两张表对应字段的一个正确性,这就是我们数据的一个逻辑不一致。那么数据不一致呢?还体现在记录的不规范上。比如说我们看,首先我们想得到事例那样的一个日期格式,结果,由于我们没有可能啊,程序员忘记设置格式信息,格式的信息,所以说大家都根据自己的习惯来录入啊,就产生了下面那么多类型的啊,年月日,有大写的汉字的啊,有写汉字的哈,有大写的数字的,小写数字的,然后还有混用的哈,等等等等。另外呢,不同数据库对同一属性名的命名规则位子也属于记录规范不一致啊。看看下面这张图, abc三个数据库里面都有性别信息的存储,但是他们用了不同的怎么样表示符号? A用数字来表示b用汉字来表示c用什么字母表示啊?这种就叫做记录规范的位置。


最后一个叫什么数据,容易使数据内容位置。我们还是来看哈相同的这两张表。那么学号95004王晓刚同学,为什么他的专业后在专业信息表中找到,我们说可能有一个专业信息表,本来之前是存在m15的,但是后来我们检查的时候发现专业号我们的习惯性什么123456这样排列嘛,你12345就是一五了,这个肯定不对哈,这样被习惯性录入,所以我们就把它改了,改成零五了。但是呢,由于系统没有并发控制不当或者程序故障,导致没有对学生啊表一这个信息表进行同步修改,所以这就造成了数据前后不一致。这个是如果是这种原因造成的,我们又可以把表一,表二的不一致看成是数据容易溶于,使数据内容不一致导致的。那么接下来我们从应用角度再来看看我们数据质量的问题。第一,相关性,数据的相关性是指数据特定的应用和什么领域有关。那么我们来看一下啊这样两个的一个场景,第一是构造预测模型,是需要采集什么样与模型相关的数据,我们来考虑这样一个模型,预测交通事故的发生率的模型,如果我们忽略了驾驶员的年龄和性别,那么除非这些信息可以从什么其他属性推导出来,那么如果不行,我们就说这个模型的精度可能是有限的,一般在这种情况下,我们需要尽量采取全面相关的一个数据信息,对不对啊,年龄,性别很明显对我们的交通事故发生率是有影响的啊,最明显的是女司机,新手这个狗啊。第二个场景,相同的数据在不同的应用场景相关性也是不一样的,怎么理解,同样,我们来举个例子,我们假设某个公司的大型客户数据库当中,由于时间和统计的原因,顾客地址列表的正确性为80%,其他地址呢,可能由于过时或者不正确哈,我们认为是错误的。那么当市场分析人员来访问公司的数据库的时候,它获取顾客地址列表,发现80/100不错,基于目标市场考虑,他认为很高了,所以他满意度就比较高。但是换一个人当销售经理来访问的时候,他就认为这个弟子的缺失和过失,对顾客的流失是非常大的。一拖二,二拖四啊这样一个销售规律下,所以它对该数据库的满意度他就认为较低。数据库变了吗?没有。所以它这个是一个特定的一个领域和应用啊,它将会对数据的一个反应是不一致的。然后我们再来看一下数据质量的另外一个啊时效性,它是指数据仅在一段时间内对决策具有价值的属性。数据的时效性很大程度上制约了决策的一个客观的一个效果。那么怎么来理解这句话?也就是说,数据的时效性是指有些数据会随着时间而变化的,这些数据收集后就开始老化,如果使用老化后的数据进行数据的分析挖掘,那么它会将产生不同的分析效果,可能会根本就没有效果,对不对?那么数据时效性的相关场景我们分为两类,第一叫做商品推荐,第二叫做城市交通。我们首先来看一下商品推荐。商品推荐哈,大家应该在生活中都遇到过,因为你们要用手机app或电脑电脑的一些网页进行购物,那么当你们购物有过这样的购物的过程以后,你们每次进入这些app的时候,它下面不是都有推荐的一些页面,对吧?也就是说当顾客的购买行为或微博浏览,我们是用数据预处理的啊。这样一句话呢,称为叫什么快照,它只代表有限时间内的一个真实情况,如果数据已过时,则基于它的模型和模式就已经过时。所以我们每次进行商品推荐的时候,需要采集的是当前数据进行分析和推荐,这种情况下我们需要考虑重新采集数据,及时对数据进行更新。也就是说我们每次的商品推荐都是就近原则,对不对?都是根据你呃购买啊离离地当前打开这个app,购买时间比较近的哈,购买过的商品进行往前推送。第二个呢就是典型场景呢,就是我们的城市的智能交通管理,在以前哈,我们没有智能手机和智能汽车的情况下,很多大城市虽然我们说有交管中心,但是它收集信息比较慢,最快也要最后20分钟左右,然后他把这些信息收集以后再发到我们的用户手中的时候,我们通过广播听到实时路况,这个还是实时的嘛?不是,他起码都落后了半个小时。所以这样的信息的价值我们就说很低,或者几乎是没有的。但是现在我们有拥有了智能手机,大部分哈我们都会打开它的什么定位功能,这个时候做地图服务的公司就能够实时地得到人员的流动信息,并且根据流动的速度和所在的位置来区分这个区域到底是人群还是汽车,对吧?然后提供我们实时的一个交通路况信息,给用户带来便利。啊,这叫叫什么?导航对吧?这就是大数据的时效性带来的一个很典型的好处。那么接下来我们来看我们数据质量的最后一个问题,可信性和可解释性,也称为可读性。那么可行性三个方面来看,第一个数据来源的权威性,第二个是规范性,第三个是产生的时间。怎么理解?如果我们正在看一篇啊网上发布的内容,首先我们来看一下它发布机构, ok新浪微博,我认为这个机构还是比较有权威的,所以我认为这篇文章的可信性比较高,那么接下来我们来看文字,这篇微博字数较长,而且叙述也比较详细,而且很清晰,那么又会增加它的可行性。同时微博的发布时间接近十时啊,比如今天是20号,因为我们看到19号发布的,这样又提升了它的数据的一个什么可行性。那么最后一个叫可解释性啊,它称为可读性。什么叫可读性?就是数据是否能够被我们读懂,也就是说数据被人理解的一个难易程度。如果数据具有解释性或包含有注释性的信息,而且数据规范啊,书写规范,则数据的可解释性就比较高。那么相反,你如果用晦涩难懂的语言来进行写的事情,那么它的可解释性就怎么样?比较低啊,这个很好理解,我们这里呢就不再详细的说啊这个问题。那么ok,前面呢就是数据处理的一个背景的所有知识点,那么简单成一句话,就是说我们数据背景就是什么,我们的数据质量存在问题,所以呢我们要对这些资料进行处理。所以我们数据预处理的目的就是提升数据的质量。


好,很显然,我们现在进入第二个章节数据处理的目的的学习,我们再把大数据流程图哈放在这里,我们再强调一下我们数据处理的一个什么重要性。数据处理是数据挖掘中必不可少的关键一步,更是数据挖掘前的一个准备工作啊

背景:数据质量

image-20240324171819986

采集角度

准确性
1
2
3
数据库中的数据的值对应于现实中的值是正确的

造成数据不准确的原因:数据采集设备故障,人为输入,传输过程,命名约定
完整性
1
2
3
指信息具有一个实体描述的所有必需的部分,在传统关系型数据库中,完整性通常与空值(NULL)有关。一般包括记录的缺失和记录属性的缺失。

造成数据不完整的原因:涉及隐私无法获取,输入时认为疏忽,机器故障
一致性
1
2
3
在数据库中,不同地方存储和使用的同一数据应当是等价的,表示数据有相等的值和相同的含义

造成数据不一致的原因:
1
2
3
逻辑不一致:如外键,一个表中的某个外键值在另一个表中找不到
记录规范不一致:如时间输入格式不一致、不同数据库对同一属性的命名规则不一致
数据冗余时数据内容不一致:

image-20240324174250574

image-20240324174636606

应用角度

时效性
1
2
3
指数据仅在一定时间段内对决策具有价值的属性。数据的时效性很大程度上制约了决策的客观效果。

数据时效性的相关场景:商品推荐、城市交通
相关性
1
2
3
数据的相关性是指数据与特定的应用和领域有关。

数据相关性的应用场景:构造预测模型时,需要采集与模型相关的数据、相同的数据在不同的应用场景,相关性也是不一样的

用户角度

可信性
1
2
3
数据来源的权威性
数据的规范性
数据产生的时间
可解释性
1
反应数据是否容易理解

目的:提升数据质量

1
2
重要性
数据预处理是数据挖掘中必不可少的关键一步,更是进行数据挖掘前的准备工作。
1
2
3
4
目的
达到改进数据的质量,提高数据挖掘过程的准确率和效率
保证数据挖掘的正确性和有效性。
通过对数据格式和内容的调整,使得数据更符合挖掘的需要。

数据预处理的流程

image-20240324181034994

1
2
3
4
5
初始数据获取
1数据清理 脏数据
2数据集成 统一格式
3数据变换 统一数据范围
4数据归约 压缩数据
1
不一定流程完全按照这个来,比如3,4可能互换、1234后再1234、1234后再其中某一个或多个

数据清理

1
2
3
脏数据:由于重复录入,并发处理等不规范的操作,导致产生不完整不准确的,无效的数据。

越早处理脏数据:数据清理操作越简单
1
数据清理试图填充空缺的值、识别孤立点、消除噪声,并纠正数据中的不一致性。

image-20240324183026831

缺失值

1
现有数据集中某个或某些属性的值是不完整的
1
2
3
4
5
6
7
缺失值处理方法:
忽略元组
人工填写
使用全局常量替换空缺值
属性的中心度量来填充
使用于给定元组同同一类的所有样本中心度量值
使用最可能的值
1
2
3
元组(记录)
属性(字段)
中心度量(平均值、中位数) 中位数: 平均值:
忽略元组
人工填写
使用全局常量替换空缺值
1
使用特殊符号填写,也不可靠
属性的中心度量来填充
1
2
对称分布 均值:正常分布的2 4 6 8 10
倾斜 中位数:0.1 0.2 0.4 50 80 60
使用于给定元组同一类的所有样本中心度量值

image-20240324184636571

使用最可能的值
1
使用最可能的值:利用回归、贝叶斯计算公式推断最可能的值或者决策树归纳确定

噪声数据

1
2
3
4
5
噪声是被测量变量的随机误差或偏差  错误或者偏离

噪声是毫无意义的数据 但真实世界中是始终存在的

噪声处理的目的:降低对数据分析和结果的影响
1
2
3
孤立点:不符合数据模型的数据 严格来说它不算噪声数据,它是现实中真实存在的准确的,但与正常数据偏差比较大 主要用来做异常值检测

一般也把它归纳到噪声数据的一种,因为它与正常值偏差太大,一般也无意义

image-20240324190005437

1
2
3
4
5
6
7
8
9
10
11
引起噪声数据的原因:
数据收集工具的问题
数据输入错误
数据传输错误
技术限制
命名规则不一致

噪声处理的方法:
分箱法
回归
(离群点分析)聚类
噪声处理的方法
分箱法
1
通过考察数据的近邻值来光滑有序数据值。

image-20240324190658074

回归
1
采用一个函数拟合数据来光滑数据
1
线性回归:找出拟合两个属性的“最佳”直线,帮助平滑数据及除去噪声。

image-20240324191021792

1
多元线性回归:涉及多个属性,拟合到一个多维的面

image-20240324191237869

(离群点分析)聚类
1
啊,我们第一堂课呢,讲了噪声处理的前两种方法,接下来呢,我们再来看看造成处理的第三种方法,叫做聚类法。聚类它可以通过它的方法的话,它的一个原理就是通过聚类算法来检测离群点,从而达到消除噪声的目的。那什么叫做聚类呢?相似或相邻近的数据聚合在一起,形成各个聚类集合,而那些位于聚类集合之外的数据对象,我们视为离群点。也就是说,聚类操作会将类似的值组织成群,或者处落在处集合之外的点,我们就称为离群点。一般情况下,这种离群点呢,肯定都是异常数据,它最终会影响整体数据的一个什么分析和结果。我们对离群点的处理操作简单粗暴,什么删除。然后我们来看这样一个图,左图中对所有的点即进行了聚类分析,形成了c1和c22个数,那么可以看到c也好, c2好,它的点基本上是围绕在啊某一个范围内的,或者说围绕着某个中心周围的话,不会太远,但是呢, oeoro三这三个点明显的是孤立于cacr之外的哈。所以说啊,我们就称oeoro三这三个点啊,就叫做离群点。聚类算法呢,主要有以下几个方法,比如说k均值法,层次聚类方法或基于密度的聚类方法。 K均值呢,一般是把它分成k个平均哈来进行一个计算,哈,层次呢就划分,其实聚类就是划分,所以它不管是哪一种剧的方法,它只是说通过不同的一种嗯划分的途径来进行划分而已。如果大家有兴趣对算法进行研究的,可以自己下来进行研究啊,之前我们也讲过,我们不研究算法,自己研究开头的这个工具的使用方法。 Ok,那么到此呢?数据清理章节我们自此便完全部介绍完毕。我们来看一下,总结一下我们这一章节主要学习了些什么?我们在这一章节主要学习了什么?数据清理,它就是做做一个什么清楚大数据啊就是说一些比较明显的啊的一些无效的数据,我们把它清除掉,它包括两个大的方面,一个是确实值得处理,一个是噪声数据的处理。啊也就是说虽然说我们清点是脏数据,但是我们这张数据除了pass掉以外, pass掉的最简单的哈我们就不说了,我们要做的呢就是对存在的值不能够简单粗暴的删除掉的,指它的一些方法。然后我们来看这样一个流程图,第一个数据心理分成两个,第一个是缺失值处理,包括一,二,三,四,五,六种方式,第一个忽略元素,第二个人工填写,第三个使用全局常量,第四个使用属性的中心度量,第五个使用同类样本属性的中心度量,最后一个是使用最可能的值。啊,这也涉及一些算法来计算。最后呃第二个是噪声处理,我们讲了三个大的方面,一个是分析法,一个是回归法,一个是聚类法。那么对于这些方法我们要求是了解,然后掌握的有什么是掌握的?三个啊。第一个是使用属性的中心度量,第二个使用同类样本属性的中心度量,第三个是分析法,这三种方法简单,而且肯定你们的是好算的,所以这个作为考试点啊,大家记住,我们数据系列的考点有三个,第一个要学会计算中心度量值,第二个要会计算同类样本属性的中心度量值,第三个要会用分项法进行我们的噪声平滑的计算。
1
2
3
可以通过聚类算法来检测离群点,消除噪声

相似或相邻近的数据聚合在一起形成各个聚类集合,而那些位于聚类集合之外的数据对象,被视为离群点

image-20240325164027567

1
2
3
4
5
聚类算法
K均值方法
层次聚类方法
基于密度聚类方法
...

数据集成

image-20240325165305566

1
2
3
4
5
6
7
8
9
10
11
接下来呢,我们要讲解的是数据集成部分的内容。首先呢,我们来看一下什么叫做数据集成,它的定义是将互相关联的分布式异构数据源集成到一起,使用户能够以透明的方式访问这些数据源。那么集成能够维护数据源整体上的数据一致性,提高我们信息共享利用的效率。这就是我们集成的含义啊。我们这个定义当中,什么叫继承?

那么什么叫透明的方式呢?它是指用户无需关心如何来实现对异构数据源数据的访问,只关心以何种方式来访问何种数据。也就是说我们看左边这个图,我们的数据集成系统里面做了很多的处理,他怎么处理呢?我们不管,我们只管我们发送一个请求,给我一个结果就ok了,对吧?

那么为什么要进行数据集成呢?啊那么我们看右边这个图,一般信息系统通常都具有两个特性,一个叫做什么?阶段性蓝圈圈里面的,然后呢分布性黄圈圈里面的,这两种特性,会使我们所需要的数据被分散地存储在各自的数据库的什么系统当中。那么这就导致我们红色的信息孤岛的存在。


什么叫信息孤岛啊?下面有说明,它是指不同软件间,尤其是不同部门间的一个数据,信息不能共享,造成系统中存在大量冗余数据,垃圾数据以及无法保证数据的一致性,这就是我们的信息孤岛。

那么数据集成的目的就是要打破孤岛和信息孤岛的一个壁垒,最终在获取全面数据的基础上完成我们的数据分析,这就是我们的数据集成。说白了,它就是把异构数据集中在一起,统一成我们能够用户方便访问的数据源。

1
2
3
4
5
定义:将互相关联的分布式异构数据源集成到一起,使用户能够以透明的方式访问这些数据源。

那么集成能够维护数据源整体上的数据一致性和减少冗余,提高我们信息共享利用的效率

那么什么叫透明的方式呢?它是指用户无需关心如何来实现对异构数据源数据的访问,只关心以何种方式来访问何种数据。
1
那么数据集成的方法呢,一般有以下三种,第一个叫做联邦数据库,第二个叫做中间件集成啊,最后一个叫做数据复制。

image-20240325170046416

联邦数据库

1
各数据源的数据视图集成为全局模式
1
那么联邦数据库呢,是最早期啊就采用的一种模式集成的方式,它的思想是什么呢?它是在构建集成系统的时候,把各个数据源的数据视图,它就集成为一个全局模式,也就是说我在构想的初期就把它统一成了全局模式。那么这个时候用户就能够按照全球模式透明地访问各种数据源的数据。那么在我们数据比较小的情况下是可以的,对吧?因为我们早期的数据比较小,然后呢各个地方呢通信也没这么发达啊,各各自管各自的,所以这种方法是可行的。但是现在我们数据量太大了,涉及的面也比较广,所以这个方法已经不太适用了。

中间件集成

image-20240325170419329

1
通过统一的全局数据模型来访问异构的数据源
1
那我们来看第二种方法,中间件集成方法,它是通过使用统一的全局数据模型来访问易购的数据源,它的结构图哈在我们的右边所示。它中间件呢,它是位于一个数据系统和应用程序之间啊。我们可以从中可以看到两个红色的方框中间,这就叫做一个中间件,它向下是协调各个数据源系统,然后向上呢,又为访问集成数据应用提供统一的数据模式和数据访问的一个通用接口。也就是说我要使用的时候,它这个地方是使用的时候啊,通过一个中间件啊去对其他的数据进行封装统一,然后再给用户啊进行请求结果。

数据仓库

1
将各个数据源的数据复制到同一处,即数据仓库
1
2
3
那么在实际应用中呢,我们现在用的最常见的是第三种,叫做数据仓库。因为第二个呢它有一个问题,就是你对这些数据进行了处理以后,那么可能会对原始数据就构成一定的破坏,然后如果说我们处理出了问题,又导致了我们原始数据的一个丢失的话,那么最后的结果是得不偿失的,对吧?

所以说我们现在哈发明了第三种方法,叫做数据仓库,也称数据复制,它呢就是将数据源的数据复制到同一处,用户则像访问普通数据库一样直接访问。我把它复制一份备份了,那对它有影响吗? Ok,没有。所以在我们现在的实际应用中,数据仓库是数据集成最常用的方法,那么接下来呢,我们将介绍使用数据仓库的方法来集成数据时所需要处理的啊一个问题
实体识别
1
匹配多个信息源在现实世界中的等价实体

image-20240325171028545

1
2
3
4
5
那么分成啊,它包括什么?包括实体三个三类,实体识别,冗余与相关分析,以及数据冲突和检测。首先我们来看一下第一个实体识别,实体识别匹配多个信息源在现实世界中的等价实体,我们称为实体识别。

那么它所解决的问题是什么?如何匹配多个信息源在现实世界中的实体事物对不对?

那么首先对于哈我们这个实体识别呢,它主要呢分成两个大的方向,需要解决的,第一个叫做同意不同名,第二个叫做同名不同意。
同意不同名
1
什么叫同意不同名?我们来看下面这个图id number,比如说一个数据库当中的customer id和另一个数据库当中的cr,本来它是指同一个个体啊,都是某一个某个数据来代表好某一条信息的一个编号码啊,唯一的标识,但是呢,它偏偏用不同的哈形式来进行表示,也就是说它名字不同,意义相同的,对吧,我们就称为同意不同名
同名不同意
1
2
3
第二个同名不同意呢?比如说discount有什么打折打折,但是它对于它是对商品某些商品进行打折呢,还是说我们满额打折呢?对不对?所以说我们同名的情况下,我们要了解它在不同的app端它表示的含义是什么,这样才会啊对我们的啊卖家不会造成一定的损失,对吧?通常哈这两种情况。

所以说我们说通常这两种情况,就需要根据数据库或者数据库当中的元数据来区分这些实体的真正含义。啊什么叫原数据,我们后面再利用开头的时候再来进行讲解。
冗余与相关分析
1
属性重复,属性相关冗余,元组重复
1
接下来哈,我们来看数据集成的第二个重要问题,就叫做荣誉啊,荣誉问题。什么叫冗余?属性重复?属性相关冗余或者元组重复,我们都认为它是一种冗余。
属性重复

image-20240325171615498

1
我们首先来看一下属性重复,属性重复它包括同一属性在一个表中出现多次,只是命名不一致而已,比如说我们的分和性别,对吧?它都是指我们的性别,这是我们的属性重复。
属性相关冗余

image-20240325171719043

1
第二个叫属性相关重复,属性相关重复呢是指某一个属性可以有另外一个属性导出,比如说我们的年收入啊,可以用月收入乘以12来进行导出,那么这个时候呢,我们就可以减少啊我们的一个属性值,或者说哈,我们可以根据相关系数啊,或者相方差能计算得到的话都可以,我们都称为相关冗余。
元组重复
1
那么第三个叫元组重复,那么这个元组重复就很好理解了,就0405岁的客户编号表达什么?明智性别月薪收入都一样,所有信息都一样。那么它是不是同一个人?对吧?他就是同一个人。
数据冲突和检测
1
2
对现实世界的同一实体,来自不同数据源的属性定义不同。
原因:表示方法,度量单位、编码或比例的差异

image-20240325171945479

1
好, ok,那么接下来我们来看最后一个数据仓库啊数据冲突的检测与处理。还有一个原因是什么?对现实世界同一实体来自不同数据源的属性定义不同。那么这种方法一般是什么?它的度量值不一样,或者编码比例的差异导致的。那我们我们来我们来看下面这个图的例子,某一表示长度的属性,在一个数据库当中有什么厘米,那一个数据库用什么分离,然后在一个数据库是什么?因此其实它都是表示长度,只是它的单位怎么样不一致,然后是呃同理,我们表示重量的数据啊,当然一个是公斤啊。另外因外国外的棒啊。那么当检测到这类数据只通透的以后,我们可以根据需要修改某一数据库的属性值,以使不同的数据库中同一实体的属性值保持一致。

数据变换

1
2
目的:
将数据转换或统一成易于进行数据挖掘的数据存储形式,使得挖掘过程可能更有效。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
接下来呢,我们来介绍第三部分的内容数据变化。如果原始数据的形式不适合信息处理算法的需求,这个时候我们就要进行什么数据变换。数据变换的目的啊。所以说,数据变换的目的就是将数据转换或统一成易于进行数据挖掘的存储形式,是挖掘过程可能更有效,这就是我们数据变换的一个主要的目的。

那么数据变换的方法策略呢?有很多种啊,比如说我们的光滑属性,构造聚集,规范化,理想化,由标称数据产生概念分层等等等等。

那么首先光滑就是指去掉数据中的噪音,这个在数据心理中已经讲过了哈。

那么属性构造是给给定的属性构造新的属性,并添加到数性集中,帮助数据分析和挖掘

聚集呢是指对数据进行汇总和聚集

然后离规范化呢,是指将属性数据按比例缩放,使之落入一个小的特定区间。

离散化呢适用属性数字属性用区间或概率标签进行替换。

最后一个呢,是有标准数据产生,代理分成。

在这里我们主要是着重讲规范化这样一个特点的方法,因为光滑也好,属性构造也好,聚集也好,离散化和最后一个标签呢,我们将我们其实是分散的另外三种啊三个流程当中进行了讲解,比如说光伏啊,聚集啊,我们都其实已经讲到过了,啊理上画其实我们也可以看成是聚类的一种和聚集。
1
2
3
4
5
6
7
方法策略:
光滑:去掉数据中的噪音。
属性构造:由给定的属性构造新的属性并添加到属性集中,帮助数据分析和挖掘
聚集:对数据进行汇总或聚集
规范化:将属性数据按比例缩放,使之落入一个小的特定区间
离散化:数值属性用区间标签或概念标签替换。
由标称数据产生概念分层:属性,如street,可以泛化到较高的概念层,如city或country

光滑

属性构造

聚集

规范化

1
2
3
所以这个地方我们仅仅讲规范化,什么叫规范化?规范化就是将数据按比例进行缩放,使之落入一个特定的区域,我们就称为规范化。比如说我们将企业员工的工资,他是在2000到20万之间,那一个企业从低层到高层,我们把它缩放到零到一之间,这样小的区域就称为规范化。

那么常用的规范化算法呢?有如下三个,第一个叫做最小-最大规范化,第二个叫做零-均值规范化,第三个叫做小数定标规范化。那么接下来我们分别对这三种方法哈进行一个学习。首先我们来看一下数据规范化的第一个最小最大规范化,最小最大规范化。什么叫最小最大规范化?我们只关注结果,所以我们直接就来看它的一个方程,我们不关心它是怎么得来的啊。假定mba和ma分别属于属性a的最小和最大值,那么通过下面公式将a的值一设到我们一个c的最小最大值空间当中,这个时候我们会把以前的值进行映射,那么v撇等于什么?就等于我们右边这个公式啊v减嗯,以前的最小值除以区间差乘以新的哈区间差,加上我们新的这个最小的啊值,这个时候呢,就得到了我就把我们的老的一个值映射到了新的,曲解,得
最小-最大规范化
1
将数据按比例缩放至一个小的特定区间:

image-20240325180612698

image-20240325180816051

零-均值(z-score)规范化
1
2
将属性A的值根据其平均值和标准差进行规范化;
常用于属性最大值与最小值未知,或使用最小最大规范化方法会出现异常数据的情况。

image-20240325180941681

image-20240325181011726

小数定标规范化
1
小数定标规范化:通过移动属性A的小数点位置进行规范化小数点的移动依赖于A的最大绝对值

image-20240325181204018

image-20240325181327608

离散化

由标称数据产生概念分层

数据归约

1
2
为什么要数据归约:
在现实场景中,数据集是很庞大的,数据是海量的,在整个数据集上进行复杂的数据分析和挖据需要花费很长的时间。
1
2
数据归约的目的:
用于帮助从原有庞大数据集中获得一个精简的数据集合,并使这一精简数据集保持原有数据集的完整性,这样在精简数据集上进行数据挖掘显然效率更高,并且挖掘出来的结果与使用原有数据集所获得结果是基本相同。
1
2
标准:
用于规约的时间不应当超过或抵消在规约后的数据上挖掘节省的时间。规约得到的数据比原数据小得多,但可以产生相同或几乎相同的分析结果

维归约

主成分分析

image-20240325182209040

1
主成分分析也称主分量分析,旨在利用降维的思想,把多指标转化为少数几个综合指标(即主成分),其中每个主成分都能够反映原始变量的大部分信息,且所含信息互不重复。
1
----这种方法在引进多方面变量的同时将复杂因素归结为几个主成分,使问题简单化,同时得到的结果更加科学有效的数据信息。
属性子集选择
1
2
3
用于检测并删除不相关、弱相关或冗余的属性。

目标是找出最小属性集,使得数据类的概率分布尽可能地接近使用所有属性得到的原分布

image-20240325182427308

数量归约

1
用替代的、较小的数据表示形式替换原数据,来减少数据量
有参方法
1
回归和对数的线性模型
1
通常使用一个参数模型来评估数据,该方法只需要存储参数,而不是实际数据,能大大减少数据量,但只对数直型数据有效。

image-20240325182747848

无参方法
1
直方图、聚类、抽样和数据立方体聚集
直方图
1
根据属性的数据分布将其分成若干不相交的区间,每个区间的高度与其出现的频率成正比

image-20240325182945966

聚类
1
原数据集划分成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异,一般用空间距离来度量相似度。

image-20240325183121030

抽样
1
2
3
4
5
6
7
8
9
允许用数据的较小随机样本(子集)表示大的数据集

不放回简单随机取样(Simple Random Sampling Without Replacement,SRSWOR)

放回简单随机取样(Simple Random Sampling With Replacement.SRSWR)

聚类取样:先聚类,后取样

分层取样:先分层,后取样
1
不放回简单随机取样

image-20240325183350461

1
放回简单随机取样

image-20240325183556220

1
聚类取样
1
首先将大数据集D划分为M个互不相交的聚类,然后再从M个类中的数据对象分别进行随机抽取,可最终获得聚类采样的数据子集。

image-20240325183914510

1
分层取样
1
分层取样:首先将大数据集D划分为互不相交的层,然后对每一层简单随机选样得到D的分层选样。

image-20240325184259585

数据立方体聚集
1
2
3
4
数据立方体是数据的多维建模和表示,由维度、维度成员和度量值组成。
维度:观察数据的角度
维度成员:维的取值
度量值:实际意义的数值

image-20240325184521286

1
2
数据立方体聚集定义
将n维数据立方体聚集成n-1维的数据立方体。

数据压缩

1
利用数据编码或数据转换将原来的数据集合压缩为一个较小规模的数据集合
无损压缩
1
2
无损压缩:可以不丢失任何信息地还原压缩数据;如:字符串压缩,压缩格式:
Zip或RAR
有损压缩
1
有损压缩:只能重新构造原数据的近似表示;如:音频/视频压缩。

image-20240325184921166

小结

image-20240325185003712

image-20240325185201735