问题标签 [pybrain]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
509 浏览

version - 安装了 Pybrain 版本?

我如何知道我的机器上安装了哪个 pybrain 版本?例如,如果我想知道我拥有哪个 numpy 版本,我只需键入:

导入 numpy

打印 numpy.version.version

0 投票
1 回答
219 浏览

python - 如何使用 pybrain 权重进行预测

我想知道pybrain如何根据权重给出预测。例如,我已经指定

假设我知道这个训练有素的网络的权重,我该如何自己进行预测?我需要使用 Java 在另一个程序中计算结果。或者这个网络的激活功能是什么?

0 投票
0 回答
1406 浏览

python - 如何在 PyBrain 中进行多维时间序列预测?

这是 PyBrain 谷歌组的转贴:https ://groups.google.com/forum/#!topic/pybrain/J9qv0nHuxVY 。

我一直在修补 OpenNN 和 FANN,但还没有找到一个可以满足我需要的 ANN 库。

我将把它分为短期和中期目标,但首先要了解一点背景......

背景

我想使用 ANN 对随时间变化的 1000-2000 项向量进行时间序列预测。每个元素都是一个布尔值,表示计算机视觉系统在特定时刻存在的一组视觉属性。

这个想法是在时间 t-1 向网络提供向量,并将时间 t 的向量作为目标值。

然后,网络的输出将是基于向量的先前状态 (t-1) 在当前时间 (t) 中预期会发生什么的预测。

短期

我想训练一个人工神经网络,以便它可以学习随着时间的推移预测这些向量。也就是说,我想给它一个任意向量,它会返回它已经训练过的向量。现在可以使用有限数据集,我希望从正常的 epoch 学习开始。我从一个正常的监督数据集开始,其中输入和目标偏移一个时间单位。到目前为止,我在 MSE 回报方面的表现不如我在 FANN 中获得的结果(第一个时期后错误没有显着减少),如下所述:https ://groups.google.com/forum /#!topic/pybrain/QSfVHsFRXz0

在 FANN 中,我只使用了一个简单的 MLP,它有 1026 个输入、103 个隐藏和 1026 个输出。布尔输入被缩放到 -1 到 1,权重被初始化为 -1 到 1 之间的随机值。(这样做是因为显然使用负值学习比仅使用 0-1 更快)。该网络很好地再现了输入模式,最终得到了一个小的 MSE。

在 PyBrain 中,这是代码的当前版本:

关于如何最好地进行学习设置的任何建议?(我希望我需要递归,但想用普通的 MLP 将 PyBrain 与我之前的 FANN 结果进行比较。)

我实际上尝试使用recurrent=True 来构建这个网络,但是在我所有的测试中,python 最终都使用了所有可用的内存并崩溃了(这台机器上有8GB 内存)。我不确定如何在不大量增加内存占用的情况下启用递归。

中期

最终,系统将不得不在线运行,其中输入是动态输入并不断变化的。这意味着无法进行 epoch 训练,因此我需要能够运行学习算法的单次迭代。我意识到人工神经网络很难学习,但好消息是不会缺少数据点(至少 100,000 个)。因为没有固定的数据集,所以不需要收敛。我预计随着新模式或稳定模式的出现,错误会上升和下降。

感谢您的任何意见和建议。

0 投票
1 回答
244 浏览

python - Pybrain 基础网络组织题

我已经开始在 Pybrain 中构建一些网络并获得了很多乐趣。我对这些文档并不完全感兴趣,所以我构建了小型、简单的网络并与它们一起玩,以了解类结构和数据流的工作方式。

我有几个问题:

设置:



1)当您执行“addInputModule”方法时,该层中的节点是否自动限制为每个输入?有没有办法拥有多个?

2)似乎我无法创建一个具有 4 个输入和 1 个输出的节点的 NN……看起来我必须为任何 NN 使用至少 2 个节点,因为权重与边缘(即连接)类相关联。如果我有 4 个输入,我必须在 InputModule 中有 4 个节点......

3)在上面的代码片段中,每一层中每个节点的默认阈值函数是什么?如何显示 TF 是什么?

4) 是否有任何文档描述每个类方法的所有可用输入?

谢谢!

格雷格

0 投票
1 回答
202 浏览

python - 间接训练前馈神经网络

我面临这个问题:

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

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

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

0 投票
1 回答
277 浏览

python - 序列化、pyBrain 中的分类、机器学习、预测

我有这样的训练数据示例(我有 1000 部电影进行训练),我需要预测每部电影的“预算”:

'title', 'producer',等键'country'可以看作是机器学习中的特征,而 , 等值'The Hobbit: An Unexpected Journey'可以25000看作是用于学习过程的值。然而,在训练中,输入大多被接受为实数而不是字符串格式。我是否需要将诸如'title', 'producer', 'country'(字符串字段)之类的字段转换为int(应该进行分类或序列化之类的事情?)或其他一些操作,以使我能够将这些数据用作我的网络的训练集?

0 投票
1 回答
224 浏览

python - 无法在 pybrain 上构建正确的 ffnn

我已经训练了一个 ffnn 来适应 pybrain 的未知函数。我像这样构建ffnn

我对 pybrain 说用命令打印网络的参数

pybrain 将参数返回给我

现在我想在另一个脚本中使用这个拟合函数。我试过了

问题是从网络返回的值完全不在意。例子

其中第一列是网络的输出,第二列是输入。网络的输出必须接近输入值。有什么问题?我在哪里做错了?这是过度拟合的问题还是我遗漏了什么?

0 投票
1 回答
74 浏览

python-2.7 - 如何限制 PyBrain 输出模块域?

在一个项目上使用 PyBrain 进行一些预测,但是我想知道如何以一种简单的方式限制 NN 输出的域,以便输出层仅在域 [0..1] 中产生值。

目前,我在网络的一些激活中得到负值。

我搜索了 PyBrain 文档,没有遇到任何似乎表明这是可能的方法或方法参数。下面的相关代码示例:

0 投票
0 回答
164 浏览

python - 在 PyBrain 中使用非常大的分类数据集时出现 MemoryError

https://gist.github.com/Skyyrunner/8317943

上面的 gist 链接有相关的代码和控制台输出。我试图提供给 ClassificationDataSet 的数据集的维度为 860 进,1 出,大约是 470k 个整数元素,大部分是 0。问题是无论我如何尝试将其拆分为多个列表,它仍然会崩溃并在要点中附加内存错误。有没有解决这个问题的好方法?

0 投票
2 回答
281 浏览

python - 为什么我的神经网络显示奇怪的结果?

我使用 PyBrain 创建了一个简单的神经网络:

但每次运行程序后显示不同的结果。我的网络应该学会找到英文“Z”字母和西里尔字母“З”字母。怎么了?