Skip to main content

JAHS-Bench-201

The first collection of surrogate benchmarks for Joint Architecture and Hyperparameter Search (JAHS), built to also support and facilitate research on multi-objective, cost-aware and (multi) multi-fidelity optimization algorithms.

Python versions License

Please see our documentation here.

Installation

Using pip

pip install git+https://github.com/automl/jahs_bench_201.git

Optionally, you can download the data required to use the surrogate benchmark ahead of time with

python -m jahs_bench.download --target surrogates

To test if the installation was successful, you can, e.g, run a minimal example with

python -m jahs_bench_examples.minimal

This should randomly sample a configuration, and display both the sampled configuration and the result of querying the surrogate for that configuration.

Using the Benchmark

Creating Configurations

Configurations in our Joint Architecture and Hyperparameter (JAHS) space are represented as dictionaries, e.g.,:

config = {
    'Optimizer': 'SGD',
    'LearningRate': 0.1,
    'WeightDecay': 5e-05,
    'Activation': 'Mish',
    'TrivialAugment': False,
    'Op1': 4,
    'Op2': 1,
    'Op3': 2,
    'Op4': 0,
    'Op5': 2,
    'Op6': 1,
    'N': 5,
    'W': 16,
    'Resolution': 1.0,
}

For a full description on the search space and configurations see our documentation.

Evaluating Configurations

import jahs_bench

benchmark = jahs_bench.Benchmark(task="cifar10", download=True)

# Query a random configuration
config = benchmark.sample_config()
results = benchmark(config, nepochs=200)

# Display the outputs
print(f"Config: {config}")  # A dict
print(f"Result: {results}")  # A dict

More Evaluation Options

The API of our benchmark enables users to either query a surrogate model (the default) or the tables of performance data, or train a configuration from our search space from scratch using the same pipeline as was used by our benchmark. However, users should note that the latter functionality requires the installation of jahs_bench_201 with the optional data_creation component and its relevant dependencies. The relevant data can be automatically downloaded by our API. See our documentation for details.

Benchmark Data

We provide documentation for the performance dataset used to train our surrogate models and further information on our surrogate models.

Experiments and Evaluation Protocol

See our experiments repository and our documentation.

Leaderboards

We maintain leaderboards for several optimization tasks and algorithmic frameworks.

Metadata

Release files for jahs-bench-201 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jahs-bench-201 0.1.0
File Size Uploaded
jahs_bench_201-0.1.0.tar.gz 155.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jahs-bench-201 0.1.0
File Interpreter ABI Platform
jahs_bench_201-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 339.9 kB

Release files / jahs_bench_201-0.1.0.tar.gz

Download URL jahs_bench_201-0.1.0.tar.gz
Size 155.3 kB
Tags Source
SHA-256 checksum
How to use checksums
ae35958290e3cd0272afa2de21ca7ce0229cc71b5c750986c3586067361d055e
BLAKE2b-256 checksum
How to use checksums
85d416ad02ba94945a4ed6bda8a712ba64dd33515b4872d944bf8fcf2fd02829
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.7.13 Linux/5.15.41-1-MANJARO

Release files / jahs_bench_201-0.1.0-py3-none-any.whl

Download URL jahs_bench_201-0.1.0-py3-none-any.whl
Size 184.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e68cbd63055125732d2c3a3295fcca75c00aa43bec0196e00f9db09488d54788
BLAKE2b-256 checksum
How to use checksums
9a996e81997025525008c20174272eae457db55d646e11630c2246b3ac317027
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.7.13 Linux/5.15.41-1-MANJARO

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page