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

[Tune] Set correct Optuna TrialState in on_trial_complete #15283

Merged
merged 1 commit into from
Apr 14, 2021

Conversation

Yard1
Copy link
Member

@Yard1 Yard1 commented Apr 13, 2021

Why are these changes needed?

Optuna's ask-tell interface supports passing a TrialState to tell(). By default, that TrialState is TrialState.COMPLETE. However, if values are None, then an exception is raised - while that exception is caught by OptunaSearch, it results in the Trial not being saved in Optuna. As the values are set to None when a Trial is pruned by Tune's Scheduler, this results in pruned trials not being saved at all, degrading optimization performance. This PR fixes this by setting the correct TrialState.

Related issue number

Checks

  • I've run scripts/format.sh to lint the changes in this PR.
  • I've included any doc changes needed for https://docs.ray.io/en/master/.
  • I've made sure the tests are passing. Note that there might be a few flaky tests, see the recent failures at https://flakey-tests.ray.io/
  • Testing Strategy
    • Unit tests
    • Release tests
    • This PR is not tested :(

@Yard1
Copy link
Member Author

Yard1 commented Apr 13, 2021

CC @krfricke

Copy link
Contributor

@krfricke krfricke left a comment

Choose a reason for hiding this comment

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

This is great, thanks for catching this. I'll approve now but the tune build failed (probably unrelated), so we'll have to wait until that run finishes before merging.

@krfricke krfricke merged commit b93bd9b into ray-project:master Apr 14, 2021
@Yard1 Yard1 deleted the optuna-trial-state branch April 14, 2021 15:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants