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