class_docstr: Configuration class for LSTM-encoder-decoder. The normalization is inherited from `NormalizingConfig`.
  The input data will be standardized automatically.
docstr: :param hidden_size: The hidden state size of the LSTM modules
  :param sequence_len: The input series length, e.g., input = [x(t-sequence_len+1)...,x(t-1),x(t)]
  :param n_layers: The number of layers for the LSTM encoder and decoder. ``n_layer`` has two values, i.e.,
      ``n_layer[0]`` is the number of encoder layers and ``n_layer[1]`` is the number of decoder layers.
  :param dropout: The dropout rate for the LSTM encoder and decoder. ``dropout`` has two values, i.e.,
      ``dropout[0]`` is the dropout rate for the encoder and ``dropout[1]`` is the dropout rate for the decoder.
  :param lr: The learning rate during training
  :param batch_size: The batch size during training
  :param num_epochs: The number of training epochs
docstr_tok: [":","param","hidden_size",":","The","hidden","state","size","of","the","LSTM","modules",":","param","sequence_len",":","The","input","series","length",",","e.g.",",","input","=","[","x","(","t-sequence_len+1",")","...",",","x","(","t-1",")",",","x","(","t",")","]",":","param","n_layers",":","The","number","of","layers","for","the","LSTM","encoder","and","decoder",".","``","n_layer","``","has","two","values",",","i.e.",",","``","n_layer","[","0","]","``","is","the","number","of","encoder","layers","and","``","n_layer","[","1","]","``","is","the","number","of","decoder","layers",".",":","param","dropout",":","The","dropout","rate","for","the","LSTM","encoder","and","decoder",".","``","dropout","``","has","two","values",",","i.e.",",","``","dropout","[","0","]","``","is","the","dropout","rate","for","the","encoder","and","``","dropout","[","1","]","``","is","the","dropout","rate","for","the","decoder",".",":","param","lr",":","The","learning","rate","during","training",":","param","batch_size",":","The","batch","size","during","training",":","param","num_epochs",":","The","number","of","training","epochs"]
code: def __init__(
      self,
      hidden_size: int = 5,
      sequence_len: int = 20,
      n_layers: Sequence[int] = (1, 1),
      dropout: Sequence[int] = (0, 0),
      lr: float = 1e-3,
      batch_size: int = 256,
      num_epochs: int = 10,
      **kwargs,
  ):
      """
      :param hidden_size: The hidden state size of the LSTM modules
      :param sequence_len: The input series length, e.g., input = [x(t-sequence_len+1)...,x(t-1),x(t)]
      :param n_layers: The number of layers for the LSTM encoder and decoder. ``n_layer`` has two values, i.e.,
          ``n_layer[0]`` is the number of encoder layers and ``n_layer[1]`` is the number of decoder layers.
      :param dropout: The dropout rate for the LSTM encoder and decoder. ``dropout`` has two values, i.e.,
          ``dropout[0]`` is the dropout rate for the encoder and ``dropout[1]`` is the dropout rate for the decoder.
      :param lr: The learning rate during training
      :param batch_size: The batch size during training
      :param num_epochs: The number of training epochs
      """
      super().__init__(**kwargs)
  
imports: from typing import Sequence
  import numpy
  import pandas
  from merlion.models.base import NormalizingConfig
  from merlion.models.anomaly.base import DetectorBase, DetectorConfig
  from merlion.post_process.threshold import AggregateAlarms
  from merlion.utils.misc import ProgressBar, initializer
  from merlion.models.utils.rolling_window_dataset import RollingWindowDataset
label_desc: Use image node_id 1 to create a new LSTMEDConfig object from inherited base classes: DetectorConfig, NormalizingConfig with example: obj = LSTMEDConfig(hidden_size, sequence_len, n_layers, dropout, lr, batch_size, num_epochs)