机器学习 数据预处理之特征缩放(理论+案例)

特征缩放

原因:

  • 数量级的差异将导致量级较大的属性占据主导地位
  • 数量级的差异将导致迭代收敛速度减慢
  • 依赖于样本距离的算法对于数据的数量级非常敏感

好处:

  • 提升模型的精度:在机器学习算法的目标函数中使用的许多元素(例如支持向量机的 RBF 内核或线性模型的 l1 和 l2 正则化),都是假设所有的特征都是零均值并且具有同一阶级上的方差。如果某个特征的方差比其他特征大几个数量级,那么它就会在学习算法中占据主导位置,导致学习器并不能像我们期望的那样,从其他特征中学习
  • 提升收敛速度:对于线性模型来说,数据归一化后,寻找最优解的过程明显会变得平缓,更容易正确地收敛到最优解

Standardization (Z-score normalization)

通过减去均值然后除以标准差,将数据按比例缩放,使之落入一个小的特定区间,处理后的数据均值为0,标准差为1

x ′ = x − m e a n ( x ) s t d ( x ) x^{\prime} = { {x - mean(x)} \over std(x)} x=std(x)xmean(x)

适用范围:

  • 数据本身的分布就服从正太分布
  • 最大值和最小值未知的情况,或有超出取值范围的离群数据的情况
  • 在分类、聚类算法中需要使用距离来度量相似性、或者使用PCA(协方差分析)技术进行降维时,使用该方法表现更好

Rescaling (min-max normalization)

将原始数据线性变换到用户指定的最大-最小值之间,处理后的数据会被压缩到 [0,1] 区间上

x ′ = x − m i n ( x ) m a x ( x ) − m i n ( x ) x^{\prime} = { {x - min(x)} \over {max(x) - min(x)}} x=max(x)min(x)xmin(x)

适用范围:

  • 对输出范围有要求
  • 数据较为稳定,不存在极端的最大最小值
  • 在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用该方法

Mean normalization

x ′ = x − m e a n ( x ) m a x ( x ) − m i n ( x ) x^{\prime} = { {x - mean(x)} \over {max(x) - min(x)}} x=max(x)min(x)xmea

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值