我想知道神经网络是否能够回归值非常接近的目标值。例如:
input [100 150 200 300]
output [0.99903 0.99890 0.99905 0.99895]
还是应该处理输出或目标数据?
谢谢。
我想知道神经网络是否能够回归值非常接近的目标值。例如:
input [100 150 200 300]
output [0.99903 0.99890 0.99905 0.99895]
还是应该处理输出或目标数据?
谢谢。
神经网络输入/输出值的三个规则:
尝试对数据进行一些归一化方案,然后查看输出点之间的距离。当然,不要忘记对输入也这样做。
如果您的数据有多个维度, PCA也会很有帮助,但这些数据是一维的。
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
这意味着在大多数 ANN 实现中,这是不可能的,或者:标准化您的数据。:)