数据预处理sklearn.preprocessing的两种种方法,标准化和正则化

文章介绍了数据预处理中的两种重要技术——标准化和正则化。标准化通常涉及移除特征均值并除以标准差,适用于高斯分布的数据。正则化包括MaxAbsScaler、MinMaxScaler和StandardScaler,用于确保数据具有特定范数或范围,尤其在计算相似度时。文中给出了sklearn库中实现这些方法的代码示例。
摘要由CSDN通过智能技术生成

一、标准化(Standardization)

实际操作中,经常忽略特征数据的分布形状,移除每个特征均值,划分离散特征的标准差,从而等级化,进而实现数据中心化。(做概率论的题经常用这招啊)

但是,当单个特征的样本取值相差甚大或明显不遵从高斯正态分布时,标准化表现的效果较差。

公式为:(X-X_mean)/X_std 计算时对每个属性/每列分别进行.

将数据按其属性(按列进行)减去其均值,然后除以其方差。最后得到的结果是,对每个属性/每列来说所有数据都聚集在

from sklearn import preprocessing 
import numpy as np
X = np.array([[ 1., -1.,  2.],
        [ 2.,  0.,  0.],
        [ 0.,  1., -1.]])
X_mean = X.mean(axis=0)  #calculate mean
X_std = X.std(axis=0)   #calculate variance 
X1 = (X-X_mean)/X_std   #standardize X
X_scale = preprocessing.scale(X)  #use function preprocessing.scale to standardize X

二. 正则化( Normalizer)

归一化是缩放单个样本以具有单位范数的过程,这里的”范数”,可以使用L1或L2范数。如果你计划使用二次形式(如点积或任何其他核函数)来量化任何样本间的相似度,则此过程将非常有用。

数据归一化使用的是sklearn.preprocessing里实现的三种方案
MaxAbsScaler 将数据规约到[-1,1] 也称小数定标规范化
MinMaxScaler 将数据规约到[0,1] 也称最小最大规范化
StandardScaler 标准差归一化,也称零-均值规范化
 

MaxAbsScaler 的计算公式如下:
data/10**np.ceil(np.log10(data.abs().max())) 即所有数据除以最大值及其10的阶方
由于源码中将输出的负值取了绝对值,因此最后的结果值都是正数

MinMaxScaler 的计算公式如下:
( data -data.min()) / (data.max()-data.min()) 即所有数据减去最小值除以极差

StandardScaler 的计算公式如下:
(data -data.mean())/data.std() 所有数据减去均值除以方差
 

import sklearn.datasets as ds
iris = ds.load_iris()
x = iris.data[:, :2]  # we only take the first two features.
y = iris.target
from sklearn import preprocessing
# MaxAbsScaler
max_abs_scaler  = preprocessing.MaxAbsScaler()
max_abs_x = max_abs_scaler.fit_transform(x)
max_abs_x
# MinMaxScaler
min_max_scaler = preprocessing.MinMaxScaler()
min_max_x = min_max_scaler.fit_transform(x)
min_max_x
# StandardScaler
standard_scaler  = preprocessing.StandardScaler()
standard_x = standard_scaler.fit_transform(x)
standard_x

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值