config-i1 / legion Goto Github PK
View Code? Open in Web Editor NEWMultivariate models for forecasting purposes
Multivariate models for forecasting purposes
Things to do:
adam()
from smooth
, e.g. proper inputs and outputs.This should include:
Take the E(x) = 1 into account, when estimating the models
Redo this, taking that the mean is different
The function that does model selection for ves. This can be done in a very wide sense, selecting components and then checking if grouped, dependent or individual parameters are needed
This is a followup thing based on Svetunkov&Boylan research. The idea is to model occurrence variables in groups.
Things to do:
Create state-space VARMA with order selection, blackjack and hookers.
Implement the simulate method for VETS. As simple as that. In order to do that, we need sim.vets() function.
Make explicit maximisation of likelihood or minimisation of a different loss, including the custom one.
This should accept "PPP", "XXX", "YYY" and "FFF". The default one should be "PPP".
Exogenous means including those that are not in Yt vector.
Non-lagged means model of a type Yt = A Yt + Et,
where A has zeroes on diagonal.
This includes:
In the best case these should include:
One of the options - produce general class from ves()
/ vets()
and create functions that would extract and plot things.
For example:
ourModel <- ves(Y, intervals="conditional", level=0.95)
plotEllipse(ourModel, h=1)
ourModel$bounds would contain matrix with upper and lower bounds of y_1, y_2, y_3 etc conditional on a value of y_k (could be a large matrix). In case with "unconditional" or "independent" this thing would simplify to a matrix with one row.
plotEllipse() function would plot all the ellipses for h=1.
Implement several seasonal components, similar to adam()
from smooth
. The parameter lags
is needed for this.
This should involve quantiles of multivariate normal distribution (isolines) in order to mark residuals as outliers. Currently it works in a univariate style.
Hi config-i1,
thanks for your package! I like it. However, I ran into a little bug today. We can reproduce that easily using the Example code:
library(legion)
Y <- ts(cbind(
1000 + 0.5 * c(1:100) + rnorm(100, 0, 10),
cbind(1000 + 1.5 * c(1:100) + rnorm(100, 0, 10))
),
frequency = 12
)
ves(Y, h = 2, holdout = TRUE, silent = FALSE)
ves(Y, h = 1, holdout = TRUE, silent = FALSE)
The second call to ves
(the one with h=1
) throws errors with the following message:
Error in `colnames<-`(`*tmp*`, value = dataNames) :
attempt to set 'colnames' on an object with less than two dimensions
I guess that there is an object that becomes a vector if h=1
and therefore looses its colnames attribute.
Maybe you can look into that. Or provide some guidance on how to fix it myself. I'd be more than happy to open a PR.
Thanks in advance
BerriJ
This should do selection based on the following steps:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.