特征归一化

为了消除数据特征之间的量纲影响, 我们需要对特征进行归一化处理, 使得不同指标之间具有可比性。

对数值类型的特征做归一化可以将所有的特征都统一到一个大致相同的数值区间内。 最常用的方法主要有以下两种。

线性函数归一化(Min-Max Scaling) 。 它对原始数据进行线性变换, 使结果映射到[0, 1]的范围, 实现对原始数据的等比缩放。 归一化公式如下 :

\[X_{\mathrm{nom}}=\frac{X-X_{\mathrm{min}}}{X_{\mathrm{max}}-X_{\mathrm{min}}} \]

其中\(X\)为原始数据, \(X_{\max }\)\(X_{\min }\)分别为数据最大值和最小值。

零均值归一化(Z-Score Normalization) 。 它会将原始数据映射到均值为0、 标准差为1的分布上。 具体来说, 假设原始特征的均值为\(\mu\)、 标准差为\(\sigma\), 那么归一化公式定义为 :

\[z=\frac{x-\mu}{\sigma} \]

假设有两种数值型特征,\(x_{1}\)的取值范围为 [0, 10],\(x_{2}\)的取值范围为[0, 3]。

在学习速率相同的情况下,\(x_{1}\)的更新速度会大于\(x_{2}\), 需要较多的迭代才能找到最优解。

如果将 \(x_{1}\)\(x_{2}\) 归一化到相同的数值区间后, 优化目标的等值图会变成圆形。\(x_{1}\)\(x_{2}\) 的更新速度变得更为一致, 容易更快地通过梯度下降找到最优解。

posted @ 2019-04-21 15:47  youngliu91  阅读(908)  评论(0)    收藏  举报