归一化和标准化本质上都是一种线性变换。线性变换保持线性组合与线性关系式不变,这保证了特定模型不会失效。机器学习
归一化通常是将数据映射到指定的范围,用于去除不一样维度数据的量纲以及量纲单位。学习
常见的映射范围有 [0, 1] 和 [-1, 1] ,最多见的归一化方法就是 Min-Max 归一化:翻译
举个例子,判断一我的的身体情况是否健康,那么咱们会采集人体的不少指标,好比说:身高、体重、红细胞数量、白细胞数量等。3d
一我的身高 180cm,体重 70kg,白细胞计数 orm
衡量两我的的情况时,白细胞计数就会起到主导做用从而遮盖住其余的特征,归一化后就不会有这样的问题。blog
英文翻译的问题:io
归一化和标准化的英文是一致的,可是根据其用途(或公式)的不一样去理解(或翻译)方法
最多见的标准化方法: Z-Score 标准化im
标准化的输出范围不受限制,对异常值有更好的处理d3
其中 是样本数据的均值(mean),
是样本数据的标准差(std)。
上图则是一个散点序列的标准化过程:原图->减去均值->除以标准差
归一化和标准化的本质都是缩放和平移,他们的区别直观的说就是归一化的缩放是 “拍扁” 统一到区间(0-1),而标准化的缩放是更加 “弹性” 和 “动态” 的,和总体样本的分布有很大的关系。
常见的归一化方法:
常见的标准化方法:
从输出范围角度来看, 归一化的输出结果必须在 0-1 间。而标准化的输出范围不受限制,一般状况下比归一化更广
通常状况下,若是对输出结果范围有要求,用归一化
若是数据较为稳定,不存在极端的最大最小值,用归一化
若是数据存在异常值和较多噪音,用标准化,能够间接经过中心化避免异常值和极端值的影响
在机器学习中,标准化是更经常使用的手段,归一化的应用场景是有限的,缘由就在于两者的区别: