与えられた事実に基づいてニューラルネットワークを再現しようとしています.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')