0

我面临这个问题:

我必须构建一个必须逼近未知函数的 FFNN f:R^2 -> R^2。我拥有的用于检查网络的数据是一维 R 向量。我知道g:R^2->R将网络输出映射到我的数据空间的函数。所以我会使用神经网络作为过滤器来防止数据中的偏差。但我面临两个问题:

首先,我怎样才能以这种方式训练我的网络?

其次,我正在考虑添加一个额外的隐藏层来映射R^2->R并让网络训练自己找到正确的映射,然后删除额外的层。这个算法正确吗?即,输出是否与我正在寻找的相同?

4

1 回答 1

1

您的附加层想法很好,尽管问题是您在这一层中的权重必须固定。因此,在实践中,您必须计算 R^2->R 映射的偏导数,这可以用作在训练期间通过网络传播的误差。不幸的是,这可能会导致众所周知的“梯度消失问题”,从而使 NN 的发展停止了多年。

简而言之 - 您可以手动计算偏导数,并在 R 中给出预期输出,只需将计算出的“反向传播”错误提供给网络以寻找 R^2->R^2 映射,或者如您所说 - 创建附加层,并正常训练它,但是您必须使上部权重不变(这将需要在实现中进行一些更改)。

于 2013-11-25T18:47:30.667 回答