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

8 views (last 30 days)
ANna Zhang on 26 Feb 2013
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?

ChristianW on 26 Feb 2013
Edited: ChristianW on 26 Feb 2013
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 CommentsShow 1 older commentHide 1 older comment
ChristianW on 26 Feb 2013
I'm sorry, used worng sim()-input, its inputn not input_train. I'll edit my answer.
Greg Heath on 27 Feb 2013
You should also be able to get it from
R = sqrt(1-MSE/mean(var(target',1))