Skip to content

parameterspace.transformations.zero_one

ZeroOneFloat

Maps a bounded interval to [0, 1] via a linear transformation.

from_dict(json_dict) inherited

[summary]

Source code in parameterspace/transformations/zero_one.py
@staticmethod
def from_dict(json_dict: dict):
    """
    [summary]
    """
    transformation_class = json_dict["class_name"]
    module_str, class_str = transformation_class.rsplit(".", 1)
    module = importlib.import_module(module_str)
    model_class = getattr(module, class_str)
    return model_class(*json_dict["init_args"], **json_dict["init_kwargs"])

inverse(self, numerical_value)

Convert the numerical representation back to the true value with the proper type.

Parameters:

Name Type Description Default
numerical_value float

Transformed/Numerical representation of a value.

required

Returns:

Type Description
float

The value corresponding to the given value. Type depends no the kind of transformation.

Source code in parameterspace/transformations/zero_one.py
def inverse(self, numerical_value: float) -> float:
    return float(
        np.clip(
            self.input_bounds[0] + numerical_value * (self.interval_size),
            self.input_bounds[0],
            self.input_bounds[1],
        )
    )

jacobian_factor(self, numerical_value)

Factor to correct the likelihood based on the non-linear transformation.

Parameters:

Name Type Description Default
numerical_value float

Transformed/Numerical representation of a value.

required

Returns:

Type Description
float

Jacobian factor to properly transform the likelihood.

Source code in parameterspace/transformations/zero_one.py
def jacobian_factor(self, numerical_value: float) -> float:
    return 1.0 / self.interval_size

to_dict(self) inherited

[summary]

Source code in parameterspace/transformations/zero_one.py
def to_dict(self):
    """
    [summary]
    """
    json_dict = {
        "class_name": type(self).__module__ + "." + type(self).__qualname__,
        "init_args": self._init_args,
        "init_kwargs": self._init_kwargs,
    }
    return json_dict

ZeroOneInteger

Maps a bounded interval of integers to [0, 1] via a linear transformation.

from_dict(json_dict) inherited

[summary]

Source code in parameterspace/transformations/zero_one.py
@staticmethod
def from_dict(json_dict: dict):
    """
    [summary]
    """
    transformation_class = json_dict["class_name"]
    module_str, class_str = transformation_class.rsplit(".", 1)
    module = importlib.import_module(module_str)
    model_class = getattr(module, class_str)
    return model_class(*json_dict["init_args"], **json_dict["init_kwargs"])

inverse(self, numerical_value)

Convert the numerical representation back to the true value with the proper type.

Parameters:

Name Type Description Default
numerical_value float

Transformed/Numerical representation of a value.

required

Returns:

Type Description
int

The value corresponding to the given value. Type depends no the kind of transformation.

Source code in parameterspace/transformations/zero_one.py
def inverse(self, numerical_value: float) -> int:
    return int(
        np.clip(
            np.around(
                self.input_bounds[0] - 0.5 + numerical_value * (self.interval_size)
            ),
            self.input_bounds[0],
            self.input_bounds[1],
        )
    )

jacobian_factor(self, numerical_value)

Factor to correct the likelihood based on the non-linear transformation.

Parameters:

Name Type Description Default
numerical_value float

Transformed/Numerical representation of a value.

required

Returns:

Type Description
float

Jacobian factor to properly transform the likelihood.

Source code in parameterspace/transformations/zero_one.py
def jacobian_factor(self, numerical_value: float) -> float:
    return 1.0 / self.interval_size

to_dict(self) inherited

[summary]

Source code in parameterspace/transformations/zero_one.py
def to_dict(self):
    """
    [summary]
    """
    json_dict = {
        "class_name": type(self).__module__ + "." + type(self).__qualname__,
        "init_args": self._init_args,
        "init_kwargs": self._init_kwargs,
    }
    return json_dict