Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Towards better xvalidation #4334

Closed
9 tasks
karlnapf opened this issue Jun 7, 2018 · 5 comments
Closed
9 tasks

Towards better xvalidation #4334

karlnapf opened this issue Jun 7, 2018 · 5 comments

Comments

@karlnapf
Copy link
Member

karlnapf commented Jun 7, 2018

  • Introduce iterator interface for pairs of train/validation indices in CSplittingStrategy

  • Remove CFeatures training data from CMachine state

  • Remove CLabels training data from CMachine state

  • While the above two are being worked on, we could have a CMachine::clone_without_data that allows to clone a machine without cloning the data as well, to be used in xvalidation code.

  • Introduce CMachine::train(CFeatures*, CLabels*) (user API)

  • If possible, introduce CMachine::train(const CFeatures*, const CLabels*), via propagating constness in downstream calls. The above user API call would be a wrapper that just calls this method eventually.

  • Introduce a view for features, in the lines of `CFeatures* CFeatures::subset(SGVector,index_t>), that returns a new instance with an active subset, but the same underlying data (no copy)

  • Same view for CLabels

  • Rewrite x-validation

  • use iterator interface for subsets
  • clone machine (not data) in every fold
  • create new views for training/validation features/labels in every fold
  • use const methods
  • enable multithreading
@karlnapf
Copy link
Member Author

karlnapf commented Jun 7, 2018

@vinx13 this is for you. Note: this is for later, no need to start doing this now. Just wrote it down since I just had a look at the code

@stale
Copy link

stale bot commented Feb 26, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Feb 26, 2020
@gf712
Copy link
Member

gf712 commented Feb 26, 2020

@karlnapf do you know how much of this is still relevant?

@stale stale bot removed the stale label Feb 26, 2020
@stale
Copy link

stale bot commented Aug 24, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Aug 24, 2020
@gf712 gf712 removed the stale label Aug 25, 2020
@karlnapf
Copy link
Member Author

I think quite some stuff has been done, so closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants