-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Support CMA-ES with margin in CmaEsSampler
#4016
Conversation
This pull request has not seen any recent activity. |
This pull request has not seen any recent activity. |
Codecov Report
@@ Coverage Diff @@
## master #4016 +/- ##
=======================================
Coverage 90.11% 90.11%
=======================================
Files 162 162
Lines 12734 12810 +76
=======================================
+ Hits 11475 11544 +69
- Misses 1259 1266 +7
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
CmaEsSampler
Now it's ready for review! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for your pull request!
I took a quick look and left some comments. Let me review the implementation details later.
@nomuramasahir0 Could you review this PR if you have time? |
Thank you for the PR about CMA-ES with Margin. LGTM! |
Co-authored-by: Masashi Shibata <c-bata@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with nits!
Although there might be the same issue discussed at #4142 (comment), we should merge this PR first and it should be addressed as a follow-up with the sep-CMA-ES issue.
Motivation
Support CMA-ES with margin, which lower-bounds the marginal probability associated with each discrete space so that samples can avoid being fixed to a single point.
In Optuna,
IntDistribution
andFloatDistribution
withstep
can be regarded as discrete search spaces. I supported the combination with thesource_trials
argument, but currently, it cannot be used withuse_separable_cma=True
.In the benchmarks of the HPO bench, it outperformed the original CMA-ES when the number of trials is large (200-400+) (link).
Description of the changes
with_margin
argument toCmaEsSampler
.CMAwM
class, which was released in v0.9.0 of cmaes.