Answers.Body: <p>Answers in the comments are decent, particularly DuttA.</p>
  <p>DuttA gives these, approximately</p>
  <ul>
  <li>ease of derivative</li>
  <li>Don't have to worry about ~0 in denominator causing huge gradient</li>
  <li>But to me the most important is mathematical convenience, someone
  might easily make the mistake of RMSE is just equal the difference
  y−y′ instead of root of mean square of y−y′. The answer this might
  start depending on conventions.</li>
  <li>In maths (Don't know the reason and might be inaccurate) we mainly
  work with variances instead of standard deviation.</li>
  </ul>
  <p>Here are my reasons for using the MSE instead of RMSE:</p>
  <ul>
  <li>Doesn't have the sqrt operations, so it computes faster</li>
  <li>the square root isn't easy, its Newtons method, so it could be a
  dozens steps per iteration</li>
  <li>MSE has all the information of RMSE, there is 1-to-1 mapping, so no loss</li>
  <li>the storage of the square root typically doesn't save any memory in
  IEEE-784 and compute vs. memory is big thing in complexity</li>
  <li>tools like gradient boosted machine can &quot;recycle&quot; the squared error
  computation for speedup and working on O(n) complexity</li>
  <li>there is hidden scaling and regularization because many gpu hardware
  elements are fundamentally 8-bit, so if you can make your code more
  8-bit in its guts then you don't have as much in the back-conversion
  and it runs a lot faster</li>
  </ul>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-17T03:13:37.853Z
Answers.LastActivityDate: 2021-05-17T03:13:37.853Z
Answers.UserDisplayName: EngrStudent
Body: <p>I understand that RMSE is just the square root of MSE. Generally, as far as I have seen, people seem to use MSE as a loss function and RMSE for evaluation purposes, since it exactly gives you the error as a distance in the Euclidean space.</p>
  
  <p><strong>What could be a major difference between using MSE and RMSE when used as loss functions for training?</strong>  </p>
  
  <p>I'm curious because good frameworks like PyTorch, Keras, etc. don't provide RMSE loss functions out of the box. Is it some kind of standard convention? If so, why?</p>
  
  <p>Also, I'm aware of the difference that MSE magnifies the errors with magnitude>1 and shrinks the errors with magnitude&lt;1 (on a quadratic scale), which RMSE doesn't do.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-09-01T05:10:28.623Z
Comments.Text: Thanks @DuttaA , I think the comment you've given is quite good, that it can be one of the answers to this question. So, please post it as an answer below :)
Comments.UserDisplayName: Gokul NC
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-06-16T05:26:24.453Z
Comments.Text: I don't believe there is any practical difference. Someone should provide a reference to a source that says there is a difference if you think there is one.
Comments.UserDisplayName: Taw
Tags: <machine-learning><deep-learning><training><objective-functions>
Title: When to use RMSE as opposed to MSE and vice versa?
UserDisplayName: Gokul NC
ThreadText: # When to use RMSE as opposed to MSE and vice versa?
  
  (Asked by: username_0 on 2019-08-31)
  
  I understand that RMSE is just the square root of MSE. Generally, as far as I have seen, people seem to use MSE as a loss function and RMSE for evaluation purposes, since it exactly gives you the error as a distance in the Euclidean space.
  
  **What could be a major difference between using MSE and RMSE when used as loss functions for training?**
  
  I'm curious because good frameworks like PyTorch, Keras, etc. don't provide RMSE loss functions out of the box. Is it some kind of standard convention? If so, why?
  
  Also, I'm aware of the difference that MSE magnifies the errors with magnitude>1 and shrinks the errors with magnitude<1 (on a quadratic scale), which RMSE doesn't do.
  
  **Tags:** machine-learning, deep-learning, training, objective-functions
  
  > **Comments:**
  > **username_0**: Thanks @DuttaA , I think the comment you've given is quite good, that it can be one of the answers to this question. So, please post it as an answer below :)  
  > **username_1**: I don't believe there is any practical difference. Someone should provide a reference to a source that says there is a difference if you think there is one.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2021-05-17. Score: 1
  
  Answers in the comments are decent, particularly DuttA.
  
  DuttA gives these, approximately
  
  * ease of derivative
  * Don't have to worry about ~0 in denominator causing huge gradient
  * But to me the most important is mathematical convenience, someone
    might easily make the mistake of RMSE is just equal the difference
    y−y′ instead of root of mean square of y−y′. The answer this might
    start depending on conventions.
  * In maths (Don't know the reason and might be inaccurate) we mainly
    work with variances instead of standard deviation.
  
  Here are my reasons for using the MSE instead of RMSE:
  
  * Doesn't have the sqrt operations, so it computes faster
  * the square root isn't easy, its Newtons method, so it could be a
    dozens steps per iteration
  * MSE has all the information of RMSE, there is 1-to-1 mapping, so no loss
  * the storage of the square root typically doesn't save any memory in
    IEEE-784 and compute vs. memory is big thing in complexity
  * tools like gradient boosted machine can "recycle" the squared error
    computation for speedup and working on O(n) complexity
  * there is hidden scaling and regularization because many gpu hardware
    elements are fundamentally 8-bit, so if you can make your code more
    8-bit in its guts then you don't have as much in the back-conversion
    and it runs a lot faster
  
  
  ---
  
  