Converters¶
DeepCAVE uses Run objects to interpret the input data. Converters make sure that folders are put into the right format so that the files can be interpreted correctly.
Currently, DeepCAVE supports the following converters:
DeepCAVE (native)
SMAC (v1.4)
SMAC (v2.0.0)
BOHB
Auto-Sklearn
Auto-PyTorch
Note
DeepCAVE observes optimizer data on the file system and therefore allows for monitoring of both finished processes and running processes that regularly write new results to disk as long as a converter is available.
Custom Converter¶
To support a new converter, you need to create a new class that inherits from Run. Three methods are needed:
hash: Returns a unique hash for the run (e.g. hashing the trial history).
latest_change: Returns when the latest change was.
from_path: Returns a Run object from a path. Inside this method, you have to provide a configspace, meta data, objectives, budgets and add the trials to the new created run object.
After you have created a new converter, you need to add it to AVAILABLE_CONVERTERS
in your
config (or if you work directly on the branch change deepcave/config.py
to your needs).
The next time you select a run, DeepCAVE will automatically use this converter as long as the
from_path
method did not fail.