均值归一化_数据归一化(Feature Scaling)

一、为什么要进行归一化?

举个例子,我们统计了一张表,上面统计了行人的属性:身高(cm)、年龄(岁)【暂且就两个属性】,现在我们要计算各个行人之间的欧式距离。如果大家年龄都差不多,这时候欧氏距离的大小就被身高这一属性所支配了,比如两个人都是 20 岁,一个人 160cm,另一个人 190 cm。很显然,我们需要将这些量纲不同的属性数据映射到同一个尺度空间中,这就是归一化

二、归一化的方式

2.1 最值归一化 (normalization)

定义:把所有数据映射到 0-1 之间。

计算公式:

适用情况:适用于分布有明显边界的情况,但受 outlier 值的影响比较大。这个可以从公式的分母这一项进行理解,如果

相差很大并且整个数据样本中
这种极端样本比较少,那你会发现数据分布还是不均衡,接近于 1 的值在值为
这些特征中,接近于 0 的值在值为
的这些特征中。

2.2 均值方差归一化 (standardization)

定义:把同一特征的数据归一化到均值为 0 方差为 1 的分布中。

计算公式:

(s 代表某一特征的方差)

适用情况:数据分布没有明显的边界;有可能存在极端数据值。通常这种归一化方式适用于所有情况。

三:参考资料(强烈推荐下面这位慕课网老师的课程,他的每门课质量都很高,知识细节讲的很到位)

代码地址:

liuyubobobo/Play-with-Machine-Learning-Algorithms​github.com

参考课程:

Python3入门机器学习_经典算法与应用-慕课网实战​coding.imooc.com

你可能感兴趣的:(均值归一化)