How to understand R of the regresion plot in neural network training?

ANN structure is 3-3-4.The following is simple code input_train=[2,2,1,2,1,2,2,2,1,0.3,2,3.0,3.0,2,3.0; 16.6,14.6,15.79,14.6,13.4,14.6,14.6,14.6,13.4,14.6,12.6,13.4,15.8,14.6,13.4; 60,60,80,60,80,60,26.4,93.6,40.0,60,60,40.0,80,60,80]; output_train=[34.17,19.90,19.54,18.42,10.93,18.05,24.36,17.97,14.1,29.23,9.25,13.28,16.03,22.18,5.64; 14.27,16.85,13.680,17.46,15.03,15.68,23.45,13.64,16.84,4.86,29.94,24.90,15.17,13.24,33.78; 3.62,6.39,8.14,6.62,8.01,5.70,7.36,4.88,8.80,7.86,12.04,10.21,6.51,4.48,13.91; 4.88,3.35,2.67,3.22,1.64,2.83,4.98,2.45,2.38,1.42,2.77,3.31,2.43,2.94,1.91]; [inputn,inputps]=mapminmax(input_train); [outputn,outputps]=mapminmax(output_train); net=newff(minmax(inputn),[3,4],{'tansig','logsig'},'traingdx'); net.trainParam.epochs=500; net.trainParam.goal=0.001; net.trainParam.max_fail=10; net=train(net,inputn,outputn); I can get the regression plot, ther is only one R. However,how can i get four correlation coefficient® of four objectives,respectivly?

 Accepted Answer

y = sim(net,inputn);
r = regression(outputn,y); % r for every objective
R = regression(outputn(:)',y(:)'); % R from plot
or
r1_cc = corrcoef(outputn(1,:),y(1,:));
R_cc = corrcoef(outputn(:),y(:));

3 Comments

Thanks for your reply.
o = sim(net,inputn);
r1 = corrcoef(output_train(1,:),o(1,:));
I get the r martix. And what is the relationship between these R figures and R from training regression plot? the mean? Itry with these datas,seems not.
I'm sorry, used worng sim()-input, its inputn not input_train. I'll edit my answer.
You should also be able to get it from
R = sqrt(1-MSE/mean(var(target',1))

Sign in to comment.

More Answers (0)

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!