Neural network 近似z=y^2+;x^2与神经网络

Neural network 近似z=y^2+;x^2与神经网络,neural-network,Neural Network,预计神经网络以多快的速度逼近z=y^2+x^2函数? 当我把输入也设为负值,所有的权重都变得非常小(*10^-16!如果使用2x40x1),或者所有权重都变成相同的数字(比如-0.16和0.16,如果使用2x20x1)。我每个历元使用2000个输入示例 然而,如果所有的输入都是正的,它似乎学习正常。这意味着什么 您认为每个历元、体系结构和历元的输入对数量应该是多少 我使用的是backprop,一种无偏差的神经网络,有一个隐藏层(我的输入都在-1和+1之间,并且是期望的输出[0,1]) 谢谢,对于

预计神经网络以多快的速度逼近z=y^2+x^2函数? 当我把输入也设为负值,所有的权重都变得非常小(*10^-16!如果使用2x40x1),或者所有权重都变成相同的数字(比如-0.16和0.16,如果使用2x20x1)。我每个历元使用2000个输入示例

然而,如果所有的输入都是正的,它似乎学习正常。这意味着什么

您认为每个历元、体系结构和历元的输入对数量应该是多少

我使用的是backprop,一种无偏差的神经网络,有一个隐藏层(我的输入都在-1和+1之间,并且是期望的输出[0,1])


谢谢,

对于正输入,函数是单调的。一旦你越过原点,情况就不再是这样了

我认为,为了开发一个具有非单调输出的神经网络,您可能需要允许非零偏差


此外,请确保您的实现没有进行有界优化,许多优化算法都包含非负性假设。

这取决于算法的目的是什么? 如果您只想重新创建图形,则过度拟合不会有问题,您应该对其进行训练,直到增量误差尽可能小(接近0.0001)

出于其他目的,不建议过度拟合列车数据

有关更多信息: 或

我要做的第一件事是再添加1或2个隐藏层,但不要再添加了。你用的是什么激活功能?嗨,大卫,我用的是tanh。嗯,我还没有为超过1层编程,但我现在就做,看看。我计划使用这个网络进行金融市场预测,所以我有点担心,如果它不能学习2D函数,它将如何映射像金融市场那样的复杂函数?是,将在另一层中编程。您建议采用什么体系结构?它在280个时代的XOR学习中表现良好。然而,我没有使用偏见(这会是一个主要问题吗?)。感谢you@Katya,你最终解决了这个问题吗?如果是这样的话,答案是什么?嗨,本,这是我设计的代码,因此没有“有界优化或非负性假设”(这至少是有意的!哈哈)。我将在偏见的代码,因为到目前为止我还没有包括它,因为我不知道如何通过反向传播更新偏见。我该怎么做?因此,我会在每个神经元中加入一个额外的输入1,并在该输入上附加一个随机权重(即偏差)——但我应该更新这个权重,对吗?就像其他重量一样?按照我目前的方式编写代码是很困难的。。我必须思考。@Katya:我会首先尝试让一些神经元具有零偏差,一些具有+1,一些具有-1。请检查一下:这段代码实际上是为了测试金融市场预测而设计的(我只是想先在2D函数上测试它)。你认为我需要偏见来做预期的预测吗?(单调意味着随着x的增加y的增加,所以我猜这样的复杂函数不是单调的,对吧?)。在理想情况下,在整个反向传播过程中应该如何调整偏差?我不认为调整偏差实际上是必要的。要求零偏差的问题是,您只能表示线性变换,通过允许非零偏差,您可以允许仿射变换。但是偏差的大小可以是固定的,而不会失去普遍性,因为所有其他系数都将缩放以适应您选择的任何偏差。所以你只需要用负的,零的,正的偏差来初始化一些节点。但请注意,我是在提出建议,而不是凭经验说话。