🔗 OptunaHub | 📃 Docs | Optuna.org
OptunaHub is a platform for sharing algorithms in Optuna, a powerful and flexible hyperparameter optimization framework. OptunaHub provides implementations of state-of-the-art optimization algorithms and visualization of optimization results for analysis. You can also publish your algorithm implementation on the platform and make it available to Optuna users around the world.
This is the repository of the optunahub Python Library to use packages published in OptunaHub. If you would like to register your package in OptunaHub, please contribute by creating a pull request to the optunahub-registry repository.
- Nov 6, 2024: A new article AutoSampler: Automatic Selection of Optimization Algorithms in Optuna has been published.
- Oct 21, 2024: We posted an article introducing MOEA/D and an example comparison with other optimization methods.
- Aug 30, 2024: New Medium article "OptunaHub, a Feature-Sharing Platform for Optuna, Now Available in Official Release!" was published!
- Jul 16, 2024: We posted an article Announcing OptunaHub 0.1.0-β that describes what is, how to use, and how to contribute to OptunaHub.
Optuna is available at the Python Package Index.
pip install optunahub
You only need to search for the desired function on the OptunaHub website and call the optunahub.load_module function in your code to incorporate it.
import optuna
import optunahub
def objective(trial: optuna.Trial) -> float:
x = trial.suggest_float("x", -5, 5)
y = trial.suggest_float("y", -5, 5)
return x**2 + y**2
module = optunahub.load_module(package="samplers/auto_sampler")
study = optuna.create_study(sampler=module.AutoSampler())
study.optimize(objective, n_trials=10)
print(study.best_trial.value, study.best_trial.params)
Any contributions to OptunaHub are more than welcome!
OptunaHub is composed of the following three related repositories. Please contribute to the appropriate repository for your purposes.
- optunahub (this repository)
- The python library to use OptunaHub. If you find issues and/or bugs in the optunahub library, please report it here via Github issues.
- optunahub-registry
- The registry of the OptunaHub packages. If you are interested in registering your package with OptunaHub, please contribute to this repository. For general guidelines on how to contribute to the repository, take a look at CONTRIBUTING.md.
- optunahub-web
- The web frontend for OptunaHub. If you find issues and/or bugs on the website, please report it here via GitHub issues.
MIT License (see LICENSE).