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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

Details for the file optuna-dashboard-0.9.0b3.tar.gz.

File metadata

  • Download URL: optuna-dashboard-0.9.0b3.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.0b3.tar.gz
Algorithm Hash digest
SHA256 aa519e638c0d0e783ee72058be24a8fb3c6edf40250aa21e72af6f9c4038ad5e
MD5 1ad56285b490758d92cec07e840ca11c
BLAKE2b-256 7a25d0e10af5e558a549aea0bfdcc918b6283bbe638653bdb9b98280d73dffd4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for optuna_dashboard-0.9.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 c9bb9b6fa3e61b6e5f02dd98653ec90e73f948b7393cfca1dd4c1bc73f120e38
MD5 1a1ebcaca98b25ab3226eea8e8e25be6
BLAKE2b-256 0290960461b902205aa9f40945a08ef6ab70216d9ae5e5ab6da9b4101a07ffe9

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