Symmetry¶
- class baybe.symmetries.Symmetry[source]¶
Bases:
SerialMixin,ABCAbstract base class for symmetries.
Symmetry is a concept that can be used to configure the modelling process in the presence of invariances.
Public methods
__init__(*[, use_data_augmentation])Method generated by attrs for class Symmetry.
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)Validate that the symmetry is compatible with the given searchspace.
Public attributes and properties
Flag indicating whether data augmentation would be used with surrogates that support this.
The names of the parameters affected by the symmetry.
- __init__(*, use_data_augmentation: bool = True)¶
Method generated by attrs for class Symmetry.
For details on the parameters, see Public attributes and properties.
- abstract 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]¶
Validate that the symmetry is compatible with the given searchspace.
- Parameters:
searchspace (SearchSpace) – The searchspace to validate against.
- Raises:
ValueError – If the symmetry affects parameters not present in the searchspace.
- Return type:
None