哪种标准化方法,最小-最大或z缩放(零平均单位方差),最适合深度学习?

问题描述 投票:0回答:1

我有代表相对计数(0.0-1.0)的数据,如下例所示。用公式

计算
cell value(E.g.23)/sum of the colum(E.g. 1200)  = 0.01916

示例数据

 f1       f2         f3        f5        f6      f7      f8     class  
0.266    0.133     0.200     0.133    0.066    0.133    0.066     1 
0.250    0.130     0.080     0.160    0.002    0.300    0.111     0 
0.000    0.830     0.180     0.016    0.002    0.059    0.080     1
0.300    0.430     0.078     0.100    0.082    0.150    0.170     0

在应用深度学习算法之前,我删除了显示高相关性的特征。

归一化时我很困惑,哪种方法在模型生成之前是正确的。

  1. 直接使用数据,因为数据已经缩放(0.0-1.0)。
  2. 执行最小-最大缩放(https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MinMaxScaler.html
  3. 执行(https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html

因为,当我使用经典监督算法时,最小-最大和z缩放可提高性能。但是在使用“ TensorFlow-GPU”进行深度学习的情况下,我看不到两者之间有任何显着差异。

谢谢。

machine-learning deep-learning normalization tensorflow-datasets
1个回答
0
投票

当数据大致呈正态分布时,z缩放是一个好主意,通常是这种情况。

最小-最大缩放是正确的做法,当您期望大致均匀的分布时。

总之,这取决于您的数据和神经网络。

但是两者都对异常值敏感,您可以尝试疯狂中位数缩放。

另请参见:https://stats.stackexchange.com/questions/7757/data-normalization-and-standardization-in-neural-networks

© www.soinside.com 2019 - 2024. All rights reserved.