Skip to main content

Real-time dashboard for Optuna

Project description

optuna-dashboard

Software License PyPI - Downloads

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.

optuna-dashboard-create-delete-study

Visualize with Interactive Graphs & Rich Trials Data Grid

You can check the optimization history, hyperparameter importances, etc. in graphs and tables.

optuna-dashboard-realtime-graph

Submitting patches

If you want to contribute, please check Developers Guide.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optuna-dashboard-0.9.1.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

optuna_dashboard-0.9.1-py3-none-any.whl (4.3 MB view details)

Uploaded Python 3

File details

Details for the file optuna-dashboard-0.9.1.tar.gz.

File metadata

  • Download URL: optuna-dashboard-0.9.1.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for optuna-dashboard-0.9.1.tar.gz
Algorithm Hash digest
SHA256 ef85410e9cb4a664d520388abe976230e2dfd60584a5302e466a60dc83c12eb3
MD5 ecb76a4d5a03ee555398dc6437b2c829
BLAKE2b-256 c8ff86ca1400d507b1df6f24206aa33fdf91d5c92c7d6de5f4f7facf5c4098ff

See more details on using hashes here.

File details

Details for the file optuna_dashboard-0.9.1-py3-none-any.whl.

File metadata

File hashes

Hashes for optuna_dashboard-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 be05f62e0cdffbf12caf41c9096d34288e2b1937b060fa7f7a1a792316183236
MD5 bd8c58637f34c772985ee48de14b9483
BLAKE2b-256 48ee153c0060a6bebfb7f4fd5a45fdf7fb7de75e882c6474413b00aaf35c6697

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page