Tune pipeline hyper-parameters
mainDiart uses an optimizer based on optuna to tune pipeline hyper-parameters.
From the command line
diart.tune /wav/dir --reference /rttm/dir --output /output/dirFrom Python
from diart.optim import Optimizer
optimizer = Optimizer("/wav/dir", "/rttm/dir", "/output/dir")
optimizer(num_iter=100)This writes results to an SQLite database in the specified output directory.
Distributed Tuning
To run multiple optimization processes in parallel, use a shared DBMS (e.g., MySQL or PostgreSQL) and pass the --storage flag in CLI or the study object in Python.
CLI Example:
diart.tune /wav/dir --reference /rttm/dir --storage mysql://root@localhost/examplePython Example:
from diart.optim import Optimizer
from optuna.samplers import TPESampler
import optuna
db = "mysql://root@localhost/example"
study = optuna.load_study("example", db, TPESampler())
optimizer = Optimizer("/wav/dir", "/rttm/dir", study)
optimizer(num_iter=100)