Simple function to fit BigVAR model with fixed penalty parameter
BigVAR.fit(
Y,
p,
struct,
lambda,
alpha = NULL,
VARX = list(),
separate_lambdas = F,
MN = F,
C = as.double(NULL),
intercept = TRUE,
tf = F,
tol = 1e-04,
RVAR = F,
refit_fraction = 1,
beta = NULL,
gamma = 3
)
\(T \times k\) multivariate time series or Y \(T \times (k+m)\) endogenous and exogenous series, respectively
Predetermined maximal lag order (for modeled series)
The choice of penalty structure (see details).
vector or matrix of penalty parameters.
grid of candidate parameters for the alpha in the Sparse Lag and Sparse Own/Other VARX-L
List containing VARX model specifications.
indicator for separate penalty parameters for each time series (default FALSE
)
Minnesota Prior Indicator
vector of coefficients to shrink toward a random walk (if MN
is TRUE
)
True or False: option to fit an intercept
transfer function indicator (i.e. VARX in which p=0 & s>0) (default false)
optimization tolerance (default 1e-4)
True or False: option to refit based upon the support selected using the Relaxed-VAR procedure
fraction of least squares refit to incorporate (default 1)
optional \(k\times (k\times p + m\times s +1)\) coefficient matrix to use as a 'warm start' (default NULL
)
additional parameter for SCAD/MCP penalty (default 3)
@details The choices for 'struct' are as follows
'Basic' (Basic VARX-L)
'BasicEN' (Basic Elastic Net VARX-L)
'Lag' (Lag Group VARX-L)
'SparseLag' (Lag Sparse Group VARX-L)
'OwnOther' (Own/Other Group VARX-L)
'SparseOO' (Own/Other Sparse Group VARX-L)
'EFX' (Endogenous First VARX-L)
'HLAGC' (Componentwise HLAG)
'HLAGOO' (Own/Other HLAG)
'HLAGELEM' (Elementwise HLAG)
'Tapered' (Lag weighted Lasso VAR)
'BGR' (Bayesian Ridge Regression (cf. Banbura et al))
'MCP' (Minimax Concave Penalty (cf. Breheny and Huang))
'SCAD' (Smoothly Clipped Absolute Deviation (cf. Breheny and Huang))
VARX specifications consist of a list with entry k denoting the series that are to be modeled and entry s to denote the maximal lag order for exogenous series.
The argument alpha is ignored unless the structure choice is 'SparseLag' or 'Lag.' By default 'alpha' is set to NULL
and will be initialized as 1/(k+1) in cv.BigVAR
and BigVAR.est
. Any user supplied values must be between 0 and 1.
Banbura, Marta, Domenico Giannone, and Lucrezia Reichlin. 'Large Bayesian vector auto regressions.' Journal of Applied Econometrics 25.1 (2010): 71-92. Breheny P, Huang J (2011). “Coordinate descent algorithms for nonconvex penalized regression, with applications to biological feature selection.” Annals of Applied Statistics, 5(1), 232–253. William B Nicholson, Jacob Bien, and David S Matteson. 'High Dimensional Forecasting via Interpretable Vector Autoregression.' arXiv preprint arXiv:1412.5250, 2016. William B. Nicholson, David S. Matteson, Jacob Bien,VARX-L: Structured regularization for large vector autoregressions with exogenous variables, International Journal of Forecasting, Volume 33, Issue 3, 2017, Pages 627-651, William B Nicholson, David S. Matteson, and Jacob Bien (2016), 'BigVAR: Tools for Modeling Sparse High-Dimensional Multivariate Time Series' arxiv:1702.07094
cv.BigVAR
,BigVAR.est
,constructModel
# VARX Example
# Fit a Basic VARX-L with k=2, m=1, s=2, p=4, lambda=1e-2
VARX=list()
VARX$k=2 # indicates that the first two series are modeled
VARX$s=2 # sets 2 as the maximal lag order for exogenous series
data(Y)
BigVAR.fit(Y,p=4,'Basic',lambda=1e-2,VARX=VARX)
Run the code above in your browser using DataLab