Я написал программу для обучения моей сети с помощью pybrain. У меня есть 104 входа и 7 выходов в каждой строке файла поезда. Я создал один скрытый слой длиной 50. Сеть записана в файле .xml. Но я не знаю, как записать окончательные веса и смещения в файл, чтобы я мог рассчитать точность и вспомнить. Кто-нибудь может помочь?
from pybrain.datasets import SupervisedDataSet
from pybrain.datasets import ClassificationDataSet
from pybrain.utilities import percentError
from pybrain.tools.shortcuts import buildNetwork
from pybrain.supervised.trainers import BackpropTrainer
from pybrain.structure.modules import SoftmaxLayer
from pybrain.tools.xml.networkwriter import NetworkWriter
from pybrain.tools.xml.networkreader import NetworkReader
ds = SupervisedDataSet(104,7)
tf = open('neural_net_feature.txt','r')
for line in tf.readlines():
data = [float(x) for x in line.strip().split(',') if x != '']
indata = tuple(data[:104])
outdata = tuple(data[104:])
ds.addSample(indata,outdata)
n=buildNetwork(ds.indim,50,ds.outdim,hiddenclass=SigmoidLayer,outclass=SigmoidLayer)
NetworkWriter.writeToFile(n, 'filename.xml')
n = NetworkReader.readFrom('filename.xml')
t = BackpropTrainer(n,learningrate=0.01,momentum=0.5,verbose=True)
t.trainUntilConvergence(dataset=ds, maxEpochs=None, verbose=False , continueEpochs=10, validationProportion=0.10)
t.testOnData(verbose=True)
Спасибо