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

Hyperband/ Successive Halving Bracket Scaling #977

Closed
helegraf opened this issue Apr 17, 2023 · 2 comments
Closed

Hyperband/ Successive Halving Bracket Scaling #977

helegraf opened this issue Apr 17, 2023 · 2 comments
Assignees
Labels

Comments

@helegraf
Copy link
Contributor

The amount of configurations in the brackets/ stages in the SMAC implementation of SH/HB is not consistent with the HB paper, however it is also unclear what that means. Blog article describing the issue with the paper: https://blog.dataiku.com/a-slightly-better-budget-allocation-for-hyperband

FYI: A pull-request for this has been made for BOHB by the author of the post:
automl/HpBandSter#89

Description

Compute the amount of configurations in different stages/ brackets for SH/HB.

Steps/Code to Reproduce

Configuring SMAC with MF and eta=3, max_budget=81 and min_budget=1.

Expected Results

Unsure, either the expected amount of configurations per bracket could be the variant from the example table of the HB paper (I have started a fix following this variant at the linked branch):

Bracket 0: [81, 27, 9, 3, 1]
Bracket 1: [27, 9, 3, 1]
Bracket 2: [9, 3, 1]
Bracket 3: [6, 2]
Bracket 4: [5]

or the variant following the actual pseudocode in the paper, which most other libraries seem to have implemented and would be:

Bracket 0: [81, 27, 9, 3, 1]
Bracket 1: [34, 11, 3, 1]
Bracket 2: [15, 5, 1]
Bracket 3: [8, 2]
Bracket 4: [5]

Actual Results

[INFO][successive_halving.py:309] --- Bracket 0: [81, 27, 9, 3, 1]
[INFO][successive_halving.py:309] --- Bracket 1: [27, 9, 3, 1]
[INFO][successive_halving.py:309] --- Bracket 2: [9, 3, 1]
[INFO][successive_halving.py:309] --- Bracket 3: [3, 1]
[INFO][successive_halving.py:309] --- Bracket 4: [1]

Versions

This concerns version 2.0.0

@nabenabe0928
Copy link
Contributor

I also noticed this point today.
The corresponding part is here.

Both BOHB and DEHB are also inconsistent with the original paper.

@helegraf helegraf added the bug label Apr 25, 2023
@helegraf
Copy link
Contributor Author

Addressed with PR #980

@helegraf helegraf mentioned this issue Jul 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

When branches are created from issues, their pull requests are automatically linked.

2 participants