extension_interface
openml.extensions.extension_interface
#
Extension
#
Bases: ABC
Defines the interface to connect machine learning libraries to OpenML-Python.
See openml.extension.sklearn.extension
for an implementation to bootstrap from.
can_handle_flow
abstractmethod
classmethod
#
can_handle_flow(flow: OpenMLFlow) -> bool
can_handle_model
abstractmethod
classmethod
#
check_if_model_fitted
abstractmethod
#
create_setup_string
abstractmethod
#
flow_to_model
abstractmethod
#
flow_to_model(flow: OpenMLFlow, initialize_with_defaults: bool = False, strict_version: bool = True) -> Any
Instantiate a model from the flow representation.
Parameters#
flow : OpenMLFlow
bool, optional (default=False)
If this flag is set, the hyperparameter values of flows will be ignored and a flow with its defaults is returned.
bool, default=True
Whether to fail if version requirements are not fulfilled.
Returns#
Any
Source code in openml/extensions/extension_interface.py
get_version_information
abstractmethod
#
instantiate_model_from_hpo_class
abstractmethod
#
instantiate_model_from_hpo_class(model: Any, trace_iteration: OpenMLTraceIteration) -> Any
Instantiate a base model which can be searched over by the hyperparameter optimization model.
Parameters#
model : Any A hyperparameter optimization model which defines the model to be instantiated. trace_iteration : OpenMLTraceIteration Describing the hyperparameter settings to instantiate.
Returns#
Any
Source code in openml/extensions/extension_interface.py
is_estimator
abstractmethod
#
model_to_flow
abstractmethod
#
model_to_flow(model: Any) -> OpenMLFlow
obtain_parameter_values
abstractmethod
#
obtain_parameter_values(flow: OpenMLFlow, model: Any = None) -> list[dict[str, Any]]
Extracts all parameter settings required for the flow from the model.
If no explicit model is provided, the parameters will be extracted from flow.model
instead.
Parameters#
flow : OpenMLFlow OpenMLFlow object (containing flow ids, i.e., it has to be downloaded from the server)
Any, optional (default=None)
The model from which to obtain the parameter values. Must match the flow signature.
If None, use the model specified in OpenMLFlow.model
.
Returns#
list
A list of dicts, where each dict has the following entries:
- oml:name
: str: The OpenML parameter name
- oml:value
: mixed: A representation of the parameter value
- oml:component
: int: flow id to which the parameter belongs
Source code in openml/extensions/extension_interface.py
seed_model
abstractmethod
#
Set the seed of all the unseeded components of a model and return the seeded model.
Required so that all seed information can be uploaded to OpenML for reproducible results.
Parameters#
model : Any The model to be seeded seed : int
Returns#
model