Bayesian structural time series

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found. Bayesian Structural Time Series (BSTS) model is a machine learning technique used for feature selection, time series forecasting, nowcasting, inferring causal impact and other. 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 asses 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 model is a usual alternative approach in this case).[1] "In contrast to classical difference-in-differences schemes, state-space models make it possible to (i) infer the temporal evolution of attributable impact, (ii) incorporate empirical priors on the parameters in a fully Bayesian treatment, and (iii) flexibly accommodate multiple sources of variation, including the time-varying influence of contemporaneous covariates, i.e., synthetic controls."[1]

General model description

The model consists of three main parts:

  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 seems to discover not only correlations, but also causations in the underlying data.[1]

A possible drawback of the model can be its relatively complicated mathematical part. However, R-program has ready-to-use packages for calculating the BSTS model,[2][3] which do not require strong mathematical background from a researcher.

See also

References

  1. 1.0 1.1 1.2 Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.