数据挖掘导论学习总结——第二章

本文详细介绍了数据挖掘中的数据预处理阶段,包括数据清洗(如遗漏数据处理、噪声数据处理、不一致数据处理)、数据集成、数据转换(如规格化、属性构造)以及数据消减(如数据聚合、维数消减、数据压缩)。这些步骤对于提高数据挖掘的准确性和效率至关重要,通过消除噪声、解决不一致性和冗余,以及进行数据转换和规格化,可以为后续的数据挖掘任务打下坚实的基础。
摘要由CSDN通过智能技术生成

数据预处理

由于数据库系统所获数据量的迅速膨胀,从而导致了现实世界数据库中通常包含许多含有噪声、不完整、甚至是不一致的数据。数据预处理主要包括数据清洗、数据集成、数据转换和数据消减等。

所谓噪声数据是指数据中存在着错误、或异常的数据。不完整数据是指感兴趣的属性没有值。不一致数据是指数据内涵出现不一致的情况。而数据清洗是消除数据中所存在的噪声以及纠正其不一致的错误;数据集成是指将来自多个数据源的数据合并到一起构成一个完整的数据集合;数据转换是指将一种格式的数据转换成另一种格式的数据;数据消减是指通过删除冗余特征或聚类消除多余的数据。

数据清洗

数据清洗通常包括:填补遗漏的数据值、平滑有噪声数据、识别或除去异常值、解决不一致问题等。有问题的数据将会舞蹈数据挖掘的搜索过程。尽管大多数数据挖掘过程均包含有对不完全或噪声数据的处理,但它们并不鲁棒且常常将处理的重点放在如何避免所挖掘出的模式对数据过拟合的描述上,因此使用一些数据清洗对挖掘的数据进行预处理十分必要。

- 遗漏数据处理

假设在分析商场销售数据时,发现多个记录中的属性值为空,例如顾客的收入属性,可采用以下方法:

  1. 忽略该条记录: 将该记录排除在数据挖掘记录之外,尤其当类别属性的值没有而又要进行分类数据挖掘时。

  2. 利用缺省值填补遗漏值:对一个属性的所有遗漏值均利用一个事先确定好的值来填补

  3. 利用同类别均值填补遗漏值:尤其在分类挖掘时使用。例如,若要对商场顾客按信用风险进行分类挖掘时,可以用在同一信用风险类别下的income属性的平均值,来填补所有在同一信用风险类别下属性income的遗漏值。

  4. 利用最可能的值进行填补:可以利用回归分析,贝叶斯计算公式或决策树推断出该条记录特定属性的最大可能的取值。例如,可以利用数据集中其他顾客的属性值,构造一个决策树来预测属性income的遗漏值。

最后一种方法是较常用的方法,因为它最大程度利用了当前数据所包含的信息来帮助预测所遗漏的数据。

- 噪声数据处理

噪声是指被测变量。一个随机错误和变化,常用的有Bin方法、聚类方法、人机结合检查方法、回归方法等。

  1. Bin方法:通过利用相应被平滑数据点的周围点,对一组排序数据进行平滑,排序后数据分配到若干桶中,可以用均值进行平滑,也可用bin的边界值替换bin中所有值。一般来说,bin的宽度越宽,其平滑效果越明显。此外,bin方法也可用于属性的离散化处理。bin方法也是数据消减方法,可以消减一个属性中不同取值。

  2. 聚类方法:聚类可帮助发现异常数据。相似或相邻近的数据聚合在一起会形成各个聚类集合,而那些位于这些聚类集合之外的数据对象,自然被认为是异常数据。

  3. 人机结合检查方法:对所识别出的异常模式可输出到一个列表中,然后由人对这一列表中的各个异常模型进行检查,并最终确认无用的模式。

  4. 回归方法:可以利用你和函数对数据进行平滑,例如线性回归方法,包括多变量回归方法。利用回归分析方法所获得的拟合函数,能够帮助平滑数据及除去其中的噪声。

- 不一致数据处理

现实世界的数据库通常会出现数据记录内容不一致等情况,其中一些数据不一致可以利用它们与外部的关联手工加以解决,例如输入发生的数据录入错误可以与原稿进行对比来加以纠正。

由于同一属性在不同数据库中取名不规范,常常使得在进行数据集成时,导致不一致的情况发生。

数据集成

数据集成是将来自多个数据源的数据合并到一起。由于描述同一个概念的属性在不同数据库中取不同的名字,在进行数据集成时常常会引起数据的不一致或冗余。大量的数据冗余不仅会降低挖掘速度,而且会误导挖掘进程。因此除了进行数据清洗之外,在数据集成中还需要注意消除数据的冗余。

首先考虑模式集成问题,即如何使来自多个数据源的现实世界的实体相互匹配,涉及到实体识别问题(entity identification)。例如如何确定一个数据库中的custom_id与另外一个数据库中的cust_number是同一实体。数据库与数据仓库通常包含元数据,即关于数据的数据,可以避免在模式集成时发生错误

其次需要考虑冗余问题。若一个属性可以从其他属性中推导出来,那这个属性就是冗余属性,例如顾客数据表中的平均月收入。利用相关分析可以帮助发现一些数据冗余情况,例如计算相关系数。除了检查属性是否冗余之外,还需要检查记录行的冗余。

最后是数据值冲突检测与消除。来自不同数据源的属性值或许不同,例如比例尺度不同,或编码的差异等等。

数据转换

数据转换主要是对数据进行规格化操作。尤其是使用基于对象距离的挖掘算法时,如神经网络,KNN等,必须对进行数据规格化。也就是将其压缩至特定的范围之内,例如0-1。
1. 平滑处理:除去除去b据中的噪声,bin方法、聚类方法和回归方法等。
2. 合计处理:对数据进行总结或合计操作。例如每天销售额可以进行合计操作获得每月或每年销售总额,这一操作常用语构造数据立方或对数据进行多细度分析
3. 泛化处理:用更加抽象的概念来取代低层次或数据层数据对象。例如年龄属性可以映射到年轻、中年和老年,街道属性可以泛化到城市、国家等
4. 规格化:将有关属性数据按比例投射到特定小范围之中。常用于神经网络、基于距离计算的knn和聚类挖掘的数据预处理。不仅能提高有助于确保学习结果的正确性,而且也会帮助提高学习的速度。规格化方法可以帮助消除因属性取值范围不同而影响挖掘结果的公正性。
5. 属性构造:根据已有属性构造新的属性,帮助数据挖掘过程。

平滑是一种数据清洗方法,泛化和合计也可以作为数据消减的方法。因此这里主要介绍规格化方法:

  • 最大最小规格化方法:线性映射
  • 零均值规格化:类似于标准正态函数
  • 十基数变换规格化:移动属性A值的小数位置

数据消减

数据消减的目的是缩小所挖掘数据的规模,但却不会影响最终的挖掘结果,包括

  • 数据聚合,例如构造数据立方(数据仓库操作)
  • 消减维数,例如通过相关分析消除多余属性。主要用于检测和消除无关、弱相关、冗余的属性或维度
  • 数据压缩,例如利用编码方法,最小编码长度或小波
  • 数据块消减,例如利用聚类或参数模型代替原有数据
  • 基于概念数的泛化:利用取值范围或更高层次概念来替换初始数据

但需要注意,数据消减所花费的时间不应超过由于数据消减而节约的数据挖掘时间。

  1. 数据立方合计:例如对三年销售额的合计处理
  2. 维数消减:通过消除多余和无关的属性而有效消减数据集的规模,通常使用属性子集选择方法,即寻找出最小的属性子集并确保新数据子集的概率分布尽可能接近原来数据集的概率分布,利用筛选后的属性集进行数据挖掘。从包含d个属性的集合中寻找较好的属性子集的过程是一个最优穷尽搜索的过程。因此一般利用启发知识来帮助有效缩小搜索空间。这类启发式搜索通常都是基于可能获得全局最优的局部最优来知道并帮助获得相应的属性子集,例如用于构造决策树的信息增益方法。常用的方法有:

    逐步添加方法:从空属性集开始,每次从原来属性集合中选择一个当前最优的属性添加到属性子集中,直到无法选择出最优属性或满足一定阈值为止
    逐步消减方法:从一个全属性集开始,每次从当前属性自己中选择最差的属性并删除
    消减与添加结合:将逐步添加方法与逐步消减方法结合在一起,每次从当前属性子集中选择最差的属性并删除,同时选择当前最优的属性并添加
    决策树归纳方法:通常用于分类的决策树算法,也可用于构造属性子集。利用决策树的归纳方法对初始数据进行分类归纳学习,获得初始决策树。所有没有出现在决策树上的属性均认为是无关属性,将其删除。
    通常可以利用class label来帮助进行属性的选择,使他们能够更加适合概念描述和分类挖掘。但由于在冗余属性与相关属性之间没有绝对界限,因此利用无监督学习方法进行属性选择是一个较新的研究领域。

  3. 数据压缩:利用数据编码或数据转换将原来的数据集合压缩为一个较小规模的数据集合。若仅根据压缩后的数据集就可以恢复原来的数据集,那么认为这一压缩是无损的,否则称为有损的。数据挖掘领域常用的两种方法,小波转换和主成分分析均是有损的。

    小波分析:离散小波变换是一种线性信号处理技术,可以保留数据主要特征情况下除去数据中的噪音。给定一组小波相关系数,利用离散小波变换的逆运算还可以近似恢复原来的数据。离散小波变换与离散傅里叶变换相近,但前者有更好地有损压缩性能,即恢复后的数据更接近原来的数据。

    1. L为输入数据向量的长度,必须为2的幂,必要时需用0补齐数据向量。
    2. 每次转换时调用两个函数,第一个负责进行初步的数据平滑,第二个负责完成一个带权差值计算以获得数据的主要特征
    3. 将数据向量一分为二,分别应用2中的两个函数比较两部分的数据。这两部分数据分别代表输入数据的低频部分和高频部分
    4. 对所输入的数据向量循环使用3,直到所有划分的子数据向量的长度均为2
    5. 取出3,4步骤处理的结果,即为小波相关系数。

    主成分分析:假设需要压缩的数据有N个数据行,共有k个维度。PCA从k个维度中寻找出c个共轭向量,c远小于N,从而实现对初始数据进行有效地数据压缩。

    1. 首先对输入数据进行规格化,确保各属性的数据值落入相同的区间。
    2. 根据已规格化的数据计算c个共轭向量,即为主成分方向。所输入的数据均可以表示为这c个共轭向量的线性组合。
    3. 对c个共轭向量按照其重要性递减排序。
    4. 根据所给定的阈值,消去重要性较低的共轭向量。利用最主成分方向也可以较好近似恢复原来的数据。

    PCA计算量不大且可以用于取值有序或无序的属性,同时也能处理稀疏或异常数据。还可将多于两维的数据通过处理降为两维数据。与离散小波变换相比,PCA能较好地处理稀疏数据,而离散小波变换则更适合对高维数据进行处理变换。

数据块消减

数据块消减主要包含参数与非参数两种基本方法。参数方法是指利用一个模型来计算获得原来的数据,例如线性回归模型可以根据一组变量预测计算另一个变量。而非参数模型是利用直方图、聚类或取样而获得消减后的数据集。

  • 回归与线性对数模型
    线性回归是用一条直线模型对数据进行拟合,得到截距和斜率,可以通过最小二乘法获得。多变量回归则是利用多个自变量的线性函数拟合因变量Y的输出。对数线性模型是拟合多维离散概率的分布。该方法能够根据构成数据立方的较小数据块,对其一组属性的基本
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值