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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: optuna-dashboard-0.9.0b5.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.0b5.tar.gz
Algorithm Hash digest
SHA256 4127239c13728b30507aea1b53ea78ef418eae86949e46f5c449c8a60aaaf99d
MD5 a6a0983c4be4fc91c1a313c76658fa5e
BLAKE2b-256 b9b443e873d2d69f57a522f039fa9fe9e2f5d61ae3acb43b9318263bf9e725e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for optuna_dashboard-0.9.0b5-py3-none-any.whl
Algorithm Hash digest
SHA256 d096b0c95c1b9e0c2212ca415b51cd026f9e4a987cd7dd2c94a24ea65052898d
MD5 f4d8103b1f3a58bae9897d2101dad7ac
BLAKE2b-256 6ac9b743caba61cebac9080a1e890ea4c6c66a03bf6ad4ec2039d21177def5ec

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