Método de validação cruzada Pybrain

Estou tentando usar o validador cruzado nos meus dados, mas estou obtendo 0,0 de taxa de sucesso, o que não faz sentid

s meus dados são compostos por amostras com 5 atributos contínuos e duas classes possíveis: "y" e "n"

Meu código:

net = pybrain.tools.shortcuts.buildNetwork(5, 8, 1)
trainer = BackpropTrainer(net, ds)
evaluation = ModuleValidator.classificationPerformance(trainer.module, ds)
validator = CrossValidator(trainer=trainer, dataset=trainer.ds, n_folds=5, valfunc=evaluation)
print(validator.validate())

Quando estou fazendo um treinamento regular como esse

print(trainer.train())

Estou obtendo uma taxa de erro razoável, então acho que isso significa que o conjunto de dados e a rede estão bem e o problema está no validador cruzad

Alguma ideia

Atualizar

Procurei no código de validação cruzada e percebi que minha rede gera valores contínuos e não 0/1, conforme necessário. Eu estou supondo que estas são as probabilidades para cada classe. Quando o modelo é usado dentro dos métodos de validação cruzada, isso não explica isso, e isso significa que todas as respostas são consideradas como base, e estou recebendo 0 respostas corretas. Como posso adicionar uma camada que analise os valores contínuos e retorne 0 ou 1 de acordo com o que for maior? A documentação não está clara.

questionAnswers(1)

yourAnswerToTheQuestion