Source code for bayesflow.adapters.transforms.sqrt

from keras.saving import register_keras_serializable as serializable
import numpy as np

from .elementwise_transform import ElementwiseTransform


[docs] @serializable(package="bayesflow.adapters") class Sqrt(ElementwiseTransform): """Square-root transform a variable. Examples -------- >>> adapter = bf.Adapter().sqrt(["x"]) """
[docs] def forward(self, data: np.ndarray, **kwargs) -> np.ndarray: return np.sqrt(data)
[docs] def inverse(self, data: np.ndarray, **kwargs) -> np.ndarray: return np.square(data)
[docs] @classmethod def from_config(cls, config: dict, custom_objects=None) -> "Sqrt": return cls()
[docs] def get_config(self) -> dict: return {}