大数据预处理综述

数据预处理背景

大数据项目开发流程

数据质量

  • 准确性:数据是正确的,数据存储在数据库中的值对应于真实世界的值。

    数据不准确的原因

    1. 数据收集设备故障。
    2. 数据输入错误。
    3. 数据传输过程出错。
    4. 命名约定、数据输入、输入字段格式不一致。
  • 相关性:指数据与特定的应用和领域有关。

    相关性应用场景

    1. 构造预测模型时,需要采集与模型相关的数据。
    2. 相同的数据再不同的应用场景,相关性也是不一样的。
  • 完整性:指信息具有一个实体描述的所有必需的部分,在传统关系型数据库中,完整性通常与空值(NULL)有关。一般包括记录的缺失和记录属性的缺失。

    数据不完整原因

    1. 涉及隐私,无法获取相关属性。
    2. 数据输入时由于人为疏忽。
    3. 数据输入时由于机器故障。
  • 时效性:指数据仅在一定时间段内对决策具有价值的属性。数据的时效性很大程度上制约了决策的客观效果。

    相关场景:

    1. 城市交通。
    2. 商品推荐。
  • 一致性:在数据库中,不同地方存储和使用的同一数据应当是等价的,表示数据有相等的值和相同的含义。

    常见不一致情况

    1. 逻辑不一致。
    2. 记录规范不一致:同一个数据,在不同的地方显示存储不一致,比如男女存储。
  • 可信性可解释性

    可行性

    1. 数据来源的权威性。
    2. 数据的规范性。
    3. 数据产生的时间。

    可解释性

    1. 反应数据是否容易理解。

数据预处理目的

数据预处理的目的就是提升数据质量。

重要性:数据预处理是数据挖掘中必不可少的关键一步,更是进行数据挖掘前的准备工作。

目的

  • 达到改进数据的质量,提高数据挖掘过程的准确率和效率。
  • 保证数据挖掘的正确性和有效性。
  • 通过对数据格式和内容的调整,使得数据更符合挖掘的需要。

数据预处理的流程

1. 数据清理

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

1.1 缺失值处理

现有数据集中某个或某些属性的值是不完整的。

缺失值处理方法
  1. 忽略元组
  2. 人工填写
  3. 使用全局常量替换空缺值
  4. 属性的中心度量来填充
  5. 使用于给定元组同一类的所有样本中心度量值
  6. 使用最可能的值

1.2 噪声处理

不准确的值或明显错误的值。通过噪声处理降低对数据分析和结果的分析。

噪声数据产生
  1. 数据收集工具的问题。
  2. 数据输入错误。
  3. 数据传输错误。
  4. 技术的限制。
  5. 命名规则不一致。
噪声处理的方法:
  1. 分箱法:通过考察数据的近邻值来光滑有序数据值。

    举例:8、24、15、41、6、10、18、67、25等9个数。
    排序:6、8、10、15、18、24、25、41、67。
    分箱:

    ​ 箱1: 6、8、10
    ​ 箱2: 15、18、24
    ​ 箱3: 25、41、67
    分别用三种不同的分箱法求出平滑存储数据的值:
    平均值:8 箱1: 8,8,8。
    中值: 18 箱2: 18,18,18 。
    边界值:6、67 箱3:25,25,67,箱中的最大和最小值被视为箱边界。

  2. 回归

  3. 聚类

2. 数据集成

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

2.1 数据集成方法

  1. 联邦数据库:各数据源的数据视图,集成为全局模式。
  2. 中间件集成:通过统一的全局数据模型,来访问异构的数据源。
  3. 数据复制:将各个数据源的数据复制,到同一处,即数据仓库。

2.2 集成过程要处理的问题

  1. 实体识别:匹配多个信息源在现实世界中的等价实体。
  2. 冗余与相关分析:属性重复,属性相关冗余,元组重复。
  3. 数据冲突和检测: 对现实世界的同一实体,来自不同数据源的属性定义不同。原因:表示方法,度量单位、编码或比例的差异

3. 数据变换

3.1 转换目的

将数据转换或统一成易于进行数据挖掘的数据存储形式,使得挖掘过程可能更有效。

3.2 方法策略

  1. 光滑:去掉数据中的噪音。
  2. 属性构造:由给定的属性构造新的属性并添加到属性集中,帮助数据分析和挖掘。
  3. 聚集:对数据进行汇总或聚集
  4. 规范化:将属性数据按比例缩放,使之落入一个小的特定区间
  5. 离散化:数值属性用区间标签或概念标签替换。
  6. 由标称数据产生概念分层:属性,如street,可以泛化到较高的概念层,如city或country

4 数据归约

由于在现实场景中,数据集是很庞大的,数据是海量的,在整个数据集上进行复杂的数据分析和挖掘需要花费很长的时间。

为了帮助从原有庞大数据集中获得一个精简的数据集合,并使这一精简数据集保持原有数据集的完整性,这样在精简数据集上进行数据挖掘显然效率更高,并且挖掘出来的结果与使用原有数据集所获得结果是基本相同。

4.1 数据归约分类

  1. 维归约:用于检测并删除不相关、弱相关或冗余的属性。
  2. 数量归约:用替代的、较小的数据表示形式替换原数据,来减少数据量。
  3. 数据压缩:用数据编码或数据转换将原来的数据集合压缩为一个较小规模的数据集合。
原文地址:https://www.cnblogs.com/easy1996/p/12714312.html