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.0b4.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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

Hashes for optuna-dashboard-0.9.0b4.tar.gz
Algorithm Hash digest
SHA256 c37960f4c8bc8df340cb9767b996eb93bfc90551334b2a468f94a4a5fff2ebb3
MD5 ed31b62645cec8fe410c76b7b4f7916b
BLAKE2b-256 033610916c4bb88a00c1ae3674c696427fddd165f85b9b37fcd829d6cc9c5133

See more details on using hashes here.

File details

Details for the file optuna_dashboard-0.9.0b4-py3-none-any.whl.

File metadata

File hashes

Hashes for optuna_dashboard-0.9.0b4-py3-none-any.whl
Algorithm Hash digest
SHA256 3e32a47ad90f659e3228b80951d148689931f445af89fc5428fd57c9ea9f58ad
MD5 e2933fc4f3c8375016e8b03be0640712
BLAKE2b-256 b250b8bf4e3302921b61a32f53bcd522460de9bb1df1d897244d381bda2767fc

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