DiscretePermutationInvarianceConstraint

class baybe.constraints.discrete.DiscretePermutationInvarianceConstraint[source]

Bases: DiscreteConstraint

Constraint class for declaring that a set of parameters is permutation invariant.

More precisely, this means that, (val_from_param1, val_from_param2) is equivalent to (val_from_param2, val_from_param1). Since it does not make sense to have this constraint with duplicated labels, this implementation also internally applies the baybe.constraints.discrete.DiscreteNoLabelDuplicatesConstraint.

Note: This constraint is evaluated during creation. In the future it might also be evaluated during modeling to make use of the invariance.

Public methods

__init__(parameters[, dependencies])

Method generated by attrs for class DiscretePermutationInvarianceConstraint.

from_dict(dictionary)

Create an object from its dictionary representation.

from_json(string)

Create an object from its JSON representation.

get_invalid(data)

Get the indices of dataframe entries that are invalid under the constraint.

summary()

Return a custom summarization of the constraint.

to_dict()

Create an object's dictionary representation.

to_json()

Create an object's JSON representation.

Public attributes and properties

dependencies

Dependencies connected with the invariant parameters.

eval_during_creation

Class variable encoding whether the condition is evaluated during creation.

eval_during_modeling

Class variable encoding whether the condition is evaluated during modeling.

is_continuous

Boolean indicating if this is a constraint over continuous parameters.

is_discrete

Boolean indicating if this is a constraint over discrete parameters.

parameters

The list of parameters used for the constraint.

__init__(parameters: list[str], dependencies: DiscreteDependenciesConstraint | None = None)

Method generated by attrs for class DiscretePermutationInvarianceConstraint.

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)

Returns:

The reconstructed object.

classmethod from_json(string: str)

Create an object from its JSON representation.

Parameters:

string (str) – The JSON representation of the object.

Return type:

TypeVar(_T)

Returns:

The reconstructed object.

get_invalid(data: DataFrame)[source]

Get the indices of dataframe entries that are invalid under the constraint.

Parameters:

data (DataFrame) – A dataframe where each row represents a particular parameter combination.

Return type:

Index

Returns:

The dataframe indices of rows where the constraint is violated.

summary()

Return a custom summarization of the constraint.

Return type:

dict

to_dict()

Create an object’s dictionary representation.

Return type:

dict

to_json()

Create an object’s JSON representation.

Return type:

str

Returns:

The JSON representation as a string.

dependencies: Optional[DiscreteDependenciesConstraint]

Dependencies connected with the invariant parameters.

eval_during_creation: ClassVar[bool] = True

Class variable encoding whether the condition is evaluated during creation.

eval_during_modeling: ClassVar[bool] = False

Class variable encoding whether the condition is evaluated during modeling.

property is_continuous: bool

Boolean indicating if this is a constraint over continuous parameters.

property is_discrete: bool

Boolean indicating if this is a constraint over discrete parameters.

parameters: list[str]

The list of parameters used for the constraint.