Multiview embedding forecast (Ye & Sugihara 2016): rank D-column views and average the best to find optimal combinations of variables that best represent the dynamics.
Multiview(dataFrame = NULL, columns, target, lib = numeric(0), pred = numeric(0),
D = 0, E = 1, Tp = 1, knn = 0, tau = -1, multiview = 0,
exclusionRadius = 0, trainLib = TRUE, excludeTarget = FALSE,
ignoreNan = TRUE, numProcess = 4, backend = "RANN",
pathIn = "./", dataFile = "", pathOut = "./", predictFile = "",
parameterList = FALSE, showPlot = FALSE)Named list with data.frames [[View, Predictions]].
data.frame View columns:
| Col_1 | column index |
| ... | column index |
| Col_D | column index |
| rho | Pearson correlation |
| MAE | mean absolute error |
| RMSE | root mean square error |
| name_1 | column name |
| ... | column name |
| name_D | column name |
If parameterList = TRUE a named list "parameters" is added.
A data.frame of input data. The first column is time unless noTime = TRUE.
Column name(s) to build the embedding: character vector or space-separated string. If individual column names contain whitespace place names in a vector, or, append ',' to the name.
Target column name to predict.
Library (training) index range as (start end) pairs.
Prediction index range as (start end) pairs.
View dimension for Multiview (number of embedding columns combined).
Embedding dimension.
Forecast interval (prediction horizon).
Number of nearest neighbours. 0 selects the method default.
Embedding delay (negative selects past lags).
Number of top-ranked views to average (default floor(sqrt(nCombo))).
Temporal (Theiler) exclusion radius around each prediction point.
Rank views on the library (in-sample) rather than the prediction set.
Exclude the target variable from candidate views.
Remove rows with NaN in the embedding from the library and prediction sets.
Number of worker processes for the parameter sweep or task grid.
Nearest-neighbour backend: "RANN" (default) or "brute".
File path for input dataFile.
Input dataFile, .csv format.
Output file path for predictFile
Output file name, .csv format.
Append named list of parameters/values to return.
If TRUE, draw a base-graphics plot of the result.
Multiview embedding is a method to identify variables in a multivariate dynamical system that are most likely to contribute to the observed dynamics. It is a multistep algorithm with these general steps:
Compute D-dimensional variable combination forecasts.
Rank forecasts.
Compute predictions of top combinations.
Compute multiview averaged prediction.
If E>1, all variables are embedded to dimension E.
If trainLib is TRUE initial forecasts and ranking are
done in-sample (lib=pred) and predictions using the top ranked
combinations use the specified lib and pred.
If trainLib is FALSE initial forecasts and ranking use
the specified lib and pred, the step of computing
predictions of the top combinations is skipped.
Ye H., and G. Sugihara, 2016. Information leverage in interconnected ecosystems: Overcoming the curse of dimensionality. Science 353:922-925.
data(block_3sp)
L = Multiview( dataFrame = block_3sp, lib = "1 100", pred = "101 190",
E = 2, columns = "x_t y_t z_t", target = "x_t" )
Run the code above in your browser using DataLab