sparseVARX {bigtime}R Documentation

Sparse Estimation of the Vector AutoRegressive with Exogenous Variables X (VARX) Model

Description

Sparse Estimation of the Vector AutoRegressive with Exogenous Variables X (VARX) Model

Usage

sparseVARX(
  Y,
  X,
  p = NULL,
  s = NULL,
  VARXpen = "HLag",
  VARXlPhiseq = NULL,
  VARXPhigran = NULL,
  VARXlBseq = NULL,
  VARXBgran = NULL,
  VARXalpha = 0,
  h = 1,
  cvcut = 0.9,
  eps = 10^-3,
  selection = c("none", "cv", "bic", "aic", "hq"),
  check_std = TRUE,
  verbose = FALSE
)

Arguments

Y

A T by k matrix of time series. If k=1, a univariate autoregressive model is estimated.

X

A T by m matrix of time series.

p

User-specified maximum endogenous autoregressive lag order. Typical usage is to have the program compute its own maximum lag order based on the time series length.

s

User-specified maximum exogenous autoregressive lag order. Typical usage is to have the program compute its own maximum lag order based on the time series length.

VARXpen

"HLag" (hierarchical sparse penalty) or "L1" (standard lasso penalty) penalization in VARX.

VARXlPhiseq

User-specified grid of values for regularization parameter corresponding to the endogenous autoregressive coefficients in the VARX. Typical usage is to have the program compute its own grid. Supplying a grid of values overrides this. WARNING: use with care.

VARXPhigran

User-specified vector of granularity specifications for the penalty parameter grid corresponding to the endogenous autoregressive coefficients in the VARX: First element specifies how deep the grid should be constructed. Second element specifies how many values the grid should contain.

VARXlBseq

User-specified grid of values for regularization parameter corresponding to the exogenous autoregressive coefficients in the VARX. Typical usage is to have the program compute its own grid. Supplying a grid of values overrides this. WARNING: use with care.

VARXBgran

User-specified vector of granularity specifications for the penalty parameter grid corresponding to the exogenous autoregressive coefficients in the VARX: First element specifies how deep the grid should be constructed. Second element specifies how many values the grid should contain.

VARXalpha

a small positive regularization parameter value corresponding to squared Frobenius penalty. The default is zero.

h

Desired forecast horizon in time-series cross-validation procedure.

cvcut

Proportion of observations used for model estimation in the time series cross-validation procedure. The remainder is used for forecast evaluation.

eps

a small positive numeric value giving the tolerance for convergence in the proximal gradient algorithm.

selection

Model selection method to be used. Default is none, which will return all values for all penalisations.

check_std

Check whether data is standardised. Default is TRUE and is not recommended to be changed

verbose

Logical to print value of information criteria for each lambda together with selection. Default is FALSE

Value

A list with the following components

Y

T by k matrix of endogenous time series.

X

T by m matrix of exogenous time series.

k

Number of endogenous time series.

m

Number of exogenous time series.

p

Maximum endogenous autoregressive lag order of the VARX.

s

Maximum exogenouss autoregressive lag order of the VARX.

Phihat

Matrix of estimated endogenous autoregressive coefficients.

Bhat

Matrix of estimated exogenous autoregressive coefficients.

phi0hat

vector of VARX intercepts.

exogenous_series_names

names of the exogenous time series

endogenous_series_names

names of the endogenous time series

lambdaPhi

sparsity parameter grid corresponding to endogenous autoregressive parameters

lambdaB

sparsity parameter grid corresponding to exogenous autoregressive parameters

lambdaPhi_opt

Optimal value of the sparsity parameter (corresponding to the endogenous autoregressive parameters) as selected by the time-series cross-validation procedure

lambdaPhi_SEopt

Optimal value of the sparsity parameter (corresponding to the endogenous autoregressive parameters) as selected by the time-series cross-validation procedure and after applying the one-standard-error rule

lambdaB_opt

Optimal value of the sparsity parameter (corresponding to the exogenous autoregressive parameters) as selected by the time-series cross-validation procedure

lambdaB_SEopt

Optimal value of the sparsity parameter (corresponding to the exogenous autoregressive parameters) as selected by the time-series cross-validation procedure and after applying the one-standard-error rule

MSFEcv

MSFE cross-validation scores for each value in the two-dimensional sparsity grid

h

Forecast horizon h

References

Wilms Ines, Sumanta Basu, Bien Jacob and Matteson David S. (2017), “Interpretable vector autoregressions with exogenous time series”, NIPS 2017 Symposium on Interpretable Machine Learning, arXiv:1711.03623.

See Also

lagmatrix and directforecast

Examples

data(varx.example)
VARXfit <- sparseVARX(Y=scale(Y.varx), X=scale(X.varx)) # sparse VARX
y <- matrix(Y.varx[,1], ncol=1)
ARXfit <- sparseVARX(Y=y, X=X.varx) # sparse ARX

[Package bigtime version 0.2.3 Index]