DependencySymmetry¶
- class baybe.symmetries.DependencySymmetry[source]¶
Bases:
SymmetryClass for representing dependency symmetries.
A dependency symmetry expresses that certain parameters are dependent on another parameter having a specific value. For instance, the situation “The value of parameter y only matters if parameter x has the value ‘on’.”. In this scenario x is the causing parameter and y depends on x.
Public methods
__init__(parameter_name, condition, ...[, ...])Method generated by attrs for class DependencySymmetry.
augment_measurements(df, parameters)Augment the given measurements according to the symmetry.
from_dict(dictionary)Create an object from its dictionary representation.
from_json(source, /)Create an object from its JSON representation.
summary()Return a custom summarization of the symmetry.
to_dict()Create an object's dictionary representation.
to_json([sink, overwrite])Create an object's JSON representation.
validate_searchspace_context(searchspace)See base class.
Public attributes and properties
The condition specifying the active range of the causing parameter.
The parameters affected by the dependency.
Number of points used when subsampling continuous parameter ranges.
The names of the parameters affected by the symmetry.
Flag indicating whether data augmentation would be used with surrogates that support this.
- __init__(parameter_name: str, condition: Condition, affected_parameter_names: Sequence[str], *, use_data_augmentation: bool = True, n_discretization_points: int = 3)¶
Method generated by attrs for class DependencySymmetry.
For details on the parameters, see Public attributes and properties.
- augment_measurements(df: pd.DataFrame, parameters: Iterable[Parameter])[source]¶
Augment the given measurements according to the symmetry.
- Parameters:
df (pd.DataFrame) – The dataframe containing the measurements to be augmented.
parameters (Iterable[Parameter]) – Parameter objects carrying additional information (might not be needed by all augmentation implementations).
- Return type:
pd.DataFrame
- Returns:
The augmented dataframe including the original measurements.
- 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
Pathobject pointing to a JSON file.A file-like object with a
read()method.
- Raises:
ValueError – If
sourceis not one of the allowed types.- Return type:
_T
- Returns:
The reconstructed object.
- to_dict()¶
Create an object’s dictionary representation.
- Return type:
- 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
Pathobject 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
sinkis a file path orPathobject.**kwargs (Any) – Additional keyword arguments to pass to
json.dumps().
- Raises:
FileExistsError – If
sinkpoints to an already existing file butoverwriteisFalse.- Return type:
str
- Returns:
The JSON representation as a string.
- validate_searchspace_context(searchspace: SearchSpace)[source]¶
See base class.
- Parameters:
searchspace (SearchSpace) – The searchspace to validate against.
- Raises:
ValueError – If any of the affected parameters is not present in the searchspace.
TypeError – If the causing parameter is not discrete.
- Return type:
None