在 training/validation/test 中使用标准化或规范化参数

Use of standardization or normalization's parameters in training/validation/test

最佳做法是 normalize/standardize 训练集,然后使用其参数(min & max 进行归一化,mean & std 用于标准化)normalize/standardize 验证集。

我想知道的是,在验证集中有不同的 min/max 值并因此以范围不在区间 (0,1) 内的值结束。

这对神经网络的训练有何影响?

最后一个疑问:当我们使用测试集评估模型在未见数据上的性能时,我们是否应该再次normalized/standardize具有训练参数的数据?由于这些参数实际上与训练模型绑定在一起。

缩放时,您通常知道数据的范围:

  • 对于图像,你从 0-255 到 0-1,没关系,你事先知道范围
  • 对于其他特征,你缩放的不是均匀分布,而是高斯分布,在这种情况下你一定不能不受输出[0,1]区间(或[-1, 1]).

所以通常,如果你知道你想要什么样的输出(概率或图像),你也知道你可以拥有的输入的真正完整范围。

当您不知道输入范围时,您通常不希望在输出端有一个 S 型曲线,因为它对您的网络的限制超出了您应有的范围。

是的,您需要使用与训练数据相同的预处理管道,这意味着经过训练的归一化参数。