Open Vinnish-A opened 8 months ago
Hey and thanks for raising this issue! : )
If there is interest in the catboost learner we can add it again. It was removed for technical reasons.
Do you want to make a PR for this? :)
Thank you for your response. The purpose of me raising this issue is simply to provide some assistance to those who wish to use CatBoost in mlr3. If CatBoost is not in your current working plans, I won't showcase my inadequate coding skills. As long as this issue can be retrieved by those who need it, that's enough.
The learner is now available again
I am sorry that I closed this issue (I somehow assumed the catboost implementation includes early stopping but it does not. Once someone has time we will add it as a feature
Algorithm
catboost
Package
catboost
Supported types
I have checked that this is not already implemented in
Why do I think this is a useful learner?
CatBoost is a simple and efficient algorithm that was once integrated into mlr3extralearners. However, it was later removed in a certain commit. The fact that CatBoost comes with built-in GPU acceleration and can efficiently handle categorical features made its removal seem regrettable to me. Therefore, I would like to share my intention to re-register CatBoost in the mlr3 learners and add an early stop method.
First, clone the mlr3extralearners repository to local and create a new file in the R folder related to CatBoost. In the previous version of CatBoost, there were no built-in early stop features. So, in the following code block, I've imitated the style of other learners and added early stop parameters. I have tested this locally and it passed. After that, you can reinstall mlr3extralearners using devtools::install_local.
I hope that, after seeing my humble imitation, you won't be angry with me. I have a great appreciation for mlr3 and I wish to enable everything in mlr3 that can be done in other integrated interfaces. The sole purpose of raising this issue is to provide some assistance to those who wish to use CatBoost in mlr3.