sklearn实现数据标准化(Standardization)和归一化(Normalization)

标准化(Standardization)

sklearn的标准化过程,即包括Z-Score标准化,也包括0-1标准化,并且即可以通过实用函数来进行标准化处理,同时也可以利用评估器来执行标准化过程。接下来我们分不同功能以的不同实现形式来进行讨论:

Z-Score标准化的评估器实现方法

python 复制代码
#首先是评估器导入
from sklearn.preprocessing import StandardScaler

#评估器的实例化
scaler = StandardScaler()

#然后导入数据,进行训练,此处也是使用fit函数进行训练:
X = np.arange(15).reshape(5, 3)
scaler.fit(X)

# 查看训练数据各列的标准差
scaler.scale_
# 查看训练数据各列的均值
scaler.mean_
# 查看训练数据各列的方差
scaler.var_
# 总共有效的训练数据条数
scaler.n_samples_seen_

# 利用均值和方差对训练集进行标准化处理
scaler.transform(X)

0-1标准化的评估器实现方法

python 复制代码
from sklearn.preprocessing import MinMaxScaler

#然后导入数据,进行训练
X = np.arange(15).reshape(5, 3)
scaler = MinMaxScaler()
scaler.fit_transform(X)

归一化Normalization

和标准化不同,sklearn中的归一化特指将单个样本(一行数据)放缩为单位范数(1范数或者2范数为单位范数)的过程,归一化也有函数实现和评估器实现两种方法。

此前我们曾解释到关于范数的基本概念,假设向量 x = [ x 1 , x 2 , . . . , x n ] T x = [x_1, x_2, ..., x_n]^T x=[x1,x2,...,xn]T,则向量x的1-范数的基本计算公式为:
∣ ∣ x ∣ ∣ 1 = ∣ x 1 ∣ + ∣ x 2 ∣ + . . . + ∣ x n ∣ ||x||_1 = |x_1|+|x_2|+...+|x_n| ∣∣x∣∣1=∣x1∣+∣x2∣+...+∣xn∣

即各分量的绝对值之和。而向量x的2-范数计算公式为:
∣ ∣ x ∣ ∣ 2 = ( ∣ x 1 ∣ 2 + ∣ x 2 ∣ 2 + . . . + ∣ x n ∣ 2 ) ||x||_2=\sqrt{(|x_1|^2+|x_2|^2+...+|x_n|^2)} ∣∣x∣∣2=(∣x1∣2+∣x2∣2+...+∣xn∣2)

我们可以调用评估器来实现上述过程

python 复制代码
from sklearn.preprocessing import Normalizer

#导入数据,进行训练
X = np.arange(15).reshape(5, 3)

# L2 (默认)
normlize = Normalizer()
normlize.fit_transform(X)

# L1 
normlize = Normalizer(norm='l1')
normlize.fit_transform(X)
相关推荐
喵手3 分钟前
Python爬虫零基础入门【第九章:实战项目教学·第17节】内容指纹去重:URL 变体/重复正文的识别!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·内容指纹去重·url变体
喵手26 分钟前
Python爬虫零基础入门【第五章:数据保存与入库·第1节】先学最通用:CSV/JSONL 保存(可复现、可分享)!
爬虫·python·python爬虫实战·python爬虫工程化实战·python爬虫零基础入门·数据保存与入库·csv/jsonl
子夜江寒35 分钟前
OpenCV 学习:图像拼接与答题卡识别的实现
python·opencv·学习·计算机视觉
bjxiaxueliang40 分钟前
一文掌握Python Flask:HTTP微服务开发从入门到部署
python·http·flask
szcsun51 小时前
机器学习(一)
人工智能·机器学习
sonadorje1 小时前
矩阵的“内积”和“乘法”
人工智能·机器学习·矩阵
SunnyRivers1 小时前
Python 中的 HTTP 客户端:Requests、HTTPX 与 AIOHTTP 对比
python·httpx·requests·aiohttp·区别
u0109272712 小时前
持续集成/持续部署(CI/CD) for Python
jvm·数据库·python
lixin5565562 小时前
基于迁移学习的图像风格增强器
java·人工智能·pytorch·python·深度学习·语言模型
阡陌..2 小时前
浅谈SAR图像处理---形态学滤波
图像处理·人工智能·python