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

机器学习 —— 数据缩放

摘要:数据缩放是机器学习中重要的预处理技术,主要包括归一化和标准化两种方法。归一化将特征值缩放到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类实现标准化的示例代码:

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()方法同时完成了数据拟合与转换操作。

输出结果

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

缩放前的数据:

花萼长度(厘米)花萼宽度(厘米)花瓣长度(厘米)花瓣宽度(厘米)
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2

缩放后的数据:

花萼长度(厘米)花萼宽度(厘米)花瓣长度(厘米)花瓣宽度(厘米)
0-0.9006811.019004-1.340227-1.315444
1-1.143017-0.131979-1.340227-1.315444
2-1.3853530.328414-1.397064-1.315444
3-1.5065210.098217-1.283389-1.315444
4-1.0218491.249201-1.340227-1.315444

http://www.jsqmd.com/news/309440/

相关文章:

  • 产品研发工作流程图 - 智慧园区
  • P14981 [USACO26JAN1] Milk Buckets G
  • 基于Java的市容环境卫生智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 基于Java的市政工程勘察设计智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 基于Java的市政工程规划智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 基于Java的市政工程设计文件审查智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 如何通过工业AI平台解决制造业数据孤岛与经验传承难题?
  • 如何选择一家靠谱的工业数据智能公司?关键能力解析
  • 基于Java的市场调查与研究智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 基于Java的市场调研与分析智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 基于微信小程序的视频点播系统的设计与实现(源码+lw+部署文档+讲解等)
  • 郑斯仁公益献唱《我要去莆田》,乡音寄情绘就莆田新年烟火气
  • 去年姐就是这么学,才入职的Web前端岗(完整路线含学习资源)
  • 假如你从1.27开始准备前端面试,那么请准备到这种程度......
  • 计算机毕业设计springboot社区服务平台的设计与实现 基于SpringBoot的社区服务综合管理系统的设计与实现 智慧社区便民服务平台的构建与实现
  • 如何设计一个监控系统?需要监控哪些指标?
  • TCRm 抗体酵母展示开发:突破靶向局限的免疫工具创新
  • 爆火的「Agentic推理」是什么?怎么用?未来机会在哪里?一文读懂
  • AI时代马年一马当先,5折考取CMA,考试费更享7.5折
  • 2026年 功能性服装厂家推荐排行榜:私人定制西服、团体职业装、企业制服、冲锋衣、T恤衫、工厂厂服,匠心工艺与创新面料实力解析
  • 从表单驱动到模型驱动:决定低代码上限的架构分水岭
  • 2026年国内低代码与AI应用构建工具选型指南
  • 2026年低代码在核心业务高并发场景下的逻辑生死线
  • 2026年软件开发如何从增删改查走向业务流驱动
  • 低代码进入核心交易链路后,软件公司该怎样做长期可维护的交付体系
  • 低代码的“脚本陷阱”:为什么复杂逻辑最终还是回到了IDE?
  • AI硬件助手:您的专业硬件顾问,轻松解答装机与配置难题
  • Wallpaper Generator:轻松打造专属纯色与渐变壁纸
  • 找到“伟大公司”并长期持有
  • 杭州财务公司/杭州注册公司执照哪家好?2026年度杭州疑难税务/杭州资质/杭州补贴代办公司推荐