# MSE in neuralnet results and roc curve of the results

Hi my question is a bit long please bare and read it till the end.

I am working on a project with 30 participants. We have two type of data set (first data set has 30 rows and 160 columns , and second data set has the same 30 rows and 200 columns as outputs=y and these outputs are independent), what i want to do is to use the first data set and predict the second data set outputs.As first data set was rectangular type and had high dimension i have used factor analysis and now have 19 factors that cover up to 98% of the variance. Now i want to use these 19 factors for predicting the outputs of the second data set.

I am using neuralnet and backpropogation and everything goes well and my results are really close to outputs.

My questions :

1- as my inputs are the factors ( they are between -1 and 1 ) and my outputs scale are between 4 to 10000 and integer , should i still scaled them before running neural network ?

2-I scaled the data ( both input and outputs ) and then predicted with neuralnet , then i check the MSE error it was so high like 6000 while my prediction and real output are so close to each other. But if i rescale the prediction and outputs then check The MSE its near zero. Is it unbiased to rescale and then check the MSE ?

3- I read that it is better to not scale the output from the beginning but if i just scale the inputs all my prediction are 1. Is it correct to not to scale the outputs ?

4- If i want to plot the ROC curve how can i do it. Because my results are never equal to real outputs ?

Thank you for reading my question

• What you mean with scale input or output? – Alvaro Joao Feb 21 '16 at 9:56
• I mean bringing the data between range 0 and 1 because my inputs are already in range (-1 and 1 ) and my output (y) are in thousands. maxs <- apply(data, 2, max) mins <- apply(data, 2, min) scaled <- as.data.frame(scale(data, center = mins, scale = maxs - mins)) – ramin Feb 21 '16 at 13:59
• you used normalization from 0 to 1. You should do that to the output. So your MSE will be from 0 to 1. – Alvaro Joao Feb 21 '16 at 14:17
• I have done that before but i do not understand why my MSE error will get so high (MSE= 5234), but if i rescale the output and the predicted value back to original scale and calculate the MSE its near zero. is that a reliable approach ? – ramin Feb 21 '16 at 14:57
• You have to use normalization in the output. Or use MAPE measure ( perceptual error). Yes that's reliable. – Alvaro Joao Feb 21 '16 at 15:02