数据如何归一化 类型

为什么要归一化呢

1.归一化后可加快 梯度下降求最优解的速度

数据如何归一化 类型
上图中,蓝色的圈圈代表的是两个特征的等高线。其中左图两个特征X1和X2的区间相差非常大,X1区间是[0,2000],X2区间是[1,5],像这种有的数据那么大,有的数据那么小,两类之间的幅度相差这么大,其所形成的等高线非常尖。当使用梯度下降法寻求最优解时,很有可能走“之字型”路线(垂直等高线走),从而导致需要迭代很多次才能收敛;甚至不能收敛。
而右图对两个原始特征进行了归一化,其对应的等高线显得很圆,在梯度下降进行求解时能较快的速度进行收敛。

2. 归一化有可能提高 精度。

一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。

 3.归一化类型

  • 线性归一化

数据如何归一化 类型

这种归一化方法比较适用在数值比较集中的情况。这种方法有个缺陷,如果max和min不稳定,很容易使得归一化结果不稳定,使得后续使用效果也不稳定。实际使用中可以用 经验常量值 来替代max和min。

  • 标准差标准化

经过处理的数据符合标准正态分布,即均值为0,标准差为1,其转化函数为:

数据如何归一化 类型

其中μ为所有样本数据的 均值,σ为所有样本数据的 标准差。

  • 非线性归一化

经常用在 数据分化比较大 的场景,有些数值很大,有些很小。通过一些数学函数,将原始值进行映射。该方法包括 log、指数,正切等。需要根据数据分布的情况,决定非线性函数的曲线,比如log(V, 2)、log(V, 10)等。