Neural Network classification problem

4 views (last 30 days)
Hello, I need help on matlab using neural network. My input data are ratios for 50 bankrupt and 50 non-bankrupt firms.That is,
Firm 1: Ratio 1 Ratio 2 Ratio 3 Ratio 4 Ratio 5 .... Firm 2: Ratio 1 Ratio 2 Ratio 3 Ratio 4 Ratio 5 .... .... Firm 100: Ratio 1 Ratio 2 Ratio 3 Ratio 4 Ratio 5 ....
My targets are in terms of binary.. i.e target for first 50 firms=1 and last 50 firms 0.(1=bankrupt,0=non-bankrupt)
I am using feedforward NN with backpropagation algorithm through the code net=newff(input,target,20)
But i have to enter the input and target in workspace first. Since i will have to transpose the matrices before using the newff function,i would like to know how should the input matrix be since i am getting errors.
Your help will be deeply appreciated. Thanks in advance
  3 Comments
Neha
Neha on 27 Feb 2014
Edited: Neha on 27 Feb 2014
Sorry for lateness. Well, i have been able to solve this since i am now using nprtool instead of the codes. Otherwise, i would like to know whether nprtool deals with missing data. Else,i don't know if this is the right place to ask but i need help concerning another thing. To start with, i will take each ratio to see which ratio is the most significant one. So, i have tried changing my no. of neurons from 2-30 to see which one gives the optimal one. Since i am doing this for each and every ratio, i have different no. of neurons. For e.g, for Ratio 1 I have the highest % at 20 neurons, Ratio 2 at 16 neurons and so on. I would like to know whether it seems right as a comparison. Or, whether i will have to choose the same no. of hidden neurons for all the ratios.
Thanks in advance.

Sign in to comment.

Accepted Answer

Greg Heath
Greg Heath on 28 Feb 2014
You cannot rank inputs well with your technique because inputs are correlated.
1. Standardize all data to have zero mean and unit standard deviation (help zscore).
2. Delete or modify outliers
3. Initialize the RNG; e.g., rng(0) so that random initializations can be repeated if necessary.
4. Design 100 nets using all I inputs
a. Outer loop over 10 candidates for H, the number of hidden nodes
b. Inner loop over Ntrials = 10 random initial weights for each candidate value of H.
5. Choose a net with the smallest H for which mse(target-output) < 0.01*mean(var(target',1))
6. Rank the inputs w.r.t. the largest MSE when each input is replaced by zeros.
7. Perform a backword search by iteratively zeroing the input which corresponds to the largest MSE.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!