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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: optuna-dashboard-0.9.0b2.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.0b2.tar.gz
Algorithm Hash digest
SHA256 e27735b1457461386a0dff047fc427c8cef7f0813647b2a06d442e61d3503107
MD5 ef8a5b34d66806fc8832e3c3f823e0e1
BLAKE2b-256 f0d46c16cbf4e9b8980046e44aa23320b001413bc8cd4150fbedd7aae649494f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for optuna_dashboard-0.9.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 bef14c3bfffb10fb1d627692a0ce228b85bd159c54951dc89f6658a81ec8cb7a
MD5 438c433c0228444ef7aef2eb6c6c8a2e
BLAKE2b-256 050f087e4dc194df8bb0696c2cb7b18857b7513a9abea4e8f90790868cf294c0

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