机器学习:数据特征预处理归一化和标准化

简介: 机器学习:数据特征预处理归一化和标准化

特征预处理

通过特定的统计方法(数学方法)将数据转换成算法要求的数据

数值型数据:
    -标准缩放
        - 归一化
        - 标准化
        - 缺失值
类别行数据:
    - one-hot编码
时间型数据:
    - 时间的切分


1、归一化

将原始数据映射到一个区间[0,1]

特征同等重要:归一化处理

目的:使得某一个特征对最终结果不对造成更大的影响

缺点:对于异常点处理不好,容易影响最大值最小值,鲁棒性较差(稳定性),只适合精确小数据场景

image.png


代码示例

# -*- coding: utf-8 -*-
from sklearn.preprocessing import MinMaxScaler
# 归一化处理,将数据映射到指定区间
data = [
    [90, 2, 10, 40],
    [60, 4, 15, 45],
    [75, 3, 13, 46]
]
min_max = MinMaxScaler(feature_range=(0, 1))
result = min_max.fit_transform(data)
print(result)
"""
[
    [1.         0.         0.         0.        ]
    [0.         1.         1.         0.83333333]
    [0.5        0.5        0.6        1.        ]
]
计算示例,第一列
90
x1 = (x−min)/(max-min) = (90 - 60)/(90 - 60) = 1
x2 = x1 * (mx - mi)+ mi = 1 * (1 - 0) + 0 = 1
60
x1 = (x−min)/(max-min) = (60 - 60)/(90 - 60) = 0
x2 = x1 * (mx - mi)+ mi = 0 * (1 - 0) + 0 = 0
75
x1 = (x−min)/(max-min) = (75 - 60)/(90 - 60) = 0.5
x2 = x1 * (mx - mi)+ mi = 0.5 * (1 - 0) + 0 = 0.5
"""


2、标准化

将原始数据变换到均值为0,标准差为1的范围内

平均值

方差 考量数据稳定性

方差 = 0 所有值都一样

标准差

异常点:由于具有一定数据量,少量的异常点对于平均值的影响并不大,从而方差改变较小


标准差适用场景:

样本足够多且比较稳定,嘈杂大数据


计算公式

s 2 = ∑ i = 1 n ( x i − m e a n ) 2 n s^2 = \frac{\sum_{i=1}^n( x_i - mean)^2}{n}


mean 是列数据平均值

s 是标准差

s 2 s^2s

2

 方差

n 样本数


代码示例

from sklearn.preprocessing import StandardScaler
# 标准化处理,将数据映射到均值为0,标准差为1
data = [
    [1.0, -1.0, 3.0],
    [2.0, 4.0, 2.0],
    [4.0, 6.0, -1.0]
]
std = StandardScaler()
result = std.fit_transform(data)
print(result)
"""
[
    [-1.06904497 -1.35873244  0.98058068]
    [-0.26726124  0.33968311  0.39223227]
    [ 1.33630621  1.01904933 -1.37281295]
]
"""


相关文章
|
3月前
|
机器学习/深度学习 数据采集 算法
量子机器学习入门:三种数据编码方法对比与应用
在量子机器学习中,数据编码方式决定了量子模型如何理解和处理信息。本文详解角度编码、振幅编码与基础编码三种方法,分析其原理、实现及适用场景,帮助读者选择最适合的编码策略,提升量子模型性能。
309 8
|
9月前
|
机器学习/深度学习 算法 Python
机器学习特征筛选:向后淘汰法原理与Python实现
向后淘汰法(Backward Elimination)是机器学习中一种重要的特征选择技术,通过系统性地移除对模型贡献较小的特征,以提高模型性能和可解释性。该方法从完整特征集出发,逐步剔除不重要的特征,最终保留最具影响力的变量子集。其优势包括提升模型简洁性和性能,减少过拟合,降低计算复杂度。然而,该方法在高维特征空间中计算成本较高,且可能陷入局部最优解。适用于线性回归、逻辑回归等统计学习模型。
370 7
|
6月前
|
存储 分布式计算 API
基于PAI-FeatureStore的LLM embedding功能,结合通义千问大模型,可通过以下链路实现对物品标题、内容字段的离线和在线特征管理。
本文介绍了基于PAI-FeatureStore和通义千问大模型的LLM embedding功能,实现物品标题、内容字段的离线与在线特征管理。核心内容包括:1) 离线特征生产(MaxCompute批处理),通过API生成Embedding并存储;2) 在线特征同步,实时接入数据并更新Embedding至在线存储;3) Python SDK代码示例解析;4) 关键步骤说明,如客户端初始化、参数配置等;5) 最佳实践,涵盖性能优化、数据一致性及异常处理;6) 应用场景示例,如推荐系统和搜索排序。该方案支持端到端文本特征管理,满足多种语义理解需求。
211 1
|
8月前
|
机器学习/深度学习 算法 数据挖掘
PyTabKit:比sklearn更强大的表格数据机器学习框架
PyTabKit是一个专为表格数据设计的新兴机器学习框架,集成了RealMLP等先进深度学习技术与优化的GBDT超参数配置。相比传统Scikit-Learn,PyTabKit通过元级调优的默认参数设置,在无需复杂超参调整的情况下,显著提升中大型数据集的性能表现。其简化API设计、高效训练速度和多模型集成能力,使其成为企业决策与竞赛建模的理想工具。
289 12
PyTabKit:比sklearn更强大的表格数据机器学习框架
|
11月前
|
机器学习/深度学习 数据采集 JSON
Pandas数据应用:机器学习预处理
本文介绍如何使用Pandas进行机器学习数据预处理,涵盖数据加载、缺失值处理、类型转换、标准化与归一化及分类变量编码等内容。常见问题包括文件路径错误、编码不正确、数据类型不符、缺失值处理不当等。通过代码案例详细解释每一步骤,并提供解决方案,确保数据质量,提升模型性能。
454 88
|
9月前
|
存储 机器学习/深度学习 缓存
特征平台PAI-FeatureStore的功能列表
本内容介绍了阿里云PAI FeatureStore的功能与使用方法,涵盖离线和在线特征管理、实时特征视图、行为序列特征视图、FeatureStore SDK的多语言支持(如Go、Java、Python)、特征生产简化方案、FeatureDB存储特性(高性能、低成本、及时性)、训练样本导出以及自动化特征工程(如AutoFE)。同时提供了相关文档链接和技术细节,帮助用户高效构建和管理特征工程。适用于推荐系统、模型训练等场景。
259 2
|
9月前
PAI-Rec推荐平台对于实时特征有三个层次
PAI-Rec推荐平台针对实时特征有三个处理层次:1) 离线模拟反推历史请求时刻的实时特征;2) FeatureStore记录增量更新的实时特征,模型特征导出样本准确性达99%;3) 通过callback回调接口记录请求时刻的特征。各层次确保了实时特征的准确性和时效性。
236 0
|
9月前
|
机器学习/深度学习 传感器 数据采集
基于机器学习的数据分析:PLC采集的生产数据预测设备故障模型
本文介绍如何利用Python和Scikit-learn构建基于PLC数据的设备故障预测模型。通过实时采集温度、振动、电流等参数,进行数据预处理和特征提取,选择合适的机器学习模型(如随机森林、XGBoost),并优化模型性能。文章还分享了边缘计算部署方案及常见问题排查,强调模型预测应结合定期维护,确保系统稳定运行。
921 0
|
2月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
1215 6

热门文章

最新文章