Skip to contents

Train an Echo State Network (ESN) to a univariate time series. The function automatically manages data pre-processing, reservoir generation (i.e., internal states) and model estimation and selection. The function is a wrapper for train_esn() and intended to be used in combination with fabletools::model().

Usage

ESN(formula, ...)

Arguments

formula

A model formula used by the fabletools model specification interface. The left-hand side identifies the univariate response variable to be modeled. The current implementation does not interpret additional right-hand-side terms, because echos currently supports univariate ESN models without exogenous regressors. The formula interface is retained for consistency with fabletools::model() and to allow future extensions, such as exogenous variables or richer model specifications.

...

Further arguments passed to train_esn(), including ESN architecture, pre-processing, and model-selection parameters such as lags, n_diff, n_states, n_models, alpha, rho, tau, density, lambda, scale_win, scale_wres, and scale_inputs.

Value

An object of class ESN.

Examples

library(tsibble)
#> 
#> Attaching package: 'tsibble'
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, union
library(fable)
AirPassengers %>%
as_tsibble() %>%
model("ESN" = ESN(value))
#> # A mable: 1 x 1
#>                               ESN
#>                           <model>
#> 1 <ESN({57, 1, 1}, {114, 16.68})>