preprocessing.MinMaxScaler用法 · python 学习记录 您所在的位置:网站首页 featureas用法 preprocessing.MinMaxScaler用法 · python 学习记录

preprocessing.MinMaxScaler用法 · python 学习记录

2024-07-01 23:00| 来源: 网络整理| 查看: 265

preprocessing.MinMaxScaler用法preprocessing.MinMaxScalerpreprocessing.MinMaxScaler用法 preprocessing.MinMaxScaler

当数据(x)按照最小值中心化后,再按极差(最大值 - 最小值)缩放,数据移动了最小值个单位,并且会被收敛到 [0,1] 之间,而这个过程,就叫做数据归一化(Normalization,又称Min-Max Scaling)。注意,Normalization是归一化,不是正则化,真正的正则化是regularization,不是数据预处理的一种手段。归一化之后的数据服从正态分布,公式如下: x∗=x−min(x)max(x)−min(x) x^{*}=\frac{x-\min (x)}{\max (x)-\min (x)} x​∗​​=​max(x)−min(x)​​x−min(x)​​

在sklearn当中,我们使用preprocessing.MinMaxScaler来实现这个功能。MinMaxScaler有一个重要参数,feature_range,控制我们希望把数据压缩到的范围,默认是[0,1] .

函数:

class sklearn.preprocessing.MinMaxScaler(feature_range=(0, 1), copy=True )

属性:

min_ : , 计算方式 min - X.min(axis=0) * self.scale_

scale_ : 每个特征的相对缩放比例,计算方式 (max - min) / (X.max(axis=0) - X.min(axis=0))

data_min_ :最小值

data_max_ : 最大值

ata_range_ : 数据的范围 ,计算方式 datamax - datamin

源码:sklearn.preprocessing.MinMaxScaler

from sklearn.preprocessing import MinMaxScaler data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]] import pandas as pd pd.DataFrame(data) #实现归一化 scaler = MinMaxScaler() #实例化 scaler = scaler.fit(data) #fit,在这里本质是生成min(x)和max(x) result = scaler.transform(data) #通过接口导出结果 result result_ = scaler.fit_transform(data) #训练和导出结果一步达成 scaler.inverse_transform(result) #将归一化后的结果逆转 #使用MinMaxScaler的参数feature_range实现将数据归一化到[0,1]以外的范围中 data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]] scaler = MinMaxScaler(feature_range=[5,10]) #依然实例化 result = scaler.fit_transform(data) #fit_transform一步导出结果 result #当X中的特征数量非常多的时候,fit会报错并表示,数据量太大了我计算不了 #此时使用partial_fit作为训练接口 #scaler = scaler.partial_fit(data) Update time: 2020-05-23


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有