class_docstr: Exponential Moving Average.
  This method uses a data point's deviation from the exponential moving average of a lagging window
  to determine its anomaly score.
docstr: Compute anomaly score for a single data point.
  Anomaly score for a single data point(t,v) equals: abs(v - ema(lagging window)).
  :param list lag_window_points: values in the lagging window.
  :param float point: data point value.
  :return float: the anomaly score.
code: def _compute_anom_score(self, lag_window_points, point):
      """
      Compute anomaly score for a single data point.
      Anomaly score for a single data point(t,v) equals: abs(v - ema(lagging window)).
      :param list lag_window_points: values in the lagging window.
      :param float point: data point value.
      :return float: the anomaly score.
      """
      ema = utils.compute_ema(self.smoothing_factor, lag_window_points)[
          -1
      ]
      return abs(point - ema)
  
file_path: luminol/src/luminol/algorithms/anomaly_detector_algorithms/exp_avg_detector.py
imports: import numpy
  from luminol import utils
  from luminol.algorithms.anomaly_detector_algorithms import AnomalyDetectorAlgorithm
  from luminol.modules.time_series import TimeSeries
  from luminol.constants import DEFAULT_EMA_SMOOTHING_FACTOR, DEFAULT_EMA_WINDOW_SIZE_PCT
label_desc: Use image node_id 2 for calling the ExpAvgDetector obj's underlying member method code with example usage: obj._compute_anom_score(lag_window_points, point) and returns: abs