class_docstr: maintains an exponential moving average
code: def relchange(self):
      if self.num_updates() > np.max(
          [self.valid_after, self.n_iters_relchange]
      ):
          return np.max(self.rel_change[-self.n_iters_relchange :])
      else:
          return np.nan
  
file_path: nni/nni/algorithms/feature_engineering/gradient_selector/utils.py
imports: import numpy
label_desc: Use image node_id 3 for calling the EMA obj's underlying member method code with example usage: obj.relchange() and returns: np, np