
特征工程——特征预处理(归一化和标准化),通过例子并利用sklearn实现归一化和标准化
发布日期:2021-05-15 00:33:56
浏览次数:15
分类:精选文章
本文共 1062 字,大约阅读时间需要 3 分钟。
特征工程:特征预处理
特征预处理是数据挖掘和机器学习中非常重要的一环。通过对原始特征数据进行转换,使其更适合后续模型训练的需求。接下来,我们详细讲解归一化和标准化,两种核心的特征预处理方法。
1.1 什么是特征预处理
特征预处理的定义是通过一些转换函数,将原始数据转换成更加适合算法模型的特征数据。例如,归一化和标准化是两种常见的预处理方法,它们帮助数据处于同一尺度,提升算法的性能。
1.2 归一化
定义
归一化的目标是将数据范围缩放到一种标准区间,通常是 [0,1]。通过减少特征量纲的差异,消除数据维度间的影响,使算法更容易学习。
公式
归一化使用最小-最大公式: [ X' = \frac{X - min(X)}{max(X) - min(X)} ] 其中,min(X) 和 max(X) 分别是列的最小值和最大值。
API
使用 sklearn.preprocessing.MinMaxScaler
,代码示例如下:
from sklearn.preprocessing import MinMaxScalertransfer = MinMaxScaler(feature_range=(2, 3))X = transfer.fit_transform(X)
重要性
归一化适合小数据集,但容易受到异常数据的影响。例如,极端值可能占主导地位,影响模型性能。
1.3 标准化
定义
标准化则是将数据转换为均值为0、标准差为1的方式,通常用于特征的零均值化,减小输入� Dispersion。
公式
标准化使用均值-方差公式: [ X' = \frac{X - mean(X)}{std(X)} ]
API
使用 sklearn.preprocessing.StandardScaler
,代码示例如下:
from sklearn.preprocessing import StandardScalertransfer = StandardScaler()X = transfer.fit_transform(X)
重要性
标准化在大数据场景下更具鲁棒性,异常点对结果的影响较小,因此更适合现代数据挖掘任务。
1.4 对比归一化和标准化
-
适用场景:
- 归一化:适合小数据集、传统模型。
- 标准化:适合大数据集、复杂模型。
-
处理异常点:
- 归一化:较不鲁棒,极端值会影响结果。
- 标准化:异常点对均值影响小,数据分布更稳定。
通过合理选择归一化或标准化,可以显著提升模型性能。了解两者的优缺点,有助于做出更好的特征工程选择。
发表评论
最新留言
很好
[***.229.124.182]2025年05月01日 11时25分11秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
CSDN 怎么写出好看的博客
2019-03-12
Java基本概念:方法
2019-03-12
pwn题shellcode收集
2019-03-12
使用docker搭建nfs实现容器间共享文件 nfs server nfs client
2019-03-12
CURL 发送请求详解
2019-03-12
python中的序列化
2019-03-12
django中使用celery执行异步任务实现
2019-03-12
区块链初步了解
2019-03-12
centos7安装telnet服务
2019-03-12
centos7 安装 mongodb3.6.3
2019-03-12
LIVE 预告 | 牛津胡庆拥:学习理解大规模点云
2019-03-12
java有道翻译
2019-03-12
lora技术在无线抄表行业应用
2019-03-12
leetcode——区域和检索
2019-03-12
msfvenom的使用&免杀&外网渗透
2019-03-12
HTTP/2 协议详解
2019-03-12
grafana改用https登录
2019-03-12
使用jenkins进行项目的自动构建部署
2019-03-12
使用MySQLTuner-perl对MySQL进行优化
2019-03-12