为什么要特征标准化及特征标准化方法
1、归一化定义
2、归一化原因
有些模型在各个维度进行不均匀伸缩后,最优解与原来不等价,例如SVM。对于这样的模型,除非本来各维数据的分布范围就比较接近,否则必须进行标准化,以免模型参数被分布范围较大或较小的数据dominate。
有些模型在各个维度进行不均匀伸缩后,最优解与原来等价,例如标准的logistic regression 和linear regression(加正则项后,正则项可能不具备伸缩不变性),简单的树模型(各个节点各算个的切分点)。对于这样的模型,是否标准化理论上不会改变最优解。但是,由于实际求解往往使用迭代算法,如果目标函数的形状太“扁”,迭代算法可能收敛得很慢甚至不收敛。所以对于具有伸缩不变性的模型,最好也进行数据标准化。但SVM则必须进行归一化。同的模型对特征的分布假设是不一样的。比如SVM 用高斯核的时候,所有维度共用一个方差,这不就假设特征分布是圆的么,输入椭圆的就坑了人家。
除此之外,如果feature的scale相差很大,则会出现scale越大的feature,对模型的影响越大。比如对于multivariate regression, 极端情况下, 有一个特征的值特别特别大,其他特征的值都特别特别小,那么cost function就被这个特别大的特征主导,甚至退化为univariate。即feature scale相差很大,线性回归模型得优化结果也会受到影响。
也需要注意的是,各维分别做归一化会丢失各维方差这一信息,但各维之间的相关系数可以保留
三、标准化方法
是否应该做数据标准化,用哪种标准化的方法,更多的是源于一种经验和尝试。
如果你长期做某个行业的某几类数据挖掘需求,自然知道选用哪种算法好,用什么标准化方法更优。这需要时间的积累,需要对数据挖掘的热情来支撑。
当然,也可以先做个较为合理的抽样(更倾向于分层抽样),比较不做数据标准化和做了数据标准化的效果,比较不同数据标准化方法之间的效果。毕竟数据总是多种多样,如果企业BI做得好,数据质量本身就高了,那其实可以偷一下懒的。反之,就多下功夫做好数据与处理,把数据打磨好了再放进模型里。方法有如下:
y=(x-MinValue)/(MaxValue-MinValue)
说明:x、y分别为转换前、后的值,MaxValue、MinValue分 别为样本的最大值和最小值。
2、对数函数转换,表达式如下:
y=log10(x)
说明:以10为底的对数函数转换。
3、反余切函数转换,表达式如下:
y=atan(x)*2/PI
4、式(1)将输入值换算为[-1,1]区间的值,在输出层用式(2)换算回初始值,其中 和分别表示训练样本集中负荷的最大值和最小值。
在统计学中,归一化的具体作用是归纳统一样本的统计分布性。归一化在0-1之间是统计的概率分布,归一化在-1--+1之间是统计的坐标分布。
方法很多,min-max,z-score,p范数等
http://www.zhihu.com/question/37129350/answer/70640800
http://www.zhihu.com/question/30038463/answer/50491149
为什么要特征标准化及特征标准化方法相关推荐
- 机器学习——特征工程——数据的标准化(Z-Score,Maxmin,MaxAbs,RobustScaler,Normalizer)
数据标准化是一个常用的数据预处理操作,目的是处理不同规模和量纲的数据,使其缩放到相同的数据区间和范围,以减少规模.特征.分布差异等对模型的影响. 比如线性回归模型.逻辑回归模型或包含矩阵的模型,它们会 ...
- 归一化MinMaxScaler()、标准化StandardScaler()(特征工程之特征预处理)
文章目录 一.什么是特征预处理? 二.特征预处理常用方法:归一化.标准化 1.标准化MinMaxScaler() 1.1 归一化举例 1.2 归一化使用局限 2.标准化StandardScaler() ...
- 特征工程特征预处理归一化与标准化、鸢尾花种类预测代码实现
一.特征预处理 特征工程目的:把数据转换成机器更容易识别的数据 scikit-learn:提供几个常见的实用程序函数和转换器类,以将原始特征向量更改为更适合下游估计器的表示形式.即通过一些转换函数将特 ...
- 机器学习特征工程之特征缩放+无量纲化:数据标准化(StandardScaler)
机器学习特征工程之特征缩放+无量纲化:数据标准化(StandardScaler) 在Andrew Ng的机器学习课程里面,讲到使用梯度下降的时候应当进行特征缩放(Feature Scaling).进行 ...
- ML之FE:数据处理—特征工程之特征三化(标准化【四大数据类型(数值型/类别型/字符串型/时间型)】、归一化、向量化)简介、代码实现、案例应用之详细攻略
ML之FE:数据处理-特征工程之特征三化(标准化[四大数据类型(数值型/类别型/字符串型/时间型)].归一化.向量化)简介.代码实现.案例应用之详细攻略 目录 真正意义的标准化与归一化 1.标准化/Z ...
- python预处理标准化_tensorflow预处理:数据标准化的几种方法
tensorflow预处理:数据标准化的几种方法 发布时间:2018-08-09 19:39, 浏览次数:1774 , 标签: tensorflow 数据归一化问题是数据挖掘中特征向量表达时的重要问题 ...
- 情绪识别的多模态特征,分类器和融合方法研究
Investigation of Multimodal Features, Classifiers and Fusion Methods for Emotion Recognition(情绪识别的多模 ...
- python 离散化_利用Python将数值型特征进行离散化操作的方法
利用Python将数值型特征进行离散化操作的方法 如下所示: data = np.random.randn(20) factor = pd.cut(data,4) pd.get_dummies(fac ...
- 特征工程——连续特征与离散特征处理方法
特征的标准化(归一化) 连续特征 z-score标准化:这是最常见的特征预处理方式,基本所有的线性模型在拟合的时候都会做 z-score标准化.具体的方法是求出样本特征x的均值mean和标准差st ...
- 【图像处理】——特征匹配(SIFT特征检测器+FLANN特征匹配方法+KNN近邻最优匹配筛选)——cv.xfeatures2d.SIFT_create()sift.detectAndCompute
转载请注明地址 目录 1.特征检测和特征匹配方法 (1)特征检测算法 (2)特征匹配算法 (3)各种特征检测算法的比较 2.特征匹配的基本步骤(附带主要的函数) (1)图像预处理--灰度化(模板--查 ...
最新文章
- PMCAFF | 产品经理如何设计敏捷开发流程?
- 【jetson nano】 aarch64安装pycharm pytorch cuda
- Git.之.最小化配置
- because the principal dbo does not exist 问题解决方法
- Java获取方法信息(某一函数,方法也是一个对象)
- 移动开发解决方案之玩转输入框
- ORM中的事务和锁、Ajax异步请求和局部刷新、Ajax文件上传、日期时间类型的Json、多表查询图书系统
- java range注解_最全的Java Spring注解
- altium09怎么查元器件_在AD09中查找元件和封装
- 如何卸载2345soft文件夹
- java最新全套学习视频(java,前端,其他语言)
- 小程序京东首页底部导航栏代码
- js获取地理位置的经纬度
- 现货跟期货有什么区别(现货和期货交易区别)
- [BZOJ3837][Pa2013][随机][乱搞]Filary
- 怎么恢复360强力删除的文件?数据恢复这样做
- c语言中max代表什么,什么是C中的DBL_MAX?
- Java登录界面的实现(注册、登录、背景图片)
- 20180402-D · US Tuition Costs · ggplot2 geofacet 按地理位置分面的数据可视化 · R 语言数据可视化 案例 源码
- 方舟生存进化助手隐私政策条款
热门文章
- 周志华 《机器学习初步》模型评估与选择
- 【C++】字符串子串的系列问题
- android仿微信红包动画,Android仿微信打开红包动画(逐帧动画)
- 微信公众平台模版消息
- Windows实现微信双开
- qq邮箱收信服务器imap,普通IMAP、POP邮箱的设置 教你使用iPhone邮件客户端管理QQ邮箱...
- 没做好这些准备,千万不要婚前同居!!
- JTAG、JLink、ULINK、ST-LINK仿真器区别
- Mac在有S.M.A.R.T错误的情况下安装OSX系统
- 多核CPU的运行模式详解