# Forecasting and Analytics with ADAM

*2022-11-18*

# Preface

### Who is this book for?

This monograph assumes that the reader has a good understanding of statistics and a good knowledge of regression analysis. Some Chapters rely on more advanced topics, including likelihood and information criteria. These are explained, for example, in Svetunkov (2022a). Some parts of the book also use linear algebra to show how various properties of state space models are derived. However, these can be skipped by a reader who is not comfortable with higher maths without losing in the understanding of the main idea of models. Furthermore, while the monograph is self-sufficient to a large extent, it does not contain a detailed discussion of special cases of state space models (e.g. local level model is only discussed in passing in Section 4.3, while the local trend is covered in Section 4.4). The reader interested in knowing more about some special cases is referred to the Hyndman et al. (2008) monograph. Finally, while the monograph starts with the basics of forecasting and explains some of the simple forecasting techniques, it does not cover these in detail. A good book covering the fundamentals of forecasting is Ord et al. (2017).

In a more wide sense, this book is written for data scientists, computer scientists, data, business and marketing analysts who work in forecasting or want to learn more about univariate forecasting using statistical models.

### What is ADAM?

ADAM stands for “Augmented Dynamic Adaptive Model”. The term “adaptive model” means that the parameters of the model change over time according to some assumed process. The word “dynamic” reflects the idea that the model has time series related components (ETS, ARIMA). Finally, the word “augmented” is included because ADAM is the model that supports additional features not included in the conventional ETS/ARIMA. ADAM is a unified framework for constructing ETS / ARIMA / regression, based on more advanced statistical instruments. For example, classical ARIMA is built on the assumption of normality of the error term, but ADAM lifts this assumption and allows using other distributions as well (e.g. Generalised Normal, Inverse Gaussian etc). Another example, typically the conventional models are estimated either via the maximisation of the likelihood function or using basic losses like MSE or MAE, but ADAM includes a broader spectrum of losses and allows using custom ones. There is much more, and we will discuss different aspects of ADAM in detail later in this monograph. The ADAM includes:

- ETS;
- ARIMA;
- Regression;
- TVP regression;
- Combination of (1), (2) and either (3), or (4);
- Automatic selection/combination of states for ETS;
- Automatic orders selection for ARIMA;
- Variables selection for regression;
- Normal and non-normal distributions;
- Automatic selection of most suitable distributions;
- Multiple seasonality;
- Occurrence part of the model to handle zeroes in data (intermittent demand);
- Modelling scale of distribution (GARCH and beyond);
- Handling uncertainty of estimates of parameters.

All these extensions are needed to solve specific real life problems, so we will include examples and case studies later in the book to see how all of this can be used. The `adam()`

function from `smooth`

package for R implements ADAM and supports the following features:

- Model diagnostics using
`plot()`

and other methods; - Confidence intervals for parameters of models;
- Automatic outliers detection;
- Handling missing data;
- Fine-tuning of persistence vector (smoothing parameters);
- Fine-tuning of initial values of the state vector (e.g. level / trend / seasonality);
- Two initialisation options (optimal / backcasting);
- Advanced and custom loss functions;
- Manual patameters for ETS, ARMA and regression;
- Fine-tuning of the optimiser (selection of optimisation algorithm and convergence criteria);
- Scale model via the
`sm()`

method.

This monograph uses two packages from R, namely `greybox`

, which focuses on forecasting using regression models, and `smooth`

, which implements Single Source of Error (SSOE) state space models for time series analysis and forecasting. The monograph focuses on explaining how ADAM, one of the `smooth`

functions (introduced in v3.0.0) works, also showing how it can be used in practice with examples from R.

If you want to run examples from the monograph, two R packages are needed (Svetunkov, 2022b, 2022c):

```
install.packages("greybox")
install.packages("smooth")
```

Some explanations of functions from the packages are given in my blog: Package greybox for R, Package smooth for R.

An important thing to note is that this monograph **does not use tidyverse packages**. I like base R, and, to be honest, I am sure that

`tidyverse`

packages are great, but I have never needed them in my research. So, I will not use pipeline operators, `tibble`

or `tsibble`

objects and `ggplot2`

. I assume throughout the monograph that you can do all those nice tricks on your own if you want to.### How to cite ADAM

You can use the following to cite the online version of this book:

- Svetunkov, I. (2022) Forecasting and Analytics with ADAM. Monograph. OpenForecast. Lancaster, UK. www.openforecast.org/adam. Accessed on [current date].

If you use LaTeX, the following can be used instead:

```
@MISC{SvetunkovAdam,
= {Forecasting and Analytics with ADAM},
title = {Ivan Svetunkov},
author = {Monograph. OpenForecast},
howpublished = {(version: [current date])},
note = {https://openforecast.org/adam/},
url = {2022}
year }
```

### License

This monograph is licensed under Creative Common License by-nc-sa 4.0, which means that you can share, copy, redistribute and remix the content of the monograph for non-commercial purposes as long as you give appropriate credit to the author and provide the link to the original license. If you remix, transform, or build upon the material, you must distribute your contributions under the same CC-BY-NC-SA 4.0 license. See the explanation on the Creative Commons website.

### Acknowledgments

I would like to thank Robert Fildes for his comments about this book and helping in shaping it into a monograph and J. Keith Ord for his invaluable suggestions for improvement of the monograph. I also would like to thank Tobias Schmidt for his help in refining earlier parts of the monograph and correcting grammatical mistakes.