Overview

在数据挖掘工作中,往往需要对得到的特征向量进行数据预处理。其中有重要的一步就是标准化(Normalization),也叫“归一化”。其目的就是为了放置得到的多个特征量纲差距过大,从而影响精度,而且也能是模型收敛速度加快。而归一化的方式一般有下面两种。更多详细内容参考维基百科:Normalization (statistics)

1.1 重新缩放法

这个是最简单的标准化方法,而且是线性的。公式如下:

$$ X^{'}=a+\left ( b-a \right )\frac{X-X_{min}}{X_{max}-X_{min}} $$

其中 $a$ 和 $b$ 分别表示缩放的下限和上限,输入数据和输出数据,原矩阵中最小值和最大值分别由 $X,X^{'},X_{min},X_{max}$ 表示。

1.2 标准化方法

标准化方法有一个好处:python里面的numpy包中有求矩阵均值,标准差等统计参数的函数,很方便。

$$ x^{'}=\frac{x-\bar{x}}{\sigma } $$

其中,$x,\bar{x},\sigma ,x^{'}$ 分别表示原矩阵中需要归一化的输入数据,原矩阵数据的均值,原矩阵数据的标准差,归一化后的输出数据。