Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bayesian optimization draft #38

Merged
merged 7 commits into from
Apr 16, 2018
Merged

Conversation

libbyandhelen
Copy link
Contributor

@libbyandhelen libbyandhelen commented Apr 12, 2018

This is a draft for bayesian optimization (work in progress) #15 @gaocegege @YujiOshima

@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here (e.g. I signed it!) and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

@libbyandhelen
Copy link
Contributor Author

/assign @gaocegege @YujiOshima

@googlebot
Copy link

CLAs look good, thanks!

@gaocegege
Copy link
Member

/hold

@gaocegege
Copy link
Member

Thanks for your awesome contribution! I will take a look soon.

@gaocegege
Copy link
Member

When the PR is ready to merge, please use /hold cancel to cancel the hold.

Copy link
Member

@gaocegege gaocegege left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally LGTM. @YujiOshima I think we should support python suggestion by default thus we could refer to the implementation in other systems, e.g. https://github.com/tobegit3hub/advisor


- start the testing client


Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove the new line here.


service Suggestion {
rpc GenerateTrials(GenerateTrialsRequest) returns (GenerateTrialsReply);
rpc SetSuggestionParameters(SetSuggestionParametersRequest) returns (SetSuggestionParametersReply);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent blanks here. Please fix it.

@gaocegege
Copy link
Member

/ok-to-test

Please rebase the master and I think the test should pass.

@@ -0,0 +1,246 @@
syntax = "proto3";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should use /api/api.proto.
We should generate suggestion API from the same file not to make inconsistency between go and python.

@YujiOshima
Copy link
Contributor

@libbyandhelen Please move suggestion/python/api/ directory to api/python and store your bayesian-optimization source codes under suggestion/bayesianoptimization directory in conformity to other services.

@YujiOshima
Copy link
Contributor

@libbyandhelen And please dockerize your suggestion service and add k8s manifest.
I'm sorry there is no nice documents. Please refer other services.
https://github.com/kubeflow/hp-tuning/blob/master/suggestion/random/Dockerfile
https://github.com/kubeflow/hp-tuning/tree/master/manifests/vizier/suggestion/random

@gaocegege
Copy link
Member

@libbyandhelen If you have any question about dockerize your suggestion service and add k8s manifest please at me and I can help you.

@libbyandhelen
Copy link
Contributor Author

/hold cancel

Copy link
Member

@gaocegege gaocegege left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you may have discussions with @YujiOshima about api proto. Thus I only reviewed other code and LGTM.

Thanks

@libbyandhelen
Copy link
Contributor Author

@gaocegege OK, got it.
@YujiOshima
Do you think the api proto is OK now? I did not change the protocol in api.proto.
I used SetSuggestionParameters to set all the parameters needed for the suggestion service, and StopSuggestion for deleting the relevant information of the specific study stored in the service.
completed_trials in GenerateTrials is used to pass information of trials for now, since the interface for DB is not ready.

@YujiOshima
Copy link
Contributor

@libbyandhelen OK, we will add DB interface for python later.
Finally, please add build and deploy test for this suggestion to test script.
Since this is in python, you don't need go build test. Only gcloud container builds submit and deploy.
https://github.com/kubeflow/hp-tuning/blob/master/test/scripts/build.sh
https://github.com/kubeflow/hp-tuning/blob/master/test/scripts/run-tests.sh

@gaocegege
Copy link
Member

I think it is the last step! 🎉

Thanks for your contribution!

@YujiOshima
Copy link
Contributor

@libbyandhelen Thank you for your great contribution!
/lgtm

@k8s-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: YujiOshima

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot merged commit b5900f0 into kubeflow:master Apr 16, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants