title: How to recover original values after a model predict in keras?
body: <p>This is a more conceptual question, but I have to confess I have been dealing with it for a while. </p>
  
  <p>Suppose you want to train a neural network (NN), using for instance keras. As it is recommended you perform previous to the training a normalization or standardization of the data, so, for instance, with a standardization:</p>
  
  <pre><code>x_new = (x_old - mean)/standarddev
  </code></pre>
  
  <p>Then, you carry on the training (<code>model.fit</code> in keras) and minimize the loss function, all very nice.</p>
  
  <p><strong>Edit:</strong> In my case, I have a set of values between 200 and 400. It's a NN with 1 input, 1 output. I standardize as told, the input values AND the expected values, so the NN learns the weights and biases in a <em>standardized</em> way.</p>
  
  <p>Now, imagine that I have a completely new dataset of values between 200 and 400 and I want to predict an output, using the NN with the previous training. You can use <code>model.predict(x)</code> in keras, with <code>x</code> the completely new set of values I have received, standardized (or normalized) because your NN was trained in that way. But then, what I get, after the <code>predict</code> is an array of values standardized, <strong>but I want to map them to the usual range of 200 to 400</strong>. And I don't know how to do this.</p>
  
  <p>I know you can carry on the training without normalizing or standardizing, but I have read that if you standardize (or normalize), with values in the range of the output of the units (neurons) (for instance, between 0 and 1 for a sigmoid), the training improves.</p>
  
  <p>Thank you.</p>