python预处理是先标准化数据还是先处理分类特征_数据预处理-数据集成与数据变换...

数据预处理是机器学习的关键步骤,包括数据清理(缺失值处理、噪声消除、离群点检测)、数据集成(解决实体识别、数据不一致问题)、数据变换(如归一化、数据归约)等。本文详细介绍了这些方法,并讨论了在处理连续和分类特征时的注意事项,如使用不同类型的标准化方法。
摘要由CSDN通过智能技术生成

概况起来,常遇到的数据存在噪声、冗余、关联性、不完整性等。本章将考虑这些问题,在使用算法学习之前,首先需要对数据进行分析,根据数据的不同情况,采用不同的方法对数据进行预处理,数据预处理常见的方法如下:

1. 数据清理:主要是指将数据中缺失的值补充完整、消除噪声数据、识别或删除离群点并解决不一致性。主要是达到如下目标:将数据格式标准化,异常数据清除,错误纠正,重复数据的清除。

2. 数据集成:主要是将多个数据源中的数据进行整合并统一存储。

3. 数据变换:主要是指通过平滑聚集,数据概化,规范化等方式将数据转换成适用于数据挖掘的形式。

4. 数据归约:数据挖掘时往往数据量非常大,因此在少量数据上进行挖掘分析就需要很长的时间,数据归约技术主要是指对数据集进行归约或者简化,不仅保持原数据的完整性,并且数据归约后的结果与归约前结果相同或几乎相同。

这些数据处理技术在数据挖掘之前使用,然后才能输入到机器学习算法中进行学习。这样大大提高了数据挖掘模式的质量,降低实际挖掘所需要的时间

0x00数据集成

我们日常使用的数据来源于各种渠道,有的是连续的数据,有的是离散数据、有的是模糊数据,有的是定性数据,有的是定量数据。数据集成就是将多文件或者多数据库中的异构数据进行合并,然后存放在一个统一的数据库中进行存储。在进行数据的集成过程中,一般需要考虑以下问题:

实体识别

主要指数据源来源不同,其中多的概念定义不一样

同名异意:数据源A的某个数据特征的名称和数据源B的某个数据特征是一样的但是表示的内容不一样。

异名同义:数据源A的某个特征的名称和数据源B的某个特征名称不一样,但是表达的内容不一样。

单位不统一:不同地数据源记录的单位不一样,比如统计身高、一个数据源以m为单位,一个使用英尺

冗余属性

指数据中存在冗余,一般分为一下两种

同一属性出现多次,比如两个数据源都记录每天的最高温度和最低温度,当数据集成时,就出现了两次。

同一属性命名不一致而导致数据重复

数据不一致

编码使用的不一致问题和数据表示的不一致问题,比如旧的***号15位,而新的时18位

0x01数据变换

数据变换是指将数据转换或统一成适合于机器学习的形式。就像人类学习一样,需要将采集的外部数据转换成我们可以接收的形式。

由于实际过程中采集的各种数据,形式多种多样,格式也不一致,这些都需要采用一定的数据预处理,使得他们符合机器学习的算法使用。

数据变换常用方法如下:

使用简单的数学函数对数据进行变换

对采集的原始数据使用各种简单的数学函数进行转换,常见的函数包括平方、开方、取对数、差分运算等(压缩变大或者压缩变小)。

归一化

特征归一化也叫做数据无量纲化,主要包括:总和标准化、标准差标准化、极大值标准化、极差标准化。这里需要说明的是,基于树的方法是不需要进行特征归一化的,例如GBDT,bagging、boosting等等,而基于参数的模型或基于距离的模型,则都需要进行特征归一化。

总和标准化

总和标准化处理后的数据介于(0,1)之间,并且它们的和为1。总和标准化的步骤和公式也非常简单:分别求出各聚类要素所定义的数据的总和,以各要素的数据除以该要素的数据总和,即:

1372408762d3ef1436c57a568ebe5abc.png 经过总和标准化处理后所得的新数据满足:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值