Greetings,
I was following this tutorial on the implementation of a MLP with Neuroph using Java code (I'm using neuroph-2.5.1.jar):
http://neuroph.sourceforge.net/tutorials/MultiLayerPerceptron.html
And I found out the code wouldn't work. The reasons were two:
First, the line:
Vector<Double> networkOutput = nnet.getOutput();
Produced an error, because the method getOutput() returns a double[] not a Vector<Double>
I changed it to double[] like this:
double[] networkOutput = nnet.getOutput();
And this worked fine.
Second, there was an error claiming it couldn't find a certain encog engine (?!):
Exception in thread "main" java.lang.NoClassDefFoundError: org/encog/engine/data/EngineData
So what I did was to go to Encog's website, and download: neuroph-2.5.1.jar
After putting it in the same folder as neuroph's jar, the program finally worked.
Now.. is that correct? Do I really need both jars to run a mlp?
Thanks in advance.
Yes, you're right. The tutorial needs to be updated since the method signature changed in v2.4, and the Encog lib is required since we made the Encog integration which allows Neuroph to use encog engine.