How to denormalize the output

25 views (last 30 days)
Sam Kalho
Sam Kalho on 23 Feb 2022
Commented: Star Strider on 23 Feb 2022
Hello all,
I need your help to solve my problem.
I used the 'normalize' command to prepare my dataset for Deep Learning.
data_normalized = normalize(data, 'range', [-1 1]) ;
Do you have any idea how I can just denormalize my output at the end?
I don't know how to use "mapminmax" instead of "normalize" for neural networks.
Now I wanted to denormalize my prediction again. I have a problem doing this. Could you please help me on this?
I would be very grateful to you guys.
Thank you in advance.
I looked up in MATLAB documentation that 'range' or 'rescale' is calculated using the following function.
Xrescaled=a+[X-minXmaxX-minX](b-a) .
My code is :
a = (YPred_mat+1)./2
b = (max(YPred_mat)-min(YPred_mat));
YPred_denormalized = (b.*a1)+ min(YPred_mat);
Thanks.

Accepted Answer

Star Strider
Star Strider on 23 Feb 2022
Assuming that the normalisation was by z-score, if the mean and standard deviation of the original data were calculated and saved, then de-normalising them would be straightforward:
data_denormed = (data_zscore * data_standard_deviation) + data_mean;
If those data were not saved, then all is lost.
.

More Answers (0)

Categories

Find more on Function Approximation, Clustering, and Control 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!