特征缩放(Feature Scaling)
特征缩放的几种方法:
(1)最大最小值归一化(min-max normalization):将数值范围缩放到 [0, 1] 区间里

(2)均值归一化(mean normalization):将数值范围缩放到 [-1, 1] 区间里,且数据的均值变为0

(3)标准化 / z值归一化(standardization / z-score normalization):将数值缩放到0附近,且数据的分布变为均值为0,标准差为1的标准正态分布(先减去均值来对特征进行 中心化 mean centering 处理,再除以标准差进行缩放)

(4)最大绝对值归一化(max abs normalization ):也就是将数值变为单位长度(scaling to unit length),将数值范围缩放到 [-1, 1] 区间里

(5)稳键归一化(robust normalization):先减去中位数,再除以四分位间距(interquartile range),因为不涉及极值,因此在数据里有异常值的情况下表现比较稳健

* 有一些时候,只对数据进行中心化和缩放是不够的,还需对数据进行白化(whitening)处理来消除特征间的线性相关性。
归一化和标准化的区别:
归一化(normalization):归一化是将样本的特征值转换到同一量纲下,把数据映射到[0,1]或者[-1, 1]区间内。
标准化(standardization):标准化是将样本的特征值转换为标准值(z值),每个样本点都对标准化产生影响。
为什么要进行特征缩放?
1. 统一特征的权重&提升模型准确性
如果某个特征的取值范围比其他特征大很多,那么数值计算(比如说计算欧式距离)就受该特征的主要支配。但实际上并不一定是这个特征最重要,通常需要把每个特征看成同等重要。归一化/标准化数据可以使不同维度的特征放在一起进行比较,可以大大提高模型的准确性。
2. 提升梯度下降法的收敛速度
在使用梯度下降法求解最优化问题时, 归一化/标准化数据后可以加快梯度下降的求解速度。
具体使用哪种方法进行特征缩放?
在需要使用距离来度量相似性的算法中,或者使用PCA技术进行降维的时候,通常使用标准化(standardization)或均值归一化(mean normalization)比较好,但如果数据分布不是正态分布或者标准差非常小,以及需要把数据固定在 [0, 1] 范围内,那么使用最大最小值归一化(min-max normalization)比较好(min-max 常用于归一化图像的灰度值)。但是min-max比较容易受异常值的影响,如果数据集包含较多的异常值,可以考虑使用稳键归一化(robust normalization)。对于已经中心化的数据或稀疏数据的缩放,比较推荐使用最大绝对值归一化(max abs normalization ),因为它会保住数据中的0元素,不会破坏数据的稀疏性(sparsity)。
哪些机器学习模型必须进行特征缩放?
通过梯度下降法求解的模型需要进行特征缩放,这包括线性回归(Linear Regression)、逻辑回归(Logistic Regression)、感知机(Perceptron)、支持向量机(SVM)、神经网络(Neural Network)等模型。此外,近邻法(KNN),K均值聚类(K-Means)等需要根据数据间的距离来划分数据的算法也需要进行特征缩放。主成分分析(PCA),线性判别分析(LDA)等需要计算特征的方差的算法也会受到特征缩放的影响。
决策树(Decision Tree),随机森林(Random Forest)等基于树的模型不需要进行特征缩放,因为特征缩放不会改变样本在特征上的信息增益。
进行特征缩放的注意事项:
参考:http://sklearn.lzjqsdd.com/modules/preprocessing.html
https://sebastianraschka.com/Articles/2014_about_feature_scaling.html
https://scikit-learn.org/stable/modules/preprocessing.html#preprocessing-scaler
特征缩放(Feature Scaling)的更多相关文章
- (一)线性回归与特征归一化(feature scaling)
线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系.回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题 ...
- CS229 1 .线性回归与特征归一化(feature scaling)
线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系.回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题 ...
- 斯坦福大学公开课机器学习:梯度下降运算的特征缩放(gradient descent in practice 1:feature scaling)
以房屋价格为例,假设有两个特征向量:X1:房子大小(1-2000 feets), X2:卧室数量(1-5) 关于这两个特征向量的代价函数如下图所示: 从上图可以看出,代价函数是一个又瘦又高的椭圆形轮廓 ...
- 机器学习中的特征缩放(feature scaling)
参考:https://blog.csdn.net/iterate7/article/details/78881562 在运用一些机器学习算法的时候不可避免地要对数据进行特征缩放(feature sca ...
- 131.006 Unsupervised Learning - Feature Scaling | 非监督学习 - 特征缩放
@(131 - Machine Learning | 机器学习) 1 Feature Scaling transforms features to have range [0,1] according ...
- Machine Learning--week2 多元线性回归、梯度下降改进、特征缩放、均值归一化、多项式回归、正规方程与设计矩阵
对于multiple features 的问题(设有n个feature),hypothesis 应该改写成 \[ \mathit{h} _{\theta}(x) = \theta_{0} + \the ...
- Feature Scaling
定义:Feature scaling is a method used to standardize the range of independent variables or features of ...
- 浅谈Feature Scaling
浅谈Feature Scaling 定义:Feature scaling is a method used to standardize the range of independent variab ...
- Feature Scaling深入理解
Feature Scaling 可以翻译为特征归一化,或者数据归一化,比如统计学习中,我们一般都会对不同量纲的特征做归一化,深度学习中经常会谈到增加的BN层,LRN层会带来训练收敛速度的提升,等等.问 ...
随机推荐
- linux上文件的上传和下载
现整理一篇linux上文件的上传和下载 第一种方式就是在windos上安装工具 如: 工具如何使用我就不赘述了,easy 第二种方式就是使用liux的命令(首先是文件上传) 上传文件(首先创建文件夹如 ...
- sleep方法动态打印 C语言
#include<Windows.h> #include<stdio.h> #include<stdlib.h> #include<string.h> ...
- ConcurrentDictionary,ConcurrentStack,ConcurrentQueue
static void Main(string[] args) { var concurrentDictionary = new ConcurrentDictionary<int, string ...
- pandas.to_datetime() 只保留【年-月-日】
Outline pandas.to_datetime() 生成的日期会默认带有 [2019-07-03 00:00:00]的分钟精度:但有时并不需要这些分钟精度: 去掉分钟精度 可以通过pandas ...
- Java实现树的遍历以及打印(递归,非递归)
import java.util.LinkedList; import java.util.Stack; public class BinarySearchTree1<E extends Com ...
- Excel 2010同时打开2个或多个独立窗口
亲测有效 参考下面的网址 https://jingyan.baidu.com/article/86fae346acca7d3c49121ad4.html 1. 在win+r 输入框里面输入“rege ...
- MySQLNonTransientConnectionException: Could not create connection to database server.
MySQLNonTransientConnectionException: Could not create connection to database server. Spring整合mybati ...
- Sublime Text3的安装(package control error 或者 there are no package available for installation等问题)
Sublime是一款非常好用的代码编辑器.Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,多种语言的插件,代码段等.还可自定义键绑定,菜单和工具栏.Sublime Text 的 ...
- unity shader入门(四):高光
高光反射计算公式(phong模型)Cspecular=(Clight*Mspecular)max(0,v*r)mgloss mgloss为材质的官泽度,也成反射度,控制高光区域亮点有多大 Mspecu ...
- robotframe添加自定义lib 报Importing test library ‘xxxx’ failed
问题现象:在linux服务器上搭建jenkins 执行robot工程时报:Importing test library ‘xxxx’ failed 问题分析一: 在library 引入非rob ...