如何在PyBrain中加载训练数据?

时间:2011-11-15 16:39:15

标签: python neural-network pybrain

我正在尝试使用PyBrain进行一些简单的NN训练。我不知道该怎么做是从文件加载训练数据。任何地方都没有在他们的网站上解释过。我不关心格式,因为我现在可以构建它,但我需要在文件中执行它,而不是手动逐行添加,因为我将有几百行。

2 个答案:

答案 0 :(得分:21)

我是这样做的:

ds = SupervisedDataSet(6,3)

tf = open('mycsvfile.csv','r')

for line in tf.readlines():
    data = [float(x) for x in line.strip().split(',') if x != '']
    indata =  tuple(data[:6])
    outdata = tuple(data[6:])
    ds.addSample(indata,outdata)

n = buildNetwork(ds.indim,8,8,ds.outdim,recurrent=True)
t = BackpropTrainer(n,learningrate=0.01,momentum=0.5,verbose=True)
t.trainOnDataset(ds,1000)
t.testOnData(verbose=True)

在这种情况下,神经网络有6个输入和3个输出。 csv文件在每行上有9个值,用逗号分隔。前6个值是输入值,后3个是输出。

答案 1 :(得分:1)

你只需这样使用pandas数组

import pandas as pd

ds = SupervisedDataSet(6,3)

dataset = pd.read_csv('mycsvfile.csv','r', delimiter=',',skiprows=1)
ds.setfield('input'  dataset.values[:,0:6])
ds.setfield('target',  dataset.values[:,-2:-1])

你很高兴。