Bayesian structural time series


Bayesian structural time series model is a statistical technique used for feature selection, time series forecasting, nowcasting, inferring causal impact and other applications. The model is designed to work with time series data.
The model has also promising application in the field of analytical marketing. In particular, it can be used in order to assess how much different marketing campaigns have contributed to the change in web search volumes, product sales, brand popularity and other relevant indicators. Difference-in-differences models and interrupted time series designs are alternatives to this approach. "In contrast to classical difference-in-differences schemes, state-space models make it possible to infer the temporal evolution of attributable impact, incorporate empirical priors on the parameters in a fully Bayesian treatment, and flexibly accommodate multiple sources of variation, including the time-varying influence of contemporaneous covariates, i.e., synthetic controls."

General model description

The model consists of three main components:
  1. Kalman filter. The technique for time series decomposition. In this step, a researcher can add different state variables: trend, seasonality, regression, and others.
  2. Spike-and-slab method. In this step, the most important regression predictors are selected.
  3. Bayesian model averaging. Combining the results and prediction calculation.
The model could be used to discover the causations with its counterfactual prediction and the observed data.
A possible drawback of the model can be its relatively complicated mathematical underpinning and difficult implementation as a computer program. However, the programming language R has ready-to-use packages for calculating the BSTS model, which do not require strong mathematical background from a researcher.