Facades¶
SMAC of course itself offers a lot of design choices, some of which are crucial to achieve peak performance. Luckily, often it is sufficient to distinguish between a few problem classes. To make the usage of SMAC as easy as possible, we provide several facades designed for these different use cases. Here we give some general recommendations on when to use which facade. These recommendations are based on our experience and technical limitations and is by far not intended to be complete:
SMAC4BB |
SMAC4HPO |
SMAC4MF |
SMAC4AC |
|
---|---|---|---|---|
# parameter |
low |
low/medium/high |
low/medium/high |
low/medium/high |
Categorical hyperparameters |
Supported |
Supported |
Supported |
Supported |
Conditional hyperparameters |
Supported |
Supported |
Supported |
Supported |
Instances |
No |
None or CV |
None or CV |
Yes |
Stochasticity |
No |
Supported |
Supported |
Supported |
Objective |
Any (except runtime) |
e.g. validation loss |
e.g. validation loss |
Any |
Multi-Fidelity |
No |
No |
Yes |
Yes |
Search Strategy |
Random Forest, Gaussian Process, GP-MCMC or Random |
Note
The SMAC4MF
facade is the closest implementation to
BOHB.
Inheritance¶
Here we show the class inheritance of the different facades. Because SMAC4AC is the facade every other facade is inherited from, we recommend using SMAC4AC if a lot of flexibility is needed.