mlr-org / ParamHelpers

Helpers for parameters in black-box optimization, tuning and machine learning.
https://paramhelpers.mlr-org.com
Other
26 stars 9 forks source link

convert data.frame to opt.path / add data.frame to opt.path #105

Open danielhorn opened 8 years ago

danielhorn commented 8 years ago

At the moment we have addOptPathEl to add a single element to an opt.path. And that's it. We have no function for adding more than one element at a time but iterating over addOptPathEl.

Couldn't we write a function to add a set of new element (possibly represented as a data.frame) to an existing opt.path?

Another idea would be to write a function convertDataFrameToOptPath. With the above function it would be equivalent creating the opt.path and adding the complete data.frame.

berndbischl commented 8 years ago

can i assume that the data.frame d has the "correct structure"? what i mean is that the opt.path has a par.set attached. can I call dfRowsToList on d?

also please give a usecase for this.

danielhorn commented 8 years ago

Simple usecases in MBO: After evaluating the initial design it has to be added to the opt.path. At the moment this is done via a lapply and addOptPathEl. Same holds for prop.points > 1.

Other usecase: Every time we initialize an opt.path with more than one observation.

To be honest: I have not thought much about the implementation details yet. I think we would have to check if the data.frame has the correct structure, for example call isFeasible for each row.

berndbischl commented 8 years ago

Simple usecases in MBO: After evaluating the initial design it has to be added to the opt.path. At the moment this is done via a lapply and addOptPathEl. Same holds for prop.points > 1.

just to make sure: is this an "artefact" in the current multicrit ML experiment, because we are comparing to a reference method? because mlrMBO auto-adds the initdes to the optpath.

danielhorn commented 8 years ago

It is the code inside mlrMBO. Look at evalMBODesign.R, line 43-45.

Yes, it's just an lapply we would save.