forecast (version 4.04)

nnetar: Neural Network Time Series Forecasts

Description

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

Usage

nnetar(x, p, P=1, size, repeats=20, lambda=NULL)
## S3 method for class 'nnetar':
forecast(object, h=ifelse(object$m > 1, 2 * object$m, 10), 
    lambda=object$lambda, ...)

Arguments

x
a numeric vector or time series
p
Embedding dimension for non-seasonal time series. Number of non-seasonal lags used as inputs. For non-seasonal time series, the default is the optimal number of lags (according to the AIC) for a linear AR(p) model. For seasonal time series, the same metho
P
Number of seasonal lags used as inputs.
size
Number of nodes in the hidden layer. Default is half of the number of input nodes plus 1.
repeats
Number of networks to fit with different random starting weights. These are then averaged when producing forecasts.
lambda
Box-Cox transformation parameter.
object
An object of class nnetar generated by nnetar.
h
Number of periods for forecasting.
...
Other arguments.

Value

  • nnetar returns an object of class "nnetar". forecast.nnetar returns an object of class "forecast".

    The function summary is used to obtain and print a summary of the results, while the function plot produces a plot of the forecasts.

    The generic accessor functions fitted.values and residuals extract useful features of the value returned by nnetar.

    An object of class "forecast" is a list containing at least the following elements:

  • modelA list containing information about the fitted model
  • methodThe name of the forecasting method as a character string
  • meanPoint forecasts as a time series
  • xThe original time series (either object itself or the time series used to create the model stored as object).
  • residualsResiduals from the fitted model. That is x minus fitted values.
  • fittedFitted values (one-step forecasts)
  • ...Other arguments

Details

A feed-forward neural network is fitted with lagged values of x 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=frequency(x). 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. The fitted model is called an NNAR(p,P) model and is analogous to an ARIMA(p,0,0)(P,0,0) model but with nonlinear functions.

Examples

Run this code
fit <- nnetar(lynx)
fcast <- forecast(fit)
plot(fcast)

Run the code above in your browser using DataCamp Workspace