A toolset for black-box hyperparameter optimisation.
Reporter
instance can be loaded with data from the database of another reporter using a from_database()
method.Reporter
instance can be exported into a HistoryPoint
list to load into an optimiser.BayesianOptimisation
raises ExhaustedSearchSpaceError
if a discrete domain is exhausted.Domain
is moved from hypertunity.optimisation
to the hypertunity
package.TableReporter
to Table
and TensorboardReporter
to Tensorboard
.ExhaustedSearchSpaceError
is moved from optimisation.exhastive
to optimisation.base
module.Trial
running a task from a job is now done with dict as input keyword arguments or named command line arguments.BayesianOptimisation
sample conversion for nested dictionaries.BayesianOptimisation
type preserving between the domain and the sample value.Tensorboard
reporter for real intervals with integer boundaries.Reporter
for not using the default metric name during logging.Trial
a wrapper class for high-level usage, which runs the optimiser, evaluates the objective
by scheduling jobs, updates the optimiser and summarises the results.Job
from a script with command line arguments can now be run with
named arguments passed as a dictionary instead of a tuple.log()
or a Reporter
object.Optimiser
. Example use-case would be to warm-start
BayesianOptimisation
from the history of the quicker RandomSearch
.Reporter
instance has a primary_metric
attribute, which is an argument to __init__
.Domain
is not allowing for intervals with more than 2 numbers.Job
can now be scheduled locally to run command line scripts with arguments.BayesianOptimisation.run_step
can pass arguments to the backend for better customisation.Reporter
object can be fed with data from a tuple of a
Sample
object and a score, which can be a float or an EvaluationScore
.BayesianOptimisation
optimiser can be updated with a Sample
and
a float or EvaluationScore
objective evaluation types.Domain
is defined with a set literal instead of a tuple.Job
supports running functions from within a script by specifying 'script_path::func_name'.batch_size
is no more an attribute of an Optimiser
but an argument to run_step
.minimise
is no more an attribute of BayesianOptimisation
but an argument to run_step
.Scheduler
to run jobs locally using joblib.SlurmJob
and Job
dataclasses defining the tasks to be scheduled.Result
dataclass encapsulating the results from the tasks.TableReporter
class for reporting results in tabular format.Reporter
base class for extending reporters.Base
-prefix is removed from all base classes which reside
in base.py
modules.split_by_type
is now a method of the Domain
class.Optimiser
has a batch_size
attribute accessible as a property.optimisation.bo
package has been removed. Instead a single bo.py
module supports the only BO backend---GPyOpt, as of now.