神经网络的精度

时间:2012-06-27 14:22:55

标签: neural-network

我想知道神经网络是否能够回归非常接近价值的目标值。例如:

input [100 150 200 300]
output [0.99903 0.99890 0.99905 0.99895]

或者是否应该处理输出或目标数据?

感谢。

2 个答案:

答案 0 :(得分:3)

神经网络的三个输入/输出值规则:

  1. 规范化您的数据。
  2. 规范化您的数据。
  3. Normalize您的数据。
  4. 尝试对数据进行一些归一化方案,然后查看输出点之间的距离。当然,不要忘记对输入做这件事。

    如果您的数据有多个维度,

    PCA也会有所帮助,但这些数据是一维的。

答案 1 :(得分:0)

kwatford是对的,规范您的数据!

理论上神经网络可以学习这样的目标。但我们正在研究具有精确实数表示的真实计算机。现在,想一想:你训练你的神经网络,在训练过程中,当前的预测就是:

  

输入[100 150 200 300]

     

输出[0.99905 0.99890 0.99903 0.99895]

我只是翻了100和200的结果。因此,平方误差的总和将是4e-10。您添加到神经网络权重的值将更小。使用单精度浮点数时,此数字已经存在问题。 GNU Octave中的一个例子证明了这一点:

single(0.99905)+single(1e-10)
ans =  0.99905

这意味着在大多数人工神经网络实施中,不可能或:规范化您的数据。 :)