I have the following code, from the PyBrain tutorial:
from pybrain.datasets import SupervisedDataSet from pybrain.supervised.trainers import BackpropTrainer
trainer = BackpropTrainer(net, ds, learningrate = 0.9, momentum=0.0, weightdecay=0.0, verbose=True) trainer.trainEpochs(epochs=1000)
This way can converge. if learningrate is too small(e.g. 0.01), it lost in local minimum. As I have tested, learningrate in 0.3-30, it can converge.