question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Support multi-objective optimization

See original GitHub issue

/kind feature

Describe the solution you’d like

  • katib currently use only single-objective optimization, (even though katib could display additional metrics, the optimizing process focused on single objective function)

  • However, as you might know well, optuna support multi-objective optimization

    • which means, for example, we can optimize the hyperparameters to maximize accuracy and minimize time-cost simultaneously.
  • In such case, I know we can define a new objective function which combines two objectives, such as maximize accuracy / time-cost or something else more complicated.

  • However, I wonder is there any plan to support such feature natively in katib.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Reactions:3
  • Comments:7 (5 by maintainers)

github_iconTop GitHub Comments

3reactions
g-vottecommented, Aug 11, 2021

Hi, I’m one of the maintainers of Optuna. Thank you for referring to Optuna as a possible backend of the multi-objective API.

As @c-bata mentions, Optuna supports several algorithms for multi-objective optimization, with almost the same interface as single objective optimization.

I think we can go forward by (1) implementing the Optuna suggestion service, and (2) fixing the interface of Katib’s multi-objective functionality.

For (1), I created the PR #1613 to add the suggestion service. I appreciate your taking a look and providing any feedback.

3reactions
andreyvelichcommented, Jun 4, 2021

Thank you for creating this @anencore94. I think that feature will require some API modification since type, goal and objectiveMetricName can be unique: https://github.com/kubeflow/katib/blob/master/pkg/apis/controller/common/v1beta1/common_types.go#L94-L103.

@anencore94 @gaocegege @johnugeorge Any ideas how we can implement this ?

@c-bata Does Goptuna support Multi-object optimization ?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Multi-objective optimization - Wikipedia
Multi-objective optimization is an area of multiple criteria decision making that is concerned with mathematical optimization problems involving more than ...
Read more >
Multiobjective Optimization - MATLAB & Simulink - MathWorks
When you have several objective functions that you want to optimize simultaneously, these solvers find the optimal tradeoffs between the competing objective ...
Read more >
Multiobjective Optimization - an overview | ScienceDirect Topics
In this work, we propose the rigorous method based on bilevel optimization and MOO to support decision-making in the post-optimal analysis of Pareto...
Read more >
Multiobjective Optimization - LS-OPT
A multiobjective optimization using metamodels (Pareto optimal solutions); Dealing with an infeasible design formulation; Use of composite functions; Trade-off ...
Read more >
Features not supported with multiobjective optimization - IBM
Multiobjective optimization and model annotation are currently not compatible. When the objective is annotated in an annotation file or via the annotation API, ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found