class_docstr: Maintains a stream of deviation and base values, and compute the following ratio
  
  MD = \sqrt{\sigma{deviation^2}} / \sqrt{\sigma{base^2}}
  
  Call .restart() to clear added values and to start a new round of averaging
code: def value(self) -> float:
      if self._cum_base == 0.0:
          warnings.warn("Cumulative base is 0. " "Inf is returned.")
          return float("inf")
      else:
          return self._cum_deviation**0.5 / self._cum_base**0.5
  
imports: from __future__ import annotations
  import time
  import warnings
  from abc import ABC, abstractmethod
  from typing import Optional, Union
  from torch import Tensor
  from ..engine.distributed import reduce_value
label_desc: Use image node_id 2 for calling the RootMeanSquareDeviationMeter obj's underlying member method code with example usage: obj.value() and returns: float, unknown