神经网络中预测数据的反规范化

Denormalization of predicted data in neural networks

在神经网络中,用于训练数据的样本数为 5000,在给出训练数据之前,使用公式

对其进行了归一化
     y - mean(y)
y' = -----------
      stdev(y)

现在我想在获得预测输出后对数据进行反标准化。通常用于预测的测试数据数据是 2000 个样本。为了反规范化,使用以下公式

y = y' * stdev(y) + mean(y)

此方法取自以下线程 [How to denormalise (de-standardise) neural net predictions after normalising input data

任何人都可以解释一下,在对训练数据 (5000*2100) 进行归一化时使用的相同均值和标准差如何用于对预测数据进行去归一化,正如您所知道的预测测试数据 (2000*2100) 是使用过,两者的计数不同。

非规范化方程是简单的代数:它与规范化方程相同,但求解的是 y 而不是 y'。作用是反转归一化过程,恢复原始数据的"shape";这就是为什么你必须使用原始标准偏差和均值。

归一化是将数据移动到 0 中心(使用平均值),然后将分布压缩到标准正态曲线(对于 1.0 的新标准偏差)的过程。要 return 到原始形状,您必须取消移动和取消挤压 与原始分布相同 的数量。

请注意,我们预计预测数据的均值为 0,标准差约为 1.0(由于集中趋势定理,变化会有所变化)。您的担心并不愚蠢:我们确实有不同的 stdev 人口计数。