机器学习 —— 数据缩放

摘要:数据缩放是机器学习中重要的预处理技术,主要包括归一化和标准化两种方法。归一化将特征值缩放到0-1范围,标准化则将特征调整为均值为0、标准差1的分布。Python中可通过sklearn的StandardScaler实现标准化处理,示例展示了鸢尾花数据集缩放前后的对比,使用fit_transform()方法完成数据拟合和转换。数据缩放能消除特征量纲差异,提升模型性能。

目录

[机器学习 ------ 数据缩放](#机器学习 —— 数据缩放)

示例

输出结果

缩放前的数据:

缩放后的数据:


机器学习 ------ 数据缩放

数据缩放(Data Scaling)是机器学习中的一种数据预处理技术,用于对数据中特征的取值范围或分布进行归一化(Normalization)或标准化(Standardization)处理。数据缩放至关重要,因为数据中的不同特征可能具有不同的量纲,而部分算法在处理此类数据时性能会受影响。通过数据缩放,可使每个特征的量纲和取值范围保持一致,从而提升机器学习模型的性能。

数据缩放主要包含两种常用技术:

  1. 归一化(Normalization):将特征值缩放至 0 到 1 之间。具体实现方式为:用该特征的每个取值减去该特征的最小值,再除以该特征的取值范围(即最大值与最小值的差值)。
  2. 标准化(Standardization):将特征值缩放至均值为 0、标准差为 1 的分布状态。具体实现方式为:用该特征的每个取值减去该特征的均值,再除以该特征的标准差。

示例

在 Python 中,可通过 sklearn 模块实现数据缩放。sklearn.preprocessing 子模块提供了用于数据缩放的相关类。以下是使用 StandardScaler 类实现标准化的示例代码:

python 复制代码
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import load_iris
import pandas as pd

# 加载鸢尾花数据集
data = load_iris()
X = data.data  # 特征数据
y = data.target  # 目标变量

# 将数据集转换为 DataFrame 格式
df = pd.DataFrame(X, columns=data.feature_names)
print("缩放前的数据:")
print(df.head())

# 使用 StandardScaler 对数据进行标准化
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)  # 拟合数据并完成缩放转换

# 将缩放后的特征数据转换为新的 DataFrame
df_scaled = pd.DataFrame(X_scaled, columns=data.feature_names)
print("缩放后的数据:")
print(df_scaled.head())

在本示例中,首先加载鸢尾花(Iris)数据集并将其转换为 DataFrame 格式,随后使用 StandardScaler 类对特征数据进行标准化处理,生成缩放后的新 DataFrame。最后通过打印两个 DataFrame,对比数据缩放前后的差异。需注意的是,此处通过缩放器对象的 fit_transform() 方法同时完成了数据拟合与转换操作。

输出结果

运行上述代码后,将得到如下输出:

缩放前的数据:

花萼长度(厘米) 花萼宽度(厘米) 花瓣长度(厘米) 花瓣宽度(厘米)
0 5.1 3.5 1.4 0.2
1 4.9 3.0 1.4 0.2
2 4.7 3.2 1.3 0.2
3 4.6 3.1 1.5 0.2
4 5.0 3.6 1.4 0.2

缩放后的数据:

花萼长度(厘米) 花萼宽度(厘米) 花瓣长度(厘米) 花瓣宽度(厘米)
0 -0.900681 1.019004 -1.340227 -1.315444
1 -1.143017 -0.131979 -1.340227 -1.315444
2 -1.385353 0.328414 -1.397064 -1.315444
3 -1.506521 0.098217 -1.283389 -1.315444
4 -1.021849 1.249201 -1.340227 -1.315444

相关推荐
共创splendid--与您携手4 小时前
AI读取前端项目生成skill.md
前端·人工智能·ai
gis分享者5 小时前
AI数字营销实测体验,GEO效果查询功能体验
人工智能·csdn·geo·数字营销·实测体验·效果查询
莱歌数字5 小时前
轻出20%性能:三维拓扑优化如何重塑无人机电子设备散热格局
人工智能·科技·制造·cae·散热
猿小猴子6 小时前
主流 AI IDE 之一的「DeepSeek-Reasonix 」介绍
人工智能·ai·deepseek·reasonix
装不满的克莱因瓶6 小时前
链式法则如何传递参数误差 —— 深入理解神经网络中的梯度传播
人工智能·python·深度学习·神经网络·数学·机器学习·ai
Anastasiozzzz6 小时前
从有限状态机到智能体图:传统 FSM 与 Agent Graph的演进
java·人工智能·python·ai
程序员cxuan12 小时前
为每个任务配一套 harness:Claude Code 里的动态工作流
人工智能
程序员cxuan12 小时前
Claude Fable 5 来了
人工智能·后端·程序员
云边云科技_云网融合12 小时前
云边云科技亮相 2026 WOD 制造业数智化博览会 云网融合赋能制造焕新
人工智能·科技·安全·制造
biter down12 小时前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python