Forecasting
Time series forecasting is a task that involves using a model to predict future values of a time series based on its past values. The data consists of sequences of values that are recorded at regular intervals over a period of time, such as daily stock prices or monthly weather data. Time series forecasting can be approached using a variety of machine learning techniques, including linear regression, decision trees, and neural networks.
One key difference between time series forecasting and other types of machine learning tasks is the presence of temporal dependencies in the data. In time series data, the value at a particular time point is often influenced by the values that came before it, which means that the order in which the data points are presented is important. This can make time series forecasting more challenging, as the model must take into account the relationships between past and future values in order to make accurate predictions.
One of the most accessible and comprehensive source on forecasting using R is Forecasting: Principles and Practice by Rob J Hyndman and George Athanasopoulos. The book now has the \(3^{rd}\) edition that uses the tsibble
and fable
packages rather than the forecast
package. This brings a better integration to the tidyverse collection of packages. We will not summarize the book (FPP3) here nor use the same examples. However, we will use the tsibble
and fable
packages along with the fpp3
package. There is a paper by Wang et al. (2020) describing tsibble
and the package in more details. A move from FPP2 to FPP3 brings a move from forecast
to fable
. The main difference is that fable
is designed for tsibble
objects and forecast
is designed for ts
objects.
We cover five main topics: applications with ARIMA models, grid search for ARIMA, timr series embedding, random forest applications with time series data, and artificial neural network applications, RNN and LSTM. The time-series analysis and forecasting is a very deep and complex subject, which is beyond the scope of this book to cover in detail. FPP3 is free and very accessible even for those without any background on time-series forecasting. Therefore, this section assumes that some major concepts, like stationarity, time series decomposition, and exponential smoothing, are already checked and understood by further readings of FPP3.