Как загрузить тренировочные данные в PyBrain? - PullRequest
8 голосов
/ 15 ноября 2011

Я пытаюсь использовать PyBrain для простого обучения NN.Что я не знаю, как это сделать, это загрузить данные тренировки из файла.Это не объясняется на их сайте нигде.Мне плевать на формат, потому что я могу создать его сейчас, но мне нужно сделать это в файле, а не добавлять строку за строкой вручную, поскольку у меня будет несколько сотен строк.

Ответы [ 2 ]

21 голосов
/ 16 ноября 2011

Вот как я это сделал:

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 значений являются входными значениями, а последние три являются выходными.

1 голос
/ 01 октября 2017

Вы просто используете массивы панд таким образом

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])

и тебе пора.

...