机器学习为什么使用归一化? 有哪些归一化算法?

一、归一化的基本介绍

1. Why 归一化?

一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。或者举一个更浅显的例子:对房子进行分类判定时,我们考虑的因素有很多,比如:价格,面积。价格一般是800000元,面积一般是60㎡,如果直接使用数据集中这两个特征的原始数据进行训练的话,很明显,算法会向价格这个特征进行便宜,也就是说,机器学习算法更可能地会认为价格是决定房子质量的决定性因素,这显然是不合理的。因此,很多时候,我们需要对数据进行预处理操作,其中一个步骤就是特征归一化。
还可以从梯度下降的角度来理解,当两个特征的量纲差别很大时,损失函数呈扁平的椭圆形,梯度下降时会非常曲折;当两个特征归一化到相同的量纲与范围时,Loss可能接近圆形,而梯度的方向沿切线方向,优化过程比较简单。也就是说,量纲差别非常大时,往往需要更更更多的epoch才能达到较好的效果。
机器学习为什么使用归一化? 有哪些归一化算法?_第1张图片

2. 归一化、标准化、中心化

(1)归一化

归一化:把数变为(0,1)之间的小数。归一化公式如下:
<

你可能感兴趣的:(算法,人工智能,归一化)