当前位置: 首页 > ai >正文

机器学习sklearn入门:归一化和标准化

bg:归一化(Normalization)通常指将数据按比例缩放至某个特定范围,但具体范围并不一定是固定的 0到1。标准化是将数据转换成均值为0,标准差为1的分布。

使用场景:

  • 用归一化

    • 需要严格限定范围(如神经网络输入、图像处理)。

    • 数据分布均匀且无极端值。

  • 用标准化

    • 数据服从正态分布(或需要转换为正态分布)。

    • 算法假设数据均值为 0(如 PCA、线性回归、SVM)。

归一化

1、pandas构建二维数组

from sklearn.preprocessing import MinMaxScaler
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
import pandas as pd
pd.DataFrame(data)

2、实现归一化

scaler = MinMaxScaler() #实例化
scaler = scaler.fit(data) #fit,在这里本质是生成min(x)和max(x)
result = scaler.transform(data) #通过接口导出结果
result

--也可以使用fit_tranform一步到位

3、反归一化就用scaler.inverse_transform(result)

4、上面默认转换为0-1之间的数据,如果需要其它范围的就在实例化MinMaxScaler的时候加上参数feature_range

data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
scaler = MinMaxScaler(feature_range=[5,10]) 
result = scaler.fit_transform(data) #fit_transform一步导出结果
result

标准化

from sklearn.preprocessing import StandardScaler
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
scaler = StandardScaler() #实例化
scaler.fit(data) #fit,本质是生成均值和方差
scaler.mean_ #查看均值的属性mean_
scaler.var_ #查看方差的属性var_
x_std = scaler.transform(data) #通过接口导出结果
x_std.mean() #导出的结果是一个数组,用mean()查看均值
x_std.std() #用std()查看方差
scaler.fit_transform(data) #使用fit_transform(data)一步达成结果
scaler.inverse_transform(x_std) #使用inverse_transform逆转标准化

http://www.xdnf.cn/news/15464.html

相关文章:

  • Antd中使用Table集成 react-resizable实现可伸缩列
  • Jenkins credentials 增加了github credential 但是在Git SCM 凭证中不显示
  • Arcgis 10.7 矢量的分区统计
  • FPGA从flash加载程序的时候,Flash和FPGA芯片的供电是稳定了还是没有稳定就开始加载程序?
  • 「源力觉醒 创作者计划」_巅峰对话:文心大模型4.5系列与DeepSeek/Qwen 3.0深度解析
  • 图像基础指南
  • 【龙泽科技】新能源汽车电驱动总成装调与检修仿真教学软件
  • React+Next.js+Tailwind CSS 电商 SEO 优化
  • SFT:大型语言模型专业化定制的核心技术体系——原理、创新与应用全景
  • mongodb操作巨鹿
  • python应用day11--requests爬虫详解
  • TypeScript的export用法
  • DeepSeek(18):SpringAI+DeepSeek大模型应用开发之会话日志
  • 3分钟实战!用DeepSeek+墨刀AI生成智能对话APP原型图
  • 【官方回复】七牛云开启referer防掉链后小程序访问七牛云图片显示403
  • PyCharm(入门篇)
  • Navicat Premium17.2.8 下载与安装(免费版)
  • 如何选择适合的云手机配置?解决资源不足带来的性能瓶颈
  • 【RTSP从零实践】12、TCP传输H264格式RTP包(RTP_over_TCP)的RTSP服务器(附带源码)
  • TBT 5、TBT 4 和 USB4 的差异概述
  • 上公网-从内网到公网
  • C++ 中两个类之间的通信方式
  • 元宇宙经济:虚实交融下的数字文明新范式
  • python学习---dayday6
  • Redis中的红锁
  • 人机协作系列(四)AI编程的下一个范式革命——看Factory AI如何重构软件工程?
  • 牛客:HJ21 简单密码[华为机考][哈希]
  • C++ -- STL-- List
  • 游戏加速器核心技术:动态超发
  • 【Linux】线程创建等待终止分离