Feed-forward neural networks with a single hidden layer and lagged inputs for forecasting univariate time series.

NNETAR(formula, n_nodes = NULL, n_networks = 20, scale_inputs = TRUE, ...)

formula | Model specification (see "Specials" section). |
---|---|

n_nodes | Number of nodes in the hidden layer. Default is half of the number of input nodes (including external regressors, if given) plus 1. |

n_networks | Number of networks to fit with different random starting weights. These are then averaged when producing forecasts. |

scale_inputs | If TRUE, inputs are scaled by subtracting the column means and dividing by their respective standard deviations. Scaling is applied after transformations. |

... | Other arguments passed to |

A model specification.

A feed-forward neural network is fitted with lagged values of the response as
inputs and a single hidden layer with `size`

nodes. The inputs are for
lags 1 to `p`

, and lags `m`

to `mP`

where
`m`

is the seasonal period specified.

If exogenous regressors are provided, its columns are also used as inputs.
Missing values are currently not supported by this model.
A total of `repeats`

networks are
fitted, each with random starting weights. These are then averaged when
computing forecasts. The network is trained for one-step forecasting.
Multi-step forecasts are computed recursively.

For non-seasonal data, the fitted model is denoted as an NNAR(p,k) model, where k is the number of hidden nodes. This is analogous to an AR(p) model but with non-linear functions. For seasonal data, the fitted model is called an NNAR(p,P,k)[m] model, which is analogous to an ARIMA(p,0,0)(P,0,0)[m] model but with non-linear functions.

The `AR`

special is used to specify auto-regressive components in each of the
nodes of the neural network.

AR(p = NULL, P = 1, period = NULL)

`p` | The order of the non-seasonal auto-regressive (AR) terms. If `p = NULL` , an optimal number of lags will be selected for a linear AR(p) model via AIC. For seasonal time series, this will be computed on the seasonally adjusted data (via STL decomposition). |

`P` | The order of the seasonal auto-regressive (SAR) terms. |

`period` | The periodic nature of the seasonality. This can be either a number indicating the number of observations in each seasonal period, or text to indicate the duration of the seasonal window (for example, annual seasonality would be "1 year"). |

Exogenous regressors can be included in an NNETAR model without explicitly using the `xreg()`

special. Common exogenous regressor specials as specified in `common_xregs`

can also be used. These regressors are handled using `stats::model.frame()`

, and so interactions and other functionality behaves similarly to `stats::lm()`

.

xreg(...)

`...` | Bare expressions for the exogenous regressors (such as `log(x)` ) |

#> # A mable: 1 x 1 #> nn #> <model> #> 1 <NNAR(1,1)>