【问题标题】:Backpropagation through time时间反向传播
【发布时间】:2011-08-25 03:03:01
【问题描述】:

有谁知道随着时间的推移可以实现反向传播的库? 任何 Java/Python/C#/VB.NET/F#(最好是最后一个)都可以!

【问题讨论】:

  • 前段时间我一直在寻找类似的东西,但我的搜索结果是空的。如果您确实找到了一些东西,请发布它以便我也可以使用它
  • 反向传播到底是什么意思?没有问题陈述或定义,就很难提供解决方案。
  • @Nicholas Carey:通过时间反向传播是一种神经网络训练策略

标签: java .net python f# neural-network


【解决方案1】:

假设您已经在为 BP 使用一些库,使用 BP 作为流程中的一个步骤来实现 BPTT 应该 (TM) 相当简单。

BPTT [1] 的维基百科条目包括相关的伪代码。

大约 18 年前,我自己的出发点是“The Truck Backer-Upper: An Example of Self-Learning in Neural Networks”[2]。

[1]http://en.wikipedia.org/wiki/Backpropagation_through_time

[2]http://www-isl.stanford.edu/~widrow/papers/c1989thetruck.pdf

【讨论】:

    【解决方案2】:

    我只在有限的时间内使用了NeuronDotNet。它允许您创建前馈 BackPropagation NN。我特别喜欢他们使用直观命名的类。祝你好运!

    这是一个 .net 库。

    【讨论】:

    • 谢谢,但是反向传播和 BPTT 是不同的
    • freehostia.com 网址已失效。最新版本的 NeuronDotNet 3.0 可以在 sourceforge.net/projects/neurondotnet 找到,但要注意这个 sourceforge 项目现在不活动。然而,NeuronDotNet 仍然是一个相对成熟的框架,希望有人会在维护模式下接管该项目。
    【解决方案3】:

    我来自 Java 背景,但 Encog 也有一个 .net 实现(并且是一个非常好的 NNets 框架,具有良好的时间序列支持)

    无法使用 F# 框架,但您要为哪个领域编码?如果是金融,我会重申“看看 Encog”

    【讨论】:

      【解决方案4】:

      也许pybrain 会这样做?其BackpropTrainer 类的文档字符串表明它会通过时间进行反向传播:

      class BackpropTrainer(Trainer):
          """Trainer that trains the parameters of a module according to a
          supervised dataset (potentially sequential) by backpropagating the errors
          (through time)."""
      

      【讨论】:

        【解决方案5】:

        this one 呢?只需 Google 搜索即可帮助...

        【讨论】:

          【解决方案6】:

          我对@9​​87654321@ 有过很好的体验 - 在我看来,这是最好的,几乎可以肯定是最全面的通用机器学习库之一。

          您当然可以使用 Weka 进行 BPTT - 您可能会找到一个现成的分类器来满足您的需求,但即使没有,您也可以按照非常好的 wikipedia article on BPTT 将几个正常的反向传播单元链接在一起。

          【讨论】:

            【解决方案7】:

            我很久以前用 Java 制作了反向传播算法。我上传到了 GitHub,也许你会觉得有用:https://github.com/bernii/NeuralNetwokPerceptronKohonen

            如果有帮助,请立即告诉我 :)

            【讨论】:

              【解决方案8】:

              您可以使用TensorFlowdynamic_rnn() 函数(API doc)。 TensorFlow 的 tutorial on Recurrent Neural Networks 会有所帮助。

              此外,这个很棒的blog post 很好地介绍了使用 TensorFlow 预测序列。这是另一个 blog postsome code 来预测时间序列。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2017-01-05
                • 2016-05-25
                • 2011-12-27
                • 1970-01-01
                • 1970-01-01
                • 2019-05-23
                • 2017-01-20
                • 1970-01-01
                相关资源
                最近更新 更多