JuliaDynamics / TimeseriesPrediction.jl

Prediction of timeseries using methods of nonlinear dynamics and timeseries analysis
MIT License
106 stars 9 forks source link

Use multiple input timeseries as training #80

Open JonasIsensee opened 5 years ago

JonasIsensee commented 5 years ago

We need a way to combine multiple time series of one system with different initial conditions into a single training set. How could this best be done?

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/73961364-use-multiple-input-timeseries-as-training?utm_campaign=plugin&utm_content=tracker%2F89129719&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F89129719&utm_medium=issues&utm_source=github).
JonasIsensee commented 5 years ago

I found the answer myself. For temporal prediction it is something like

R1 = reconstruct(train1[1:end-1], em)
R2 = reconstruct(train2[1:end-1], em)
R3 = reconstruct(train3[1:end-1], em)

R_combined = vcat(R1, R2, R3)
tree = KDTree(R_combined)
train_combined = vcat(train1, train2[1+τmax:end], train3[1+τmax:end])
prediction_starter = "this needs to be passed explicitly or it is taken from the end of train3"

If we prepare the training sets in this way, we do not need to change the prediction algorithm.