SingleTargetObjective

class baybe.objectives.single.SingleTargetObjective[source]

Bases: Objective

An objective focusing on a single target.

Public methods

__init__(target, *[, metadata])

Method generated by attrs for class SingleTargetObjective.

from_dict(dictionary)

Create an object from its dictionary representation.

from_json(source, /)

Create an object from its JSON representation.

to_botorch()

Convert to BoTorch representation.

to_dict()

Create an object's dictionary representation.

to_json([sink, overwrite])

Create an object's JSON representation.

transform([df, allow_missing, allow_extra, data])

Evaluate the objective on the target columns of the given dataframe.

Public attributes and properties

description

The description of the objective.

is_multi_output

Class variable indicating if the objective produces multiple outputs.

n_outputs

The number of outputs of the objective.

output_names

The names of the outputs of the objective.

supports_partial_measurements

Boolean indicating if the objective accepts partial target measurements.

targets

The targets included in the objective.

metadata

Optional metadata containing description and other information.

__init__(target: Target, *, metadata=NOTHING)

Method generated by attrs for class SingleTargetObjective.

For details on the parameters, see Public attributes and properties.

classmethod from_dict(dictionary: dict)

Create an object from its dictionary representation.

Parameters:

dictionary (dict) – The dictionary representation.

Return type:

TypeVar(_T, bound= SerialMixin)

Returns:

The reconstructed object.

classmethod from_json(source: str | Path | SupportsRead[str], /)

Create an object from its JSON representation.

Parameters:

source (str | Path | SupportsRead[str]) –

The JSON source. Can be:

  • A string containing JSON content.

  • A file path or Path object pointing to a JSON file.

  • A file-like object with a read() method.

Raises:

ValueError – If source is not one of the allowed types.

Return type:

_T

Returns:

The reconstructed object.

to_botorch()[source]

Convert to BoTorch representation.

Return type:

MCAcquisitionObjective

to_dict()

Create an object’s dictionary representation.

Return type:

dict

Returns:

The dictionary representation of the object.

to_json(sink: str | Path | SupportsWrite[str] | None = None, /, *, overwrite: bool = False, **kwargs: Any)

Create an object’s JSON representation.

Parameters:
  • sink (str | Path | SupportsWrite[str] | None) –

    The JSON sink. Can be:

    • None (only returns the JSON string).

    • A file path or Path object pointing to a location where to write the JSON content.

    • A file-like object with a write() method.

  • overwrite (bool) – Boolean flag indicating if to overwrite the file if it already exists. Only relevant if sink is a file path or Path object.

  • **kwargs (Any) – Additional keyword arguments to pass to json.dumps().

Raises:

FileExistsError – If sink points to an already existing file but overwrite is False.

Return type:

str

Returns:

The JSON representation as a string.

transform(df: DataFrame | None = None, /, *, allow_missing: bool = False, allow_extra: bool | None = None, data: DataFrame | None = None)

Evaluate the objective on the target columns of the given dataframe.

Parameters:
  • df (Optional[DataFrame]) – The dataframe to be transformed. The allowed columns of the dataframe are dictated by the allow_missing and allow_extra flags.

  • allow_missing (bool) – If False, each target of the objective must have exactly one corresponding column in the given dataframe. If True, the dataframe may contain only a subset of target columns.

  • allow_extra (Optional[bool]) – If False, each column present in the dataframe must correspond to exactly one target of the objective. If True, the dataframe may contain additional non-target-related columns, which will be ignored. The None default value is for temporary backward compatibility only and will be removed in a future version.

  • data (Optional[DataFrame]) – Ignore! For backward compatibility only.

Raises:

ValueError – If dataframes are passed to both df and data.

Return type:

DataFrame

Returns:

A dataframe containing the objective values for the given input dataframe.

property description: str | None

The description of the objective.

is_multi_output: ClassVar[bool] = False

Class variable indicating if the objective produces multiple outputs.

metadata: Metadata

Optional metadata containing description and other information.

property n_outputs: int

The number of outputs of the objective.

property output_names: tuple[str, ...]

The names of the outputs of the objective.

property supports_partial_measurements: bool

Boolean indicating if the objective accepts partial target measurements.

property targets: tuple[Target, ...]

The targets included in the objective.