AttributeError с использованием pyBrain _splitWithPortion - тип объекта изменился?

Я тестирую Pybrain, следуя базовому учебнику по классификацииВот и другой взгляд на это с некоторыми более реалистичными даннымиВот, Однако я получаю эту ошибку при применении trndata._convertToOneOfMany () с ошибкой:

AttributeError: 'SupervisedDataSet' object has no attribute '_convertToOneOfMany

Набор данных создается как объект классификация. КлассификацияDataSet, однако вызов функции splitWithProportion, по-видимому, меняет его supervised.SupervisedDataSet, поэтому, будучи довольно новым для Python, эта ошибка не кажется такой неожиданной, поскольку supervised.SupervisedDataSet не имеет такого метода, ification.ClassificationDataSet делает.Код здесь.

Однако один и тот же точный код используется во многих уроках, и я чувствую, что, должно быть, что-то упустил, так как многие другие работают. Я смотрел на изменения в кодовой базе на github, и в этой функции нет ничего, я также пытался работать под Python 3 против 2.7, но без разницы. Если у кого-нибудь есть указания, чтобы вернуть меня на правильный путь, это было бы очень признательно.

#flatten the 64x64 data in to one dimensional 4096
ds = ClassificationDataSet(4096, 1 , nb_classes=40)
for k in xrange(len(X)): #length of X is 400
    ds.addSample(np.ravel(X[k]),y[k])
    # a new sample consisting of input and target

print(type(ds))      
tstdata, trndata = ds.splitWithProportion( 0.25 )
print(type(trndata))

trndata._convertToOneOfMany()
tstdata._convertToOneOfMany()

Ответы на вопрос(6)

Ваш ответ на вопрос