BATSModel

class BATSModel(use_box_cox: Optional[bool] = None, box_cox_bounds: Tuple[int, int] = (0, 1), use_trend: Optional[bool] = None, use_damped_trend: Optional[bool] = None, seasonal_periods: Optional[Iterable[int]] = None, use_arma_errors: bool = True, show_warnings: bool = True, n_jobs: Optional[int] = None, multiprocessing_start_method: str = 'spawn', context: Optional[tbats.abstract.ContextInterface.ContextInterface] = None)[source]

Bases: etna.models.mixins.PerSegmentModelMixin, etna.models.mixins.PredictionIntervalContextIgnorantModelMixin, etna.models.base.PredictionIntervalContextIgnorantAbstractModel

Class for holding segment interval BATS model.

Notes

This model supports in-sample and out-of-sample prediction decomposition. Prediction components for BATS model are: local level, trend, seasonality and ARMA component. In-sample and out-of-sample decompositions components are estimated directly from the fitted model parameters. Box-Cox transform supported with components proportional rescaling.

Create BATSModel with given parameters.

Parameters
  • use_box_cox (bool or None, optional (default=None)) – If Box-Cox transformation of original series should be applied. When None both cases shall be considered and better is selected by AIC.

  • box_cox_bounds (tuple, shape=(2,), optional (default=(0, 1))) – Minimal and maximal Box-Cox parameter values.

  • use_trend (bool or None, optional (default=None)) – Indicates whether to include a trend or not. When None both cases shall be considered and better is selected by AIC.

  • use_damped_trend (bool or None, optional (default=None)) – Indicates whether to include a damping parameter in the trend or not. Applies only when trend is used. When None both cases shall be considered and better is selected by AIC.

  • seasonal_periods (iterable or array-like of int values, optional (default=None)) – Length of each of the periods (amount of observations in each period). BATS accepts only int values here. When None or empty array, non-seasonal model shall be fitted.

  • use_arma_errors (bool, optional (default=True)) – When True BATS will try to improve the model by modelling residuals with ARMA. Best model will be selected by AIC. If False, ARMA residuals modeling will not be considered.

  • show_warnings (bool, optional (default=True)) – If warnings should be shown or not. Also see Model.warnings variable that contains all model related warnings.

  • n_jobs (int, optional (default=None)) – How many jobs to run in parallel when fitting BATS model. When not provided BATS shall try to utilize all available cpu cores.

  • multiprocessing_start_method (str, optional (default='spawn')) – How threads should be started. See https://docs.python.org/3/library/multiprocessing.html#contexts-and-start-methods

  • context (abstract.ContextInterface, optional (default=None)) – For advanced users only. Provide this to override default behaviors

Inherited-members

Methods

fit(ts)

Fit model.

forecast(ts[, prediction_interval, ...])

Make predictions.

get_model()

Get internal models that are used inside etna class.

load(path)

Load an object.

params_to_tune()

Get grid for tuning hyperparameters.

predict(ts[, prediction_interval, ...])

Make predictions with using true values as autoregression context if possible (teacher forcing).

save(path)

Save the object.

set_params(**params)

Return new object instance with modified parameters.

to_dict()

Collect all information about etna object in dict.

Attributes

context_size

Context size of the model.