class_docstr: Abstract class which defines an evaluator config.
class_docstr_tok: ["Abstract","class","which","defines","an","evaluator","config","."]
docstr: :return: the frequency at which we want to re-train the model. ``None`` means we only train the model on the
      initial training data.
docstr_tok: [":","return",":","the","frequency","at","which","we","want","to","re-train","the","model",".","``","None","``","means","we","only","train","the","model","on","the","initial","training","data","."]
code: def retrain_freq(self) -> Union[pd.Timedelta, pd.DateOffset, None]:
      """
      :return: the frequency at which we want to re-train the model. ``None`` means we only train the model on the
          initial training data.
      """
      return self._retrain_freq
  
imports: from abc import abstractmethod
  from typing import Any, List, Tuple, Union
  import numpy
  import pandas
  from tqdm import tqdm
  from merlion.models.base import ModelBase
  from merlion.models.forecast.base import ForecasterBase
  from merlion.utils.misc import AutodocABCMeta
  from merlion.utils.resample import granularity_str_to_seconds, to_offset
  from merlion.utils.time_series import TimeSeries
label_desc: Use image node_id 4 for calling the EvaluatorConfig obj's underlying member method code with example usage: obj.retrain_freq() and returns: self