特征缩放/归一化

  有些特征的值是有界限的,比如经纬度。有些模型是输入的平滑函数,比如线性回归模型、逻辑回归模型,它们会受到输入尺度的影响。
  如果模型对输入特征的尺度很敏感,就需要进行特征缩放。特征缩放会改变特征的尺度。

1、Min-Max缩放

Min-Max标准化将数据转换在[0,1]区间内。
x=x−MinMax−Minx = \frac{x-Min}{Max-Min}x=MaxMinxMin

2、z-score标准化/方差缩放

z-score标准化处理过的数据,符合标准正态分布(均值为0,标准差为1)。

x=x−μσx = \frac{x-\mu}{\sigma}x=

### Python 中特征缩放归一化的实现方法及应用场景 #### Min-Max 归一化 Min-Max 归一化是一种常见的归一化技术,能够将数据映射到指定范围内(通常是0至1之间),这有助于消除量纲的影响并使不同变量具有可比性。具体来说,对于给定的数据集X及其最小值min(X)与最大值max(X),可以通过下述公式计算得到新的数值: \[ X_{norm} = \frac{X - min(X)}{max(X)-min(X)} \] 这种方法适用于那些边界清晰且分布较为均匀的数据集合[^3]。 ```python from sklearn.preprocessing import MinMaxScaler import numpy as np data = [[-1, 2], [-0.5, 6], [1, 8]] scaler = MinMaxScaler() normalized_data = scaler.fit_transform(data) print(normalized_data) ``` #### Z-Score 标准化 Z-score 标准化则是另一种常用的特征缩放方式,它会把原始数据转化为均值为零、标准差为单位的标准正态分布形式。此过程利用了统计学上的z分数概念,即每个观测点减去总体平均后再除以其标准偏差获得的结果。该策略特别适合于处理含有异常值的数据集或是当后续分析依赖于假设检验时采用。 \[ X_{std}=\frac{(X-\mu )}{\sigma } \] 其中μ表示样本均值而σ代表样本标准差[^4]。 ```python from sklearn.preprocessing import StandardScaler data = [[0, 0], [0, 0], [1, 1], [1, 1]] scaler = StandardScaler().fit(data) standardized_data = scaler.transform(data) print(standardized_data) ``` #### 应用场景 在机器学习领域内,许多算法对输入特征的尺度非常敏感,因此适当运用上述两种手段可以显著改善预测效果。例如,在支持向量机(SVMs) 或者神经网络中,由于权重更新机制的缘故,较大的属性可能会主导较小者的贡献;而在KNN分类器里,则是因为距离度量受制于各维度间差异所致。另外值得注意的是,并不是所有的模型都需要执行这样的预处理操作—像决策树这类基于规则的学习器就不太关心具体的数值大小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值