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 {}