You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As mentioned in PR #82 from ParamHelpers I started to use expressions within the mlr learners. The first steps have already been made, as you can see here.
In general, it is now possible to define expressions within the parameters of a learner. However, due to the high complexity, this now raises new issues on other ends of mlr. Here are some problems that came up:
weightedClassWrapper did not update the learner to the task; why does this not work? I mean, trainLearner.WeightedClassesWrapper internally calls train, which actually adapts the learner
in test_base_Learner.R the following call fails expect_error(makeLearner("classif.__mlrmocklearners__5"), "used 'expression'"), because PH now wants to have "a" in its dictionary (because parameter "b" requires expression(a == "x")).. do you have an idea, how to avoid this?
There are probably a lot more bugs coming up afterwards, but I thought it's best to start at some point and tackle them step-by-step..
The text was updated successfully, but these errors were encountered:
Do you plan this to work with wrappers that change properties of a task (e.g. a feature selection wrapper removing features), or will you drop the expressions when building a wrapper? I guess it wouldn't be such a problem if you have default=expression(sqrt(p)) (since the default doesn't influence actual behaviour), but len=expression(p) could be a problem.
As mentioned in PR #82 from ParamHelpers I started to use expressions within the mlr learners. The first steps have already been made, as you can see here.
In general, it is now possible to define expressions within the parameters of a learner. However, due to the high complexity, this now raises new issues on other ends of mlr. Here are some problems that came up:
weightedClassWrapper
did not update thelearner
to thetask
; why does this not work? I mean,trainLearner.WeightedClassesWrapper
internally callstrain
, which actually adapts thelearner
test_base_Learner.R
the following call failsexpect_error(makeLearner("classif.__mlrmocklearners__5"), "used 'expression'")
, because PH now wants to have"a"
in its dictionary (because parameter"b"
requiresexpression(a == "x")
).. do you have an idea, how to avoid this?There are probably a lot more bugs coming up afterwards, but I thought it's best to start at some point and tackle them step-by-step..
The text was updated successfully, but these errors were encountered: