2011-05-15 13 views

cevap

43

PyBrain'in Sinir Ağları, python'un yerleşik pickle/cPickle modülü kullanılarak veya PyBrain'in XML Ağ Yazıcısı kullanılarak kaydedilebilir ve yüklenebilir.

# Using pickle 

from pybrain.tools.shortcuts import buildNetwork 
import pickle 

net = buildNetwork(2,4,1) 

fileObject = open('filename', 'w') 

pickle.dump(net, fileObject) 

fileObject.close() 

fileObject = open('filename','r') 
net = pickle.load(fileObject) 

Not cPickle, C içinde uygulanır ve bu nedenle turşudan çok daha hızlı olmalıdır. Kullanımı çoğunlukla turşu ile aynı olmalıdır, bu yüzden sadece cPickle'ı içe aktarın ve kullanın.

# Using NetworkWriter 

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

net = buildNetwork(2,4,1) 

NetworkWriter.writeToFile(net, 'filename.xml') 
net = NetworkReader.readFrom('filename.xml') 
+1

: xml paketi Eylül 2010 yılında değiştirildi: https://github.com/pybrain/pybrain/commit/fc8e7a8807963e93d8331f7ffbe2745eaff3ae92 – SiHa

11

NetworkWriter ve NetworkReader eser harika. pickle üzerinden kaydedilip yüklendiğinde, ağın artık eğitim-işlevleriyle değiştirilemeyeceğini fark ettim. Böylece, NetworkWriter-yöntemini kullanmanızı tavsiye ederim.

+3

See http: // stackoverflow bir çözüm için .com/a/4336001/868679 –

2

Ağ Yazma aracıdır. Pickle'ı kullanarak Jorg'ın söylediği gibi ağı yeniden değerlendiremezsiniz.

Böyle bir şey gerekir: Şu

from pybrain.tools.shortcuts import buildNetwork 
from pybrain.tools.customxml import NetworkWriter 
from pybrain.tools.customxml import NetworkReader 

net = buildNetwork(4,6,1) 

NetworkWriter.writeToFile(net, 'filename.xml') 
net = NetworkReader.readFrom('filename.xml') 
İlgili konular