获取pybrain预测输出的数组

我正在使用pybrain构建一个网络,该网络有6个输入维度和一个实数值输出维度。我使用的代码如下所示:

network = buildNetwork(train.indim, 4, train.outdim)trainer = BackpropTrainer( network, train)trainer.trainOnDataset(train, 8000)print 'MSE train', trainer.testOnData(train, verbose = True)

这里train是Dataset类型。我希望获取trainer.testOnData()中的预测结果,并将其作为numpy数组。我能够查看预测结果和误差,但我想将其作为数组输出。有没有办法做到这一点?


回答:

使用网络的activate函数:

numpy.array([network.activate(x) for x, _ in train])

完整示例:

from datasets import XORDataSet from pybrain.tools.shortcuts import buildNetworkfrom pybrain.supervised import BackpropTrainerimport numpyd = XORDataSet()n = buildNetwork(d.indim, 4, d.outdim, bias=True)t = BackpropTrainer(n, learningrate=0.01, momentum=0.99, verbose=True)t.trainOnDataset(d, 1000)t.testOnData(verbose=True)print numpy.array([n.activate(x) for x, _ in d])

(仅在pybrain的pybrain/examples/supervised/backprop目录下有效,因为需要XORDataSet。)

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注