您的位置:首页 > 其它

[每日问答]归一化的作用是什么?

2017-05-10 17:37 232 查看

一:定义

标准化是将不同变化范围的值映射到相同的固定范围中,常见的是 [0,1],此时亦称归一化,也可以是[-1,1]范围。

二:形式

1.min-max标准化

也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0 - 1]之间。转换函数如下:





2.Z-score标准化方法

这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:





三.归一化作用

1.无量纲化
例如房子数量和收入,从业务层知道这两者的重要性一样,所以把它们全部归一化,这是从业务层面上作的处理。

2.避免数值问题
不同的数据在不同列数据的数量级相差过大的话,计算起来大数的变化会掩盖掉小数的变化。

3.一些模型求解的需要
例如梯度下降法,如果不归一化,当学习率较大时,求解过程会呈之字形下降。学习率较小,则会产生直角形路线,不管怎么样,都不会是好路线。

4.时间序列
进行log分析时,会将原本绝对化的时间序列归一化到某个基准时刻,形成相对时间序列,方便排查。

5.收敛速度
加快求解过程中参数的收敛速度。

四:例子

假设有两个变量,都是均匀分布,x1范围是[10000,20000],x2范围是[1,2]。有很多处于同一直线上的点,我们称这条直线为L。如果现在我们要做一个分类的话,x2几乎可以被忽略,x2很无辜的被干掉了,仅仅因为所谓量纲的问题。即便x2不被干掉,现在继续求解,来做梯度下降。 很显然,如果某一步我们求得的下降方向不在直线L上,几乎可以肯定肯定这步不会下降。这就会导致不收敛,或者收敛很慢。

五:参考文献

1.http://www.cnblogs.com/chaosimple/archive/2013/07/31/3227271.html
2.https://www.zhihu.com/question/20455227
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: