相关疑难解决方法(0)

如何序列化/反序列化pybrain网络?

PyBrain是一个python库,提供(除其他外)易于使用的人工神经网络.

我无法使用pickle或cPickle正确地序列化/反序列化PyBrain网络.

请参阅以下示例:

from pybrain.datasets            import SupervisedDataSet
from pybrain.tools.shortcuts     import buildNetwork
from pybrain.supervised.trainers import BackpropTrainer
import cPickle as pickle
import numpy as np 

#generate some data
np.random.seed(93939393)
data = SupervisedDataSet(2, 1)
for x in xrange(10):
    y = x * 3
    z = x + y + 0.2 * np.random.randn()  
    data.addSample((x, y), (z,))

#build a network and train it    

net1 = buildNetwork( data.indim, 2, data.outdim )
trainer1 = BackpropTrainer(net1, dataset=data, verbose=True)
for i in xrange(4):
    trainer1.trainEpochs(1)
    print '\tvalue after %d …
Run Code Online (Sandbox Code Playgroud)

python serialization pickle neural-network

9
推荐指数
1
解决办法
3842
查看次数

PyBrain:我如何在神经网络中加入特定权重?

我试图基于给定的事实重建一个神经网络.它有3个输入,一个隐藏层和一个输出.我的问题是权重也给出了,所以我不需要训练.

我想也许我可以保存类似的结构神经网络的训练并相应地改变值.你认为这会有效吗?还有其他的想法.谢谢.

神经网络代码:

    net = FeedForwardNetwork()
    inp = LinearLayer(3)
    h1 = SigmoidLayer(1)
    outp = LinearLayer(1)

    # add modules
    net.addOutputModule(outp)
    net.addInputModule(inp)
    net.addModule(h1)

    # create connections
    net.addConnection(FullConnection(inp, h1))
    net.addConnection(FullConnection(h1, outp))

    # finish up
    net.sortModules()


    trainer = BackpropTrainer(net, ds)
    trainer.trainUntilConvergence()
Run Code Online (Sandbox Code Playgroud)

保存培训并加载代码如何保存和恢复PyBrain培训?

# Using NetworkWriter

from pybrain.tools.shortcuts import buildNetwork
from pybrain.tools.xml.networkwriter import NetworkWriter
from pybrain.tools.xml.networkreader import NetworkReader

net = buildNetwork(2,4,1)

NetworkWriter.writeToFile(net, 'filename.xml')
net = NetworkReader.readFrom('filename.xml') 
Run Code Online (Sandbox Code Playgroud)

python neural-network pybrain

8
推荐指数
1
解决办法
4988
查看次数

标签 统计

neural-network ×2

python ×2

pickle ×1

pybrain ×1

serialization ×1