小白学习笔记之特征缩放

计算机视觉与机器学习 2021-11-09

机器学习算法

861 字丨阅读本文需 3 分钟

专注于计算机视觉与机器学习知识分享

编者荐语

特征缩放(Feature Scaling)是将不同特征的值量化到同一区间的方法,也是预处理中容易忽视的关键步骤之一。除了极少数算法(如决策树和随机森林)之外,大部分机器学习和优化算法采用特征缩放后会表现更优。因为在原始的资料中,各变数的范围大不相同。

1. 为什么要做特征缩放

统一特征的权重&提升模型准确性

如果某个特征的取值范围比其他特征大很多,那么数值计算(比如说计算欧式距离)就受该特征的主要支配。但实际上并不一定是这个特征最重要,通常需要把每个特征看成同等重要。归一化/标准化数据可以使不同维度的特征放在一起进行比较,可以大大提高模型的准确性。

提升梯度下降法的收敛速度

在使用梯度下降法求解最优化问题时, 归一化/标准化数据后可以加快梯度下降的求解速度。


zigzag

大多数情况下,你的数据集将包含在大小、单位和范围上差别很大的特征。但是,由于大多数机器学习算法在计算中使用两个数据点之间的欧氏距离,这会是一个问题。

不同单位之间的处理

如果不加考虑,这些算法只考虑特征的大小而忽略了单位。在5kg和5000gms不同的单元之间,结果会有很大的差异。在距离计算中,大尺度的特征比小尺度的特征要重要得多。

为了抑制这种效果,我们需要将所有特征都处理成相同的级别。这可以通过缩放来实现。

2.如何对特征进行缩放

有4中常用的方法可以来做特征的缩放。

3.什么时候进行特征缩放

k-最近邻具有欧氏距离度量,对大小敏感,因此应该对所有特征进行缩放,使其尺度相同。

主成分分析(PCA),缩放是关键。主成分分析试图得到方差最大的特征,对于高幅值特征,方差较大。这使得PCA倾向于高幅值特征。

梯度下降可以通过缩放进行加速。这是因为θ在小尺度上会下降的很快,在大尺度上会很慢,所以,变量尺度不均匀的时候,在最优化的路径上会有震荡(折线型),效率下降。

基于树的模型不是基于距离的模型,可以处理不同范围的特性。因此,建模树时不需要缩放。

线性判别分析(LDA)、朴素贝叶斯等算法设计的时候就准备好了处理这一问题,并相应地赋予特征权重。在这些算法中执行特征缩放可能没有多大效果。

部分内容来源于网络,如果侵权请联系删除。由于文章本身的笔记属性,可能除了大致的逻辑,或多或少的会引入一些小错误,如果发现错误可以及时指出,以免由于作者的水平有限而误导他人。

免责声明:凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处本网。非本网作品均来自其他媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如您发现有任何侵权内容,请依照下方联系方式进行沟通,我们将第一时间进行处理。

0赞 好资讯,需要你的鼓励
来自:计算机视觉与机器学习
0

参与评论

登录后参与讨论 0/1000

为你推荐

加载中...