mlr-org / mlr

Machine Learning in R
https://mlr.mlr-org.com
Other
1.65k stars 405 forks source link

Learners with same name: party::ctree, partykit::ctree and partyNG::ctree #1377

Closed HeidiSeibold closed 7 years ago

HeidiSeibold commented 7 years ago

Sorry for opening that many issues, but I hope they are valuable both for you and me ;)

In mlr you have a learner classif.ctree, which implements party::ctree. Now what do I call a learner with the same function name but from a different package ( partykit::ctree or the experimental implementation partyNG::ctree) when implementing it in mlr?

This is possibly connected to openml/openml-r#293

larskotthoff commented 7 years ago

I would use a prefix, e.g. classif.partykit_ctree.

HeidiSeibold commented 7 years ago

Thanks @larskotthoff. Sounds good.

@berndbischl @giuseppec @joaquinvanschoren would this be fine also for uploads to OpenML? Don't want to mess up a clean system.

giuseppec commented 7 years ago

Should work in OpenML if the learners are properly implemented in mlr. But I guess we won't implement all ctree learners in mlr unless we know the difference. What is the difference, why are there 3 implementations and which ctree algorithm is the "best"?

HeidiSeibold commented 7 years ago

Package party is is not developed anymore. partykit is the package users should use and partyNG is the experimentation package.

In the long run I would suggest including partykit::ctree (and kicking out party::ctree), but I want to use partyNG::ctree for testing purposes. We do not need to include this in the mlr package, but it should be made possible to us it for OpenML, right?

As for the "proper implementation" I will give my best :stuck_out_tongue_winking_eye: You can check it here.

giuseppec commented 7 years ago

@HeidiSeibold see here https://github.com/openml/openml-r/issues/294, we can continue discussing the issue there. You can create and upload your custom mlr Learner/OpenML flow and everything should work. However, currently this will only be reproducible for people that use a mlr version that contains the partyNG::ctree Learner from https://github.com/HeidiSeibold/sandbox/blob/master/rstuff/new_ctree_mlr.R.

HeidiSeibold commented 7 years ago

Okay, yes you are right, this is more of an OpenML question than an mlr question. Thanks!

giuseppec commented 7 years ago

@HeidiSeibold

In the long run I would suggest including partykit::ctree (and kicking out party::ctree)

is this still true? I don't see progress in partykit on cran.

HeidiSeibold commented 7 years ago

Yes still true and we're working on it. I need it published before I submit my thesis, so latest in December it will be on CRAN (fingers crossed :crossed_fingers:)

henningsway commented 6 years ago

congrats for that thesis, Heidi!

What's the suggested way to access partykit instead of party via mlr atm? (mostly interested in ctree and cforest right now)

HeidiSeibold commented 6 years ago

Thanks @henningsway!

I am working on it this week. You can find it in this branch: https://github.com/mlr-org/mlr/tree/partykit-transition