class_docstr: Bitmap Algorithm.
  This method breaks time series into chunks and uses the frequency of similar chunks
  to determine anomaly scores.
  The ideas are from this paper:
  Assumption-Free Anomaly Detection in Time Series(http://alumni.cs.ucr.edu/~ratana/SSDBM05.pdf).
class_docstr_tok: ["Bitmap","Algorithm",".","This","method","breaks","time","series","into","chunks","and","uses","the","frequency","of","similar","chunks","to","determine","anomaly","scores",".","The","ideas","are","from","this","paper",":","Assumption-Free","Anomaly","Detection","in","Time","Series","(","http",":","\/\/alumni.cs.ucr.edu\/~ratana\/SSDBM05.pdf",")","."]
docstr: Form a chunk frequency dictionary from a SAX representation.
  :param str sax: a SAX representation.
  :return dict: frequency dictionary for chunks in the SAX representation.
docstr_tok: ["Form","a","chunk","frequency","dictionary","from","a","SAX","representation",".",":","param","str","sax",":","a","SAX","representation",".",":","return","dict",":","frequency","dictionary","for","chunks","in","the","SAX","representation","."]
code: def _construct_SAX_chunk_dict(self, sax):
      """
      Form a chunk frequency dictionary from a SAX representation.
      :param str sax: a SAX representation.
      :return dict: frequency dictionary for chunks in the SAX representation.
      """
      frequency = defaultdict(int)
      chunk_size = self.chunk_size
      length = len(sax)
      for i in range(length):
          if i + chunk_size <= length:
              chunk = sax[i : i + chunk_size]
              frequency[chunk] += 1
      return frequency
  
file_path: luminol/src/luminol/algorithms/anomaly_detector_algorithms/bitmap_detector.py
imports: from collections import defaultdict
  from copy import copy
  import math
  from luminol import exceptions
  from luminol.algorithms.anomaly_detector_algorithms import AnomalyDetectorAlgorithm
  from luminol.modules.time_series import TimeSeries
  from luminol.constants import DEFAULT_BITMAP_PRECISION, DEFAULT_BITMAP_CHUNK_SIZE, DEFAULT_BITMAP_LAGGING_WINDOW_SIZE_PCT, DEFAULT_BITMAP_LEADING_WINDOW_SIZE_PCT, DEFAULT_BITMAP_MINIMAL_POINTS_IN_WINDOWS, DEFAULT_BITMAP_MAXIMAL_POINTS_IN_WINDOWS
label_desc: Use image node_id 5 for calling the BitmapDetector obj's underlying member method code with example usage: obj._construct_SAX_chunk_dict(sax) and returns: frequency