【问题标题】:Can inputs into Neural Network be real-valued?神经网络的输入可以是实值的吗?
【发布时间】:2015-04-10 15:09:58
【问题描述】:

我正在使用 sigmoid 函数。我所有输入的输入值范围从 0.88 到 1.06。可以在这个范围内使用实值输入吗?我在神经网络上找到的每个示例都使用二进制输入。另外,因为输入代表增加/减少的百分比,我应该从每个输入中减去 1,所以范围是 -.12 到 .06?

【问题讨论】:

    标签: machine-learning neural-network backpropagation


    【解决方案1】:

    您可以为神经网络使用实值输入。然而,通常的做法是对它们进行归一化,使它们在区间 [0, 1] 或 [-1, 1] 内。这样做可以使您避免可能导致学习速度非常慢的梯度数值问题。标准化输入值的常用公式是v = (v - mean) / stdDevv = (v - min) / (max - min),其中v 是您的输入值之一(一个输入向量中的一个分量),mean 是您数据中该分量的平均值,stdDev是您数据中该组件的标准差,min 是您数据中该组件的最小值,max 是您数据中该组件的最大值。

    E. G。 [0, 0], [2, 1] 可能会转换为 [(0 - 0)/2, (0 - 0)/1], [(2 - 0)/2, (1 - 0)/1] = [0, 0], [1, 1](根据第二个公式)。

    【讨论】:

      猜你喜欢
      • 2020-08-08
      • 2010-10-13
      • 2021-02-27
      • 1970-01-01
      • 1970-01-01
      • 2014-04-11
      • 2019-07-27
      • 2017-02-19
      • 2012-10-05
      相关资源
      最近更新 更多