前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >特征归一化:Why?How?When?

特征归一化:Why?How?When?

作者头像
量化投资与机器学习微信公众号
发布2019-05-14 16:32:32
7090
发布2019-05-14 16:32:32
举报

在使用某些算法时,特征缩放可能会使结果发生很大变化,而在其他算法中影响很小或没有影响。为了理解这一点,让我们看看为什么需要特征缩放、各种缩放方法以及什么时候应该缩放。

Why

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

如果不加考虑这些,这些算法只考虑特征的大小而忽略了单位。 5kg和5000gms,结果会有很大差异。具有高幅度的特征在距离计算中将比具有低幅度的特征更重要!

How

有四种常用的方法来执行特性缩放。

Standardisation

重新分配的特征意味着μ=0和标准差σ=1。sklearn.preprocessing.scale帮助我们在python中实现标。

Mean Normalisation

归一化后,值在1和1之间,μ=0。

Min-Max

归一化后,值在0和1之间。

Unit Vector

考虑到整个特征结构的单位长度,进行缩放。

Min-Max 和Unit Vector的值范围均为[0,1]。当处理带有规定边界的特征时,这非常有用。例如,在处理图像数据时,颜色的范围只能从0到255。

When

我们遵循的经验法则是计算距离或假设正态性的任何算法。

一些算法的例子:

1、使用欧氏距离度量的KNN对大小很敏感,因此应该对所有特征进行缩放,使其权重相等。

2、在执行主成分分析(PCA)时,缩放是至关重要的。主成分分析试图得到方差最大的特征,对于高幅值特征,方差较大。这使得PCA倾向于高幅值特征。

3、我们可以通过缩放来加速梯度下降。这是因为θ将在小范围内快速下降并且在大范围内缓慢下降,因此当变量非常不均匀时,将无效地振荡到最佳值。

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

5、像线性判别分析(LDA)、朴素贝叶斯(Naive Bayes)这样的算法可以通过设计来处理这一问题并相应地赋予这些特征权重。在这些算法中执行特征缩放可能没有太大影响。

—End—

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量化投资与机器学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档