I am processing some data using a feedforward neural network in Keras. I have noticed that if I log transform the data, the model trains better, however the error metric on the transformed data doesn't necessarily reflect very well what's going on with the original dataset.

At the moment I am using Mean Average Percentage Error metric (mape), and a CV error of 3.8% on log transformed data set corresponds to about 25% when I reverse-transform the predictions and check against the original outputs.

Is there a better choice of cost/objective function for situations like this?


2 Answers 2


I am assuming that when you say log transforming the data, it is log transformation of outcome variable. In such case, you may want to check root means squared logarithmic error.

  • $\begingroup$ any reference on why one should prefer RMSLE over other? $\endgroup$ Sep 27, 2022 at 16:49

This actually makes sense since the magnitude of the data is much smaller when you fit Log(y) = model(X).

$log error = \frac{1}{n} \sum_{t=1}^{n} abs( \frac{log(y_{t})-model(X_{t})}{log(y_{t})})$

$error = \frac{1}{n} \sum_{t=1}^{n} abs(\frac{y_{t}- exp(model(X_{t}))}{y_{t}})$

also, MAPE, is Mean Absolute Percentage Error.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.