【问题标题】:Train a feed forward neural network indirectly间接训练前馈神经网络
【发布时间】:2013-12-21 04:53:16
【问题描述】:

我遇到了这个问题:

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

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

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

【问题讨论】:

    标签: python algorithm neural-network pybrain


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2015-06-04
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 2011-04-07
      • 1970-01-01
      • 1970-01-01
      • 2010-11-20
      • 2019-09-15
      相关资源
      最近更新 更多