【数据预处理】特征处理流程 标准化|正则化

本文介绍数据预处理的重要步骤,包括缺失值处理、特征编码、数据标准化等,旨在提高机器学习模型的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 首先要明确有多少特征,哪些是连续的,哪些是类别的。
  2. 检查有没有缺失值,对确实的特征选择恰当方式进行弥补,使数据完整。
  3. 对连续的数值型特征进行标准化,使得均值为0,方差为1。
  4. 对类别型的特征进行one-hot编码。
  5. 将需要转换成类别型数据的连续型数据进行二值化。(分箱)
  6. 为防止过拟合或者其他原因,选择是否要将数据进行正则化。
  7. 在对数据进行初探之后发现效果不佳,可以尝试使用多项式方法,寻找非线性的关系。
  8. 根据实际问题分析是否需要对特征进行相应的函数转换。



标准化:sklearn.preprocessing.scale() 或者 sklearn.preprocessing.StandardScaler 

数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。其中最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上。 

【最小-最大规范化(线性变换) 】y=((x-MinValue)/(MaxValue-MinValue))(new_MaxValue-new_MinValue)+new_minValue) 

【Z-Score 零-均值规范化】或者去除均值和方差缩放公式为:(X-mean)/std  计算时对每个属性/每列分别进行。将数据按期属性(按列进行)减去其均值,并处以其方差。得到的结果是,对于每个属性/每列来说所有数据都聚集在0附近,方差为1。

【小数定标规范化】通过移动X的小数位置来进行规范化。 y= x/10的j次方  (其中,j为使得Max(|y|) <1的最小整数) 

【对数Logistic模式】新数据=1/(1+e^(-原数据)) 

【模糊量化模式】新数据=1/2+1/2sin[pi/(极大值-极小值)*(X-(极大值-极小值)/2)] 

【batch normalization】

归一化】目标是1 、把数变为[0,1]之间的小数:把数据映射到0~1范围之内处理,更加便捷快速,应该归到数字信号处理范畴之内。 2 、把有量纲表达式变为无量纲表达式:归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。常用的归一化方法: 1 线性转换 y=(x-MinValue)/(MaxValue-MinValue) ;2 对数函数转换: y=log10(x) ;   3 反余切函数转换  y=atan(x)*2/PI


正则化:Regularization

正则化的过程是将每个样本缩放到单位范数(每个样本的范数为1),如果后面要使用如二次型(点积)或者其它核方法计算两个样本之间的相似性这个方法会很有用。



注意:

标准化是为了方便数据的下一步处理,而进行的数据缩放等变换,并不是为了方便与其他数据一同处理或比较,比如数据经过零-均值标准化后,更利于使用标准正态分布的性质,进行处理;

归一化是为了消除不同数据之间的量纲,方便数据比较和共同处理,比如在神经网络中,归一化可以加快训练网络的收敛性;基于树的方法不需要进行特征的归一化,例如随机森林,bagging与boosting等方法。如果是基于参数的模型或者基于距离的模型,因为需要对参数或者距离进行计算,都需要进行归一化。

正则化而是利用先验知识,在处理过程中引入正则化因子(regulator),增加引导约束的作用,比如在逻辑回归中使用正则化,可有效降低过拟合的现象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值