4
$\begingroup$

I'm normalizing (or standardizing or feature scaling) my neural network training inputs and training targets. I just doing linear scaling and the formula I'm using is:

I = Imin + (Imax-Imin)*(D-Dmin)/(Dmax-Dmin)

where I is the scaled input value, Imin and Imax are the desired min and max range of the scaled values, D is the original data value, and Dmin and Dmax are the min and max range of the original data values. In my case I'm setting Imax to 1 and Imin to -1.

I'm trying to predict a continuous real-valued output. How do I scale the output of my network back into the "unscaled" range?

$\endgroup$
3
  • 4
    $\begingroup$ Hint: If $y = a + b(x-c)$, and you know $y,a,b$, and $c$, can you solve for $x$? $\endgroup$
    – cardinal
    Apr 15, 2012 at 12:32
  • 1
    $\begingroup$ @cardinal: I see your point, I guess it's easy. Although I guess this also means I need to store the original Dmax and Dmin somewhere. Also in general looking for guidance with respect to interpreting output of neural network back into real-world problem space. $\endgroup$
    – User
    Apr 15, 2012 at 12:39
  • $\begingroup$ I think you got the gist of it. In general, neural network is considered as a blackbox (or magicbox) to predict future values. So you can use common sense to interpret its output but there is no way to interpret the model itself. $\endgroup$ Apr 15, 2012 at 14:08

0

Browse other questions tagged or ask your own question.