File Exchange

image thumbnail


version (360 KB) by Roberto Calandra
Rprop training for Artificial Neural Networks


Updated 23 Aug 2011

View License

One of the training methods for Artificial Neural Networks is the Resilient Propagation (Rprop). Rprop is usually faster compared to the classical Backpropagation. In this package 4 different Rprop algorithms present in the literature are specifically implemented to train an ANN: Rprop+, Rprop-, IRprop+, IRprop-.

Comments and Ratings (7)


I am just getting started, so still very confused: Is it crucial for the rprop-optimization that the NN has an hidden layer with nn.nlabels? Am I right that nn.nlabels equals the number of different values in train_out?

Now, when I am learning a Q-function i.e. I repeat to generate samples with different targets and then use Rprop. If I have to change my NN every time I am looking at a new data set the learning will fail, right?

Is there a good solution?
I hope it is understandable...

Idil Selin

Yes, it works. Thank you very much:)

Hi Idil,
when you call RNN.lab2class(train_out); RNN is not supposed to be the NN, but just the function lab2class inside the folder +RNN. Did you added the folder where the package is to your path? remember that you cannot add just the package folder.

For more info:

Let me know if it is working :)

Idil Selin

Dear Roberto,
thank you very much for your code. Unfortunately, I do NOT manage to run it. Can you direct me? Where shall I start from? I guess that I need to create a RNN first. Shall I call the init_nn() function from the command window? Which are the parameters?
Demo_RProp_1 fails at line 26, where it calls RNN.lab2class(train_out); ... obviously, since there is no NN.
Thank you in advance for your explanations.

Hi Matthew,
Yes, the answer is that you can use the same data set for both training and testing. You can do that by setting the test set (test_in in the Demos) equal to the training set (test_in).


Hi, was wondering if i have a set of data with 150 samples. Then can i use your network to perform training then after that perform testing to compare the output of the testing set matching the result.


Another bit of documentation added

Improved the documentation and added a second demo. only small changes in the code.

MATLAB Release Compatibility
Created with R2011a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.

Learn About Live Editor