Theechos package provides a comprehensive set offunctions and methods for modeling and forecasting univariate time series usingEcho State Networks (ESNs). It offers two alternative approaches:
- Base R interface: Functions for modeling and forecasting time series using
numericvectors, allowing for straightforward integration with existing R workflows. - Tidy interface: A seamless integration with the
fableframework based ontsibble, enabling tidy time series forecasting and model evaluation. This interface leverages thefabletoolspackage, providing a consistent and streamlined workflow for model development, evaluation, and visualization.
The package features alightweight implementation that enablesfast and fully automatic model training and forecasting using ESNs. You can quickly and easily build accurate ESN models without requiring extensive hyperparameter tuning or manual configuration.
Installation
You can install thestable version fromCRAN:
install.packages("echos")You can install thedevelopment version fromGitHub:
# install.packages("devtools")devtools::install_github("ahaeusser/echos")Base R
library(echos)# Forecast horizonn_ahead<-12# forecast horizon# Number of observationsn_obs<-length(AirPassengers)# Number of observations for trainingn_train<-n_obs-n_ahead# Prepare train and test dataxtrain<-AirPassengers[(1:n_train)]xtest<-AirPassengers[((n_train+1):n_obs)]# Train and forecast ESN modelxmodel<-train_esn(y=xtrain)xfcst<-forecast_esn(xmodel, n_ahead=n_ahead)# Plot resultplot(xfcst, test=xtest)