规范化包括标准化、正则化、归一化
“规范化”(normalization)是将不同变化范围的值映射到相同的固定范围中,常见的是[0,1],此时亦称“归一化”
规范化定义的操作很广,一个数据集随便加减某个数(shift),随便乘除某个数(scale),或者这两个操作进行组合,都可以是规范化。
标准化(standardization):将数据处理成均值为0,方差为1的一批数据,处理后数据的取值范围是 ( + ∞ , − ∞ ) \left (+\infty, -\infty \right ) (+∞,−∞)
归一化(normaliation):是将数据的范围归整到(0,1)或者(-1,1)。
归一化与标准化分别应何时使用:
(1)如果对输出结果范围有要求,用归一化。
(2)如果数据较为稳定,不存在极端的最大最小值,用归一化。
(3)如果数据存在异常值和较多噪音,用标准化,可以间接通过中心化避免异常值和极端值的影响。
归一化和标准化都属于四种Feature scaling(特征缩放):
Rescaling(min-max normalization):
x
′
=
x
−
m
i
n
(
x
)
m
a
x
(
x
)
−
m
i
n
(
x
)
{x}'=\frac{x-min\left ( x \right )}{max\left ( x \right )-min\left ( x \right )}
x′=max(x)−min(x)x−min(x)
Mean normalization :
x
′
=
x
−
m
e
a
n
(
x
)
m
a
x
(
x
)
−
m
i
n
(
x
)
{x}'=\frac{x-mean\left ( x \right )}{max\left ( x \right )-min\left ( x \right )}
x′=max(x)−min(x)x−mean(x)
Standardization(Z-score normalization):
x
′
=
x
−
m
e
a
n
(
x
)
σ
{x}'=\frac{x-mean\left ( x \right )}{\sigma }
x′=σx−mean(x)
Scaling to unit length :
x
′
=
x
∣
∣
x
∣
∣
{x}'=\frac{x}{||x|| }
x′=∣∣x∣∣x
注意:
(batch normalization,BN)先使得mini-batch的均值为0方差为1,这明明是标准化standardization,BN的论文却也将其称为normalization。所以,正如前边所说,使得均值为0,方差为1,其实就是shift和scale的组合操作,是normalization的一种。