📜  归一化和非归一化的区别(1)

📅  最后修改于: 2023-12-03 15:39:32.552000             🧑  作者: Mango

归一化和非归一化的区别

在机器学习中,归一化是一种常见的数据预处理方法,其通过缩放样本特征的范围,将值域缩小到相同的范围内,以便更好地进行模型训练。而非归一化则不对数据进行任何缩放处理。

归一化

归一化可以将原有特征值 $x$ 缩放到一个新的区间 $[0,1]$ 中,通常使用以下公式:

$$ x' = \frac{x - \min(x)}{\max(x) - \min(x)} $$

其中 $\min(x)$ 和 $\max(x)$ 分别为特征值 $x$ 的最小值和最大值。

除了 $[0,1]$,还可以选择 $[-1,1]$ 等其它区间。

对于样本数据存在较大差异的情况,进行归一化处理可以保证模型更加稳定,提高模型的精度和稳定性。

常见的归一化方法
  1. 最小-最大规范化
  2. 平均值归一化
  3. 标准差归一化
非归一化

对于一些线性模型,例如线性回归、逻辑回归等,如果特征值之间的差异较大,则很难训练出一个高效的模型。此时,可以选择非归一化处理,保持原始特征值不变。

什么时候选择非归一化?
  1. 字符串、编码等无法转化为数值类型的特征。例如城市名称、邮编等。
  2. 特征值本身就已经是归一化处理的结果,例如百分比等。
  3. 对于一些树模型,例如决策树、随机森林等,通常不需要归一化。
总结

归一化和非归一化在数据预处理中都有其适用的场景。对于存在较大差异的样本数据,可以选择归一化以保证模型的稳定性和精度;对于一些不需要进行缩放处理的特征,可以选择非归一化以保持其原有特性。

参考资料:

[1] 周志华,《机器学习》

[2] 《深度学习入门实战》,何之源等著