deepcausalmmm.core.seasonality

Classes

DetectSeasonality()

Seasonality detection and decomposition for time series data.

class deepcausalmmm.core.seasonality.DetectSeasonality[source]

Seasonality detection and decomposition for time series data.

Provides methods for extracting seasonal patterns from time series, with support for multi-region analysis in marketing mix modeling.

__init__()[source]

Initialize the seasonality detector.

decompose(X, period=52)[source]

Perform seasonal decomposition using multiplicative model.

Parameters:
  • X – Time series data

  • period – Seasonal period (default 52 for weekly data = annual seasonality)

Returns:

Seasonal decomposition result

extract_seasonal_components_per_region(y_data: ndarray, start_week: int = 0) Tensor[source]

Extract seasonal components for each region separately.

Parameters:
  • y_data – Target data [n_regions, n_weeks]

  • start_week – Starting week index for proper alignment

Returns:

Seasonal components [n_regions, n_weeks] as torch.Tensor

get_seasonal_contribution_for_inference(seasonal_components: Tensor, weeks_slice: slice | None = None) Tensor[source]

Get seasonal components for inference, with optional time slicing.

Parameters:
  • seasonal_components – Pre-computed seasonal components [n_regions, n_weeks]

  • weeks_slice – Optional slice for specific weeks

Returns:

Seasonal components for the specified time period