当前位置:网站首页>特征工程--数值特征归一化
特征工程--数值特征归一化
2022-07-19 13:33:00 【牧羊LL】
第一章 特征工程
特征工程顾名思义是对原始数据进行一些了工程处理,将其提炼为特征,作为输入供算法和模型实现。
本章主要讨论两种常用的数据类型:
- 结构化数据。结构化数据类型可以看做关系型数据库的一张表,有清晰的定义,包含了数值型,类别型两种基本类型,每一行数据表示一个样本的信息
- 非结构化数据。非结构化睡主要包括文本,图像,音评,视频数据,其包含的信息无法用一个简单的数值表示,也没有清晰的类别定义,并且每条数据的大小各不相同
01特征归一化
为了消除数据特征之间的量纲影响,我们需要对特征进行归一化处理,使得不同指标之间具有可比性。例如,分析一个人的身高和体重对健康个的影响,如果使用米m和千克kg做单位,那么身高特征会在1.6-1.8m的数值范围内,体重会在50-100kg的范围内,分析出来的结果会倾向于数值差别比较大的体重特征。想要得到更为准确的记过,就需要进行特征归一化(Normalization)处理,使各指标处于同一数值量级,以便进行分析
1. 为什么需要对数值类型的特征做归一化
对数之类的的特征做归一化可以讲所有的特征都统一到一个大致相同的数值区间内。
常用的方法主要有以下两种
- 线性函数归一化Min-Max Scaling
它对原始数据进行线性比那还,使结果映射到【0,1】的范围,实现对原始数据的等比缩放(x-xmin)/ (xmax-xmin)
- 零均值归一化Z-Score Normalization
它会讲原始数据映射到均值为0,标准差为1的分布上,具体来说,假设原始特征的均值为u,标准差为m :(x-u) / m
为什么需要对数值型特征做归一化?不妨借助随机梯度下降的实际例子来说明归一化的重要性,假设有两种数值型特征,x1范围大于x2.
在学习速率相同的情况下,x1的更新速度会大于x2,需要较多的迭代才能找到最优解,如果将x1和x2归一化到相同的数值区间后,优化目标的等值图就会从椭圆变成正圆,x1和x2的更新速度变得更为一致,容易更快的通过梯度下降找到最优解
当然,数据归一化并不是万能的,在实际应用中,通过梯度下降法求解的模型通常是需要归一化的,包括线性回归,逻辑回归,只会向量机,神经网络等模型,但对于决策树模型则并不适用,决策树在进行结点分类是主要依据数据集D关于特征x的信息增益比,而信息增益比跟特征是否经过归一化是无关的,因为归一化并不会改变样本在特征x上的信息增益
边栏推荐
- Go printf how to format output, structure format output, one-stop solution to all troubles
- [introduction series of redis] get to know redis and the installation of redis
- 服务器白名单是什么意思
- 微信内打开链接,跳转到公众号关注页面
- mysql中update和select结合使用
- 吃透Chisel语言.15.Chisel模块详解(二)——Chisel模块嵌套和ALU实现
- Do you still have certificates to participate in the open source community?
- Summary of xrun parameter usage in cadence (continuously updated)
- 国际原油期货怎么操作开户才安全?
- About the performance of different versions of SQLSERVER database
猜你喜欢
测试管理工具哪家强?
Bi skills - same month on month calculation
吃透Chisel语言.15.Chisel模块详解(二)——Chisel模块嵌套和ALU实现
面试官:3 种缓存更新策略是怎样的?
2022 latest algorithm analysis and handwritten code interview analysis
查询效率提升10倍!3种优化方案,帮你解决MySQL深分页问题
备赛笔记:Opencv学习:颜色识别
golang 接口变量的赋值和方法的调用
Only 22 years old! This Post-00 doctor plans to work in 985 universities!
"Still too young", the intern spent 2 minutes to solve the bug, and the old programmer's response was intriguing
随机推荐
golang 接口变量的赋值和方法的调用
IMX8M RTL8201F以太网调试
关于不同版本的SQLSERVER数据库性能问题
Open the link in wechat and jump to the follow page of official account
How to operate international crude oil futures to open an account safely?
浅拷贝和深拷贝的区别?
程序员不会SQL?骨灰级工程师:全等着被淘汰吧!这是必会技能!
服务器白名单是什么意思
About the performance of different versions of SQLSERVER database
吃透Chisel语言.15.Chisel模块详解(二)——Chisel模块嵌套和ALU实现
PG Database install Timescale Database and Backup configuration
详解redis 中Pipeline流水线机制
dns劫持是什么意思?常见的劫持有哪些?
还不懂MySQL数据库?阿里p8架构师带你深入浅出MySQL与优化
各类模板素材
吃透Chisel语言.19.Chisel组合电路(一)——Chisel组合电路与Chisel条件语句
广州深入开展经营性自建房安全整治“百日行动” 两个月排查房屋逾两百万栋
PG数据库安装timescale数据库以及备份配置
TiDB 执行计划概览
走进首个通用无代码开发平台—iVX