What is the difference between an RMSE and RMSLE (logarithmic error)? RMSE vs RMSLE

Root Mean Squared Error (RMSE) and Root Mean Squared Logarithmic Error (RMSLE) both are the techniques to find out the difference between the values predicted by the machine learning model and the actual values.


  
  But, what is the purpose for RMSLE( "logarithmic")
  Does a high RMSE imply low RMSLE?
  


Can somebody explain in-detailed differences between RMSE and RMSLE? And how the metric works under the hood?


  
  When would one use RMSE over RMSLE?
  What are the advantages/disadvantages of using RMSE over RMSLE?
Let's start with the definitions:
$$ \text{RMSE} = \sqrt{\frac{1}{N} \sum_{i = 1}^{N} (y_i - \hat y_i)^2}, $$
$$ \text{RMSLE} = \sqrt{\frac{1}{N} \sum_{i = 1}^{N} (\log y_i - \log \hat y_i)^2}, $$
where $y_i$ is the target value for example $i$ and $\hat y_i$ is the model's prediction. Both metrics quantify the prediction error, so in general a high RMSE implies a high RMSLE as well.

RMSLE has the meaning of a relative error, while RMSE is an absolute error. Choosing one depends on the nature of your problem. Imagine that the target spans values from around 1 to around 100. Is predicting $\hat y = 1.01$ for true $y = 1$ as bad as $\hat y = 101$ for $y = 100$? Then RMSLE might be a good choice. With RMSE, on the other hand, predicting $\hat y = 2$ for $y = 1$ is as bad as $\hat y = 101$ for $y = 100$.

In general, you would often want to use the logarithm (or maybe the square root or some other power $0 &lt; \alpha &lt; 1$) for strictly positive targets that span a large range.