katib icon indicating copy to clipboard operation
katib copied to clipboard

Deprecate Skopt Suggestion Service

Open tenzen-y opened this issue 11 months ago • 25 comments

/kind feature

Describe the solution you'd like [A clear and concise description of what you want to happen.] Unfortunately, the scikit-optimize was closed on February 29, 2024.

https://github.com/scikit-optimize/scikit-optimize

So we need to stop supporting the skopt suggestion service as well. I think that we can follow similar deprecation steps as the MXNet.

Anything else you would like to add: [Miscellaneous information that will assist in solving the issue.]


Love this feature? Give it a 👍 We prioritize the features with the most 👍

tenzen-y avatar Mar 10 '24 09:03 tenzen-y

@kubeflow/wg-automl-leads WDYT?

tenzen-y avatar Mar 10 '24 09:03 tenzen-y

May I work for this issue? /assign

PeterWrighten avatar Mar 10 '24 15:03 PeterWrighten

/unassign @PeterWrighten

We need to follow the deprecation flow step by step.

tenzen-y avatar Mar 10 '24 15:03 tenzen-y

/unassign @PeterWrighten

We need to follow the deprecation flow step by step.

Got it. Thanks!

PeterWrighten avatar Mar 10 '24 16:03 PeterWrighten

That is sad to hear @tenzen-y.

Do we have any alternative to use Bayesian Optimization in Hyperopt or Optuna ?

andreyvelich avatar Mar 11 '24 23:03 andreyvelich

That is sad to hear @tenzen-y.

Do we have any alternative to use Bayesian Optimization in Hyperopt or Optuna ?

Unfortunately, both optuna and Hyperopt don't provide Bayesian sampler.

  • https://optuna.readthedocs.io/en/stable/reference/samplers/index.html
  • https://hyperopt.github.io/hyperopt/#algorithms

tenzen-y avatar Mar 11 '24 23:03 tenzen-y

If we want to provide Bayesian sample, we need to implement it ourselves.

tenzen-y avatar Mar 11 '24 23:03 tenzen-y

Maybe we could check some Open Source BO implementations. For example: https://github.com/bayesian-optimization/BayesianOptimization

Also, quite recently @contramundum53 added GPSampler support in Optuna: https://github.com/optuna/optuna/pull/5185

Maybe we can re-use it. cc @c-bata @a9p for your ideas here.

andreyvelich avatar Mar 12 '24 00:03 andreyvelich

Also, quite recently @contramundum53 added GPSampler support in Optuna: https://github.com/optuna/optuna/pull/5185

Oh, I didn't find that.

tenzen-y avatar Mar 12 '24 00:03 tenzen-y

So, setting optuna as a default Bayesian sampler might be better.

tenzen-y avatar Mar 12 '24 00:03 tenzen-y

@andreyvelich @tenzen-y I'm glad that you are considering integration of Optuna's GPSampler into katib! GPSampler is planned to be released in Optuna v3.6, our next minor release. It is still experimental and future breaking changes/bugs are possible (the code is only a month old!), but if it's okay for you, we'll be happy to hear that.

contramundum53 avatar Mar 13 '24 06:03 contramundum53

@andreyvelich @tenzen-y I'm glad that you are considering integration of Optuna's GPSampler into katib! GPSampler is planned to be released in Optuna v3.6, our next minor release. It is still experimental and future breaking changes/bugs are possible (the code is only a month old!), but if it's okay for you, we'll be happy to hear that.

Oh, I see. Thank you for letting us know @contramundum53 Is there a graduation plan for GPSampler? For example, did the optuna community decide when GPSampler graduates to stable?

tenzen-y avatar Mar 13 '24 06:03 tenzen-y

Sorry no, that will depend on many factors, such as how much the new feature is used, how many feature requests come, how many bugs we encounter, and so on.

contramundum53 avatar Mar 13 '24 12:03 contramundum53

Thanks for letting us know @contramundum53!

@tenzen-y @johnugeorge What do you think about it ? Should we use skopt for 1 Katib/Kubeflow release and add deprecation notice for users who will run experiments with bayesianoptimization algorithm ? Also, implement GPSampler in Optuna Katib Suggestion and explain users how to update Katib Config to use BO from Optuna rather than from skopt ? After some time we will remove skopt and fully rely on Optuna for bayesianoptimization algorithm ?

andreyvelich avatar Mar 13 '24 17:03 andreyvelich

Sorry no, that will depend on many factors, such as how much the new feature is used, how many feature requests come, how many bugs we encounter, and so on.

@contramundum53 Thank you for letting me know!

tenzen-y avatar Mar 14 '24 00:03 tenzen-y

@tenzen-y @johnugeorge What do you think about it ? Should we use skopt for 1 Katib/Kubeflow release and add deprecation notice for users who will run experiments with bayesianoptimization algorithm ? Also, implement GPSampler in Optuna Katib Suggestion and explain users how to update Katib Config to use BO from Optuna rather than from skopt ? After some time we will remove skopt and fully rely on Optuna for bayesianoptimization algorithm ?

@andreyvelich I totally agree with you.

tenzen-y avatar Mar 14 '24 00:03 tenzen-y

/remove-release 0.16

tenzen-y avatar Mar 14 '24 18:03 tenzen-y

@tenzen-y Should we try to add deprecation notice before the next release ?

andreyvelich avatar Mar 14 '24 19:03 andreyvelich

@tenzen-y Should we try to add deprecation notice before the next release ?

@andreyvelich Shouldn't be marked as release 0.17, not 0.16?

tenzen-y avatar Mar 14 '24 19:03 tenzen-y

Oh, sorry, my bad

andreyvelich avatar Mar 14 '24 19:03 andreyvelich

Oh, sorry, my bad

no worries

tenzen-y avatar Mar 14 '24 19:03 tenzen-y