机器学习:数据预处理
数据预处理包括3个方面:特征尺度归一化、降维、特征选择。下面我们将一一介绍。
1 特征尺度归一化
在多个特征面前,我们要确保特征在相同的尺度内,也就是说,每个特征值的数量级不能相差过大,或者说,要尽量保证每个特征值的数量级一致。对于未归一化的数据集,如果我们做梯度下降,可能会出现收敛过慢的情况。
下面两幅图分别是归一化前和归一化后损失函数的状态(
x
1
x_1
x1和
x
2
x_2
x2分别是两个特征,
0
<
x
1
<
2000
,
1
<
x
2
<
5
0<x_1<2000,1<x_2<5
0<x1<2000,1<x2<5):
1.1 范围归一化
对于某个特征向量
x
x
x,进行范围归一化后:
x
′
=
x
−
m
i
n
(
x
)
m
a
x
(
x
)
−
m
i
n
(
x
)
\pmb{x'}=\frac{\pmb{x}-min(\pmb{x})}{max(\pmb{x})-min(\pmb{x})}
x′x′x′=max(xxx)−min(xxx)xxx−min(xxx)
1.2 中心化
对于某个特征向量
x
x
x,进行中心化后:
x
′
=
x
−
x
‾
\pmb{x'}=\pmb{x}-\overline{\pmb{x}}
x′x′x′=xxx−xxx
1.3 标准化
对于某个特征向量
x
x
x,进行标准化后:
x
′
=
x
−
x
‾
σ
\pmb{x'}=\frac{\pmb{x}-\pmb{\overline{x}}}{\pmb{\sigma}}
x′x′x′=σσσxxx−xxx
2 降维
主成分分析(Principal Component Analysis):