v0.3.0 2019-11-11
With this release we introduce an improved BTB that has a major reorganization of the project
with emphasis on an easier way of interacting with BTB and an easy way of developing, testing and
contributing new acquisition functions, metamodels, tuners and hyperparameters.
New project structure
The new major reorganization comes with the btb.tuning module. This module provides everything
needed for the tuning process and comes with three new additions Acquisition, Metamodel and
Tunable. Also there is an update to the Hyperparamters and Tuners. This changes are meant
to help developers and contributors to easily develop, test and contribute new Tuners.
New API
There is a slightly new way of using BTB as the new Tunable class is introduced, that is meant
to be the only required object to instantiate a Tuner. This Tunable class represents a
collection of HyperParams that need to be tuned as a whole, at once. Now, in order to create a
Tuner, a Tunable instance must be created first with the hyperparameters of the
objective function.
New Features
- New
Hyperparametersthat allow an easier interaction for the final user. - New
Tunableclass that manages a collection ofHyperparameters. - New
Tunerclass that is a python mixin that requieres ofAcquisitionandMetamodelas
parents. Also now works with a singleTunableobject. - New
Acquisitionclass, meant to implement an acquisition function to be inherit by aTuner. - New
Metamodelclass, meant to implement everything that a certainmodelneeds and be inherit
by theTuner. - Reorganization of the
selectionmodule to follow a similarAPItotuning.