MATLAB Answers


Testing a Backpropagation Neural Network

Asked by Zeeshan Ahmad Khan on 10 Feb 2019
Latest activity Commented on by Zeeshan Ahmad Khan on 11 Feb 2019
I have developed a backpropagation Neural Network in Matlab. The script for training the Network works fine and predicted output follows the expected output.
The weights, biases, network architecture,inputs, targets from training network are stored in the .mat file. This .mat file is then loaded in the testing script and only the forward propagation part is implemented in the testing script to get the expected output.
However, the output from testing is not anywhere close to the expected output even though the training accuracy is quite high (more than 95% in each run).
Is it because the network is not being trained enough or Is it some problem with the code that needs debugging? Can someone tell the reason for it and any possible solutions to the problem.
Attached are the files used for training and testing.
Any leads would be appreciated.


Sign in to comment.

1 Answer

Answer by Greg Heath
on 10 Feb 2019
 Accepted Answer

You are probably
OVERFITTING: Using more unknown hidden nodes than number of training equations
OVERTRAINING:Training longer than is practical for a good solution.
I have written several zillion posts in both the NEWSGROUP and ANSWERS
Hope this helps
Thank you for formally accepting my answer

  1 Comment

I have reduced the number of hidden nodes and have calculated the number of training equations and weights accroding to the following equation:
For a double hidden layer network,
Ntrneq = Ntrn*O
Nw = (I+1)*H1 + (H1+1)*H2+(H2+1)*O
However, regarding Overtraining, can you provide a lead on how to get rid of Overtraining.
I have already implemened L2 regularization in the script.
Any leads would be appreciated.

Sign in to comment.