Skip to content

Hyperband/ Successive Halving Bracket Scaling #977

@helegraf

Description

@helegraf

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions