我正在尝试根据给定的事实重新创建一个基于神经网络的模型。该模型有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()
请访问如何保存和加载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')