The implemented neural networks (NN) are feedforward NNs trained using the backpropagation algorithm. They are very versatile but require extensive tuning and experience for successful application.

val clf = new NeuralNetworkClassifier()

A naive application of the NN with the default settings to the circular dataset fails:

Nonlinear failed test

After increasing the number of neurons on the second layer to 16, the NN performs very well.

val clf = new NeuralNetworkClassifier(layers=List(2, 16, 2))

Nonlinear test