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
相关推荐
用户329901675053 分钟前
把AI返回的Markdown表格渲染成可排序表格
人工智能
还好还好不是吗5 分钟前
MatrixMedia HTTP 发布接口:让 AI 工作流直接驱动多平台视频发布
人工智能
贵慜_Derek7 分钟前
复杂系统没法一把梭重构:Semi-Autoresearch 怎么小步迁移还不掉功能
人工智能·agent·ai编程
ctxinf7 分钟前
Vercel Eve 实际上手初探
人工智能
用户51914958484510 分钟前
利用ShellcodePack实现DLL劫持与COM对象劫持技术详解
人工智能·aigc
武子康17 分钟前
调查研究-195 从 AmEx 支付系统看 Cell-based Architecture:真正的高可用,不是无限重试,而是控制失败边界
人工智能·openai·agent
米小虾25 分钟前
Prompt Engineering —— 意图的精确表达
人工智能·agent
荣码32 分钟前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python
IT_陈寒44 分钟前
React状态更新总是慢半拍?你可能忘了这个默认行为
前端·人工智能·后端
aneasystone本尊1 小时前
学习 turbovec 的混合检索与框架集成
人工智能