Real-time dashboard for Optuna
Project description
optuna-dashboard
Real-time dashboard for Optuna. Code files were originally taken from Goptuna.
Installation
You can install optuna-dashboard via PyPI or Anaconda Cloud.
$ pip install optuna-dashboard
Also you can install following optional dependencies to make optuna-dashboard faster.
$ pip install optuna-fast-fanova gunicorn
Getting Started
First, please specify the storage URL to persistent your study using the RDB backend.
import optuna
def objective(trial):
x = trial.suggest_float("x", -100, 100)
y = trial.suggest_categorical("y", [-1, 0, 1])
return x**2 + y
if __name__ == "__main__":
study = optuna.create_study(
storage="sqlite:///db.sqlite3", # Specify the storage URL here.
study_name="quadratic-simple"
)
study.optimize(objective, n_trials=100)
print(f"Best value: {study.best_value} (params: {study.best_params})")
After running the above script, please execute the optuna-dashboard
command with Optuna storage URL.
$ optuna-dashboard sqlite:///db.sqlite3
Listening on http://localhost:8080/
Hit Ctrl-C to quit.
More command line options
$ optuna-dashboard -h
usage: optuna-dashboard [-h] [--port PORT] [--host HOST] [--version] [--quiet] storage
Real-time dashboard for Optuna.
positional arguments:
storage DB URL (e.g. sqlite:///example.db)
optional arguments:
-h, --help show this help message and exit
--port PORT port number (default: 8080)
--host HOST hostname (default: 127.0.0.1)
--server {wsgiref,gunicorn}
server (default: auto)
--artifact-dir ARTIFACT_DIR
directory to store artifact files
--version, -v show program's version number and exit
--quiet, -q quiet
Python Interface
run_server(storage: Union[str, BaseStorage], host: str = 'localhost', port: int = 8080) -> None
Start running optuna-dashboard and blocks until the server terminates. This function uses wsgiref module which is not intended for the production use.
wsgi(storage: Union[str, BaseStorage]) -> WSGIApplication
This function exposes WSGI interface for people who want to run on the production-class WSGI servers like Gunicorn or uWSGI.
save_note(study_or_trial: Union[Study, Trial], body: str) -> None
Save the note (Markdown format) to the Study or the Trial.
set_objective_names(study: Study, names: list[str]) -> None
Set the names of objectives.
Using an official Docker image
You can also use an official Docker image instead of setting up your Python environment. The Docker image only supports SQLite3, MySQL(PyMySQL), and PostgreSQL(Psycopg2).
$ docker run -it --rm -p 8080:8080 -v `pwd`:/app -w /app \
> ghcr.io/optuna/optuna-dashboard sqlite:///db.sqlite3
MySQL (PyMySQL)
$ docker run -it --rm -p 8080:8080 ghcr.io/optuna/optuna-dashboard mysql+pymysql://username:password@hostname:3306/dbname
PostgreSQL (Psycopg2)
$ docker run -it --rm -p 8080:8080 ghcr.io/optuna/optuna-dashboard postgresql+psycopg2://username:password@hostname:5432/dbname
Features
Manage Studies
You can create and delete studies from Dashboard.
Visualize with Interactive Graphs & Rich Trials Data Grid
You can check the optimization history, hyperparameter importances, etc. in graphs and tables.
Submitting patches
If you want to contribute, please check Developers Guide.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file optuna-dashboard-0.9.0b4.tar.gz
.
File metadata
- Download URL: optuna-dashboard-0.9.0b4.tar.gz
- Upload date:
- Size: 4.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c37960f4c8bc8df340cb9767b996eb93bfc90551334b2a468f94a4a5fff2ebb3 |
|
MD5 | ed31b62645cec8fe410c76b7b4f7916b |
|
BLAKE2b-256 | 033610916c4bb88a00c1ae3674c696427fddd165f85b9b37fcd829d6cc9c5133 |
File details
Details for the file optuna_dashboard-0.9.0b4-py3-none-any.whl
.
File metadata
- Download URL: optuna_dashboard-0.9.0b4-py3-none-any.whl
- Upload date:
- Size: 4.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e32a47ad90f659e3228b80951d148689931f445af89fc5428fd57c9ea9f58ad |
|
MD5 | e2933fc4f3c8375016e8b03be0640712 |
|
BLAKE2b-256 | b250b8bf4e3302921b61a32f53bcd522460de9bb1df1d897244d381bda2767fc |