sklearn.preprocessing.normalize()

sklearn.preprocessing.normalize()是Scikit-learn库中的一个函数,用于对特征向量进行归一化处理。归一化的目的是将每个样本的特征向量缩放到单位范数(即长度为1)。

normalize函数的主要参数包括:

  • X:要归一化的数组或稀疏矩阵,形状为[n_samples, n_features]
  • norm:指定要使用的范数类型,可以是l1、l2或max
    • l1范数:将每个样本的特征向量的绝对值之和归一化为1
    • l2范数:将每个样本的特征向量的欧几里得长度归一化为1(默认)
    • max范数:将每个样本的特征向量的最大绝对值归一化为1

以下是一个简单的代码示例,

复制代码
import numpy as np
from sklearn.preprocessing import normalize

# 示例数据
X = np.array([[1, 2, 3],
              [4, 5, 6],
              [7, 8, 9]])

# 使用 l2 范数进行归一化
X_normalized_l2 = normalize(X, norm='l2')

# 使用 l1 范数进行归一化
X_normalized_l1 = normalize(X, norm='l1')

# 使用 max 范数进行归一化
X_normalized_max = normalize(X, norm='max')

print("Original Data:\n", X)
print("\nL2 Normalized Data:\n", X_normalized_l2)
print("\nL1 Normalized Data:\n", X_normalized_l1)
print("\nMax Normalized Data:\n", X_normalized_max)

输出结果如下,

复制代码
Original Data:
 [[1 2 3]
  [4 5 6]
  [7 8 9]]

L2 Normalized Data:
 [[0.26726124 0.53452248 0.80178373]
  [0.45584231 0.56980288 0.68376346]
  [0.50257071 0.57436653 0.64616234]]

L1 Normalized Data:
 [[0.16666667 0.33333333 0.5       ]
  [0.26666667 0.33333333 0.4       ]
  [0.29166667 0.33333333 0.375     ]]

Max Normalized Data:
 [[0.33333333 0.66666667 1.        ]
  [0.66666667 0.83333333 1.        ]
  [0.77777778 0.88888889 1.        ]]

以下是安装指令,

复制代码
pip install scikit-learn
conda install scikit-learn
相关推荐
风象南4 小时前
普通人用AI加持赚到的第一个100块
人工智能·后端
牛奶5 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶5 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
罗西的思考7 小时前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab8 小时前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab8 小时前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
孟健9 小时前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
格砸9 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云10 小时前
可观测性 4.0:教系统如何思考
人工智能
sunny86510 小时前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github