GithubHelp home page GithubHelp logo

Comments (2)

SoftwareLiteracy avatar SoftwareLiteracy commented on August 27, 2024

Dear Uriah,

Thank you for your use and analysis of rEDM.

Having looked at your examples, it appears you have identified a bug where the value of E is not properly handled. Thank you!

I have found and corrected the problem. The fix is uploaded to github as version 1.7.5.

Regarding parameters E and D:

E defines the dimension of the time-delay embedding for the state-space of each variable. Since the first dimension is the variable itself, there are E-1 additional dimensions added by successive time delays.

D defines the dimension of the multiviews. If not set, it defaults to the number of columns. For example, if D = 2, columns = "x_t y_t z_t", then the constructed views have D = 2 variables, selected from the 3*E available.

Also, please note that there is no guarantee that all lags will be present in the selected views. That is, with E = 3, which embeds each columns vector into a 3-dimensional state-space (the addition of 2 lags) does not mean that one will see X(t-2) in the top views.

Your first example has 2-dimensional views, since the number of columns is 2 and D is not specified:

Multiview( dataFrame = block_3sp, lib = "1 99", pred = "105 190",
           E = 3, columns = "x_t y_t", target = "x_t" )

Your second example has 3-D views for the same reason:

Multiview( dataFrame = block_3sp, lib = "1 99", pred = "105 190", 
           E = 3, columns = "x_t y_t z_t", target = "x_t" )

The third example, you set E = 3 with 4 columns:

Multiview( dataFrame = block_3sp, lib = "1 99", pred = "105 190", 
           E = 3, columns = "x_t y_t z_t y_t-1", target = "x_t" )

With D not specified, D = 4, but, it appears that E = 3 for the time-delay embeddings is not being honored... the bug you have identified, which has been addressed in version 1.7.5.

Your other question:
Why is the maximum lag set to E-1? I would like the possibility of constructing a model in which each view is e.g. of size 2 and the maximum lag is 3. That is, I would like to have the possibility of choosing the dimension of the views and the maximum lag separately. Is that possible?

Yes, that is (now) possible. An example:

> Multiview( dataFrame = block_3sp, lib = "1 99", pred = "105 190", D = 2, E = 4, columns = "x_t y_t z_t", target = "x_t", excludeTarget = FALSE ) $ View
Multiview() Set view sample size to 8
  col_1 col_2   name_1   name_2    rho    MAE   RMSE
1     1     2 x_t(t-0) x_t(t-1) 0.9338 0.2323 0.2991
2     1     9 x_t(t-0) z_t(t-0) 0.8866 0.2716 0.3748
3     1    11 x_t(t-0) z_t(t-2) 0.8946 0.2833 0.3638
4     1     4 x_t(t-0) x_t(t-3) 0.9137 0.2520 0.3272
5     1     8 x_t(t-0) y_t(t-3) 0.8671 0.3126 0.4042
6     1     3 x_t(t-0) x_t(t-2) 0.9241 0.2463 0.3137
7     1     7 x_t(t-0) y_t(t-2) 0.8692 0.3212 0.3991
8     1    10 x_t(t-0) z_t(t-1) 0.9082 0.2770 0.3444

Thank you again for your diligence and analysis of rEDM!

JP

from redm.

duriah avatar duriah commented on August 27, 2024

Hi Joseph,
Thanks for the fast and thorough reply and that you already fixed it! This will really help me 👍

Best
Uriah

from redm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.