-
原理
-
归一化:1)把数据变成(0,1)之间的小数。主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速。2)把有量纲表达式变成无量纲表达式,便于不同单位或量级的指标能够进行比较和加权。归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。
-
标准化:在机器学习中,我们可能要处理不同种类的资料,例如,音讯和图片上的像素值,这些资料可能是高维度的,资料标准化后会使每个特征中的数值平均变为0(将每个特征的值都减掉原始资料中该特征的平均)、标准差变为1,即满足标准正太分布这个方法被广泛的使用在许多机器学习算法中(例如:支持向量机、逻辑回归和类神经网络)。
-
为什么
-
归一化/标准化实质是一种线性变换,性质决定了对数据改变后不会造成“失效”,反而能提高数据的表现,这些性质是归一化/标准化的前提。比如有一个很重要的性质:线性变换不会改变原始数据的数值排序。
-
1)在使用梯度下降的方法求解最优化问题时, 归一化/标准化后可以加快梯度下降的求解速度,即提升模型的收敛速度。如左图所示,未归一化/标准化时形成的等高线偏椭圆,迭代时很有可能走“之”字型路线(垂直长轴),从而导致迭代很多次才能收敛。而如右图对两个特征进行了归一化,对应的等高线就会变圆,在梯度下降进行求解时能较快的收敛。
-
(2)一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。
-
(3)无量纲化 文本数据中得问题
-
例如房子数量和收入,因为从业务层知道,这两者的重要性一样,所以把它们全部归一化。 这是从业务层面上作的处理。
-
多维特征 如果不知道谁重要 怎么处理就会两难.
-
(4)避免数值问题
-
太大的数会引发数值问题。
-
5 什么时候用归一化?什么时候用标准化?
-
(1)如果对输出结果范围有要求,用归一化。
-
(2)如果数据较为稳定,不存在极端的最大最小值,用归一化。
-
(3)如果数据存在异常值和较多噪音,用标准化,可以间接通过中心化避免异常值和极端值的影响。
-
个人经验一般先采用标准化 事物普遍都服从高斯分布 (图神经网络)
-
不归一化标准化得影响 对 W BIAS 梯度会变得非常大 以及学习率必须非常小 时间就会很久.
机器学习-归一化、标准化理论笔记
最新推荐文章于 2023-06-30 09:33:19 发布