Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

How to implement cross validation with back propogation network

Asked by Subha on 8 Mar 2013

Sir, How to implement cross validation methods such as k fold and leave one out with back propogation network... i have tried with SVm works good.. but dont know how to merge k fold with bpn... .. thanks

1 Comment

Subha on 11 Mar 2013
i've tried this code...
    load dataset4_bp_kn_fs
TrainingSet=data;
GroupTrain=target;
Indices = crossvalind('Kfold',GroupTrain , 10);
for i=1:10
     test = (Indices == i); train = ~test;
net = newff(TrainingSet(train,:),GroupTrain(train,:),20,{},'trainscg');
[net,TR] = traingd(net,TrainingSet(train,:),TrainingSet(test,:))
 a = sim(net,TrainingSet(train,:));
     b=sim(net,TrainingSet(test,:));
end

where, data is 16 x 54 and target is 1x54 i'm getting error as, ??? Index exceeds matrix dimensions. and

??? Error using ==> network.subsref at 83 Reference to non-existent field 'lr'.

Error in ==> traingd at 141 lr = net.trainParam.lr; ..

i've made few trials too like setting the target as 3x54 matrix but dono how to proceed with this... really in a confused state..

Subha

Products

No products are associated with this question.

2 Answers

Answer by Tom Lane on 12 Mar 2013
Accepted answer

I am not a nnet expert, but I am under the impression that your inputs should have one column per observation (rather than one row as in the Statistics Toolbox). If that is the case you may need to use "train" and "test" to index into columns rather than rows. Also, I believe traingd wants training set target values as its third input, not X data for the test set.

1 Comment

Subha on 12 Mar 2013

Sir with your piece of advice i've done few modification.. like (test,:) as (:,test), now its working good , Accuracy seem to be low, have to try some thing to improve it... but really Matlab is like an ocean.. i've to learn lots more... .. Thank you Sir..

Tom Lane
Answer by laplace laplace on 25 Jun 2013

how did you apply the crossvalind command to column vectors??

1 Comment

laplace laplace on 25 Jun 2013

generaly if your data have a dimension how do you apply the crossvalind command?

laplace laplace

Contact us