Scalar Affine Bijector¤
distreqx.bijectors.ScalarAffine(distreqx.bijectors.AbstractBijector)
¤
An affine bijector that acts elementwise.
The bijector is defined as follows:
- Forward: \(y = \text{scale} \cdot x + \text{shift}\)
- Forward Jacobian determinant: \(\log|\det J(x)| = \log|\text{scale}|\)
- Inverse: \(x = (y - \text{shift}) / \text{scale}\)
- Inverse Jacobian determinant: \(\log|\det J(y)| = -\log|\text{scale}|\)
where scale and shift are the bijector's parameters.
__init__(shift: Array, scale: Array | None = None, log_scale: Array | None = None)
¤
Initializes a ScalarAffine bijector.
Arguments:
shift: the bijector's shift parameter.scale: the bijector's scale parameter. NOTE:scalemust be non-zero, otherwise the bijector is not invertible. It is the user's responsibility to make surescaleis non-zero; the class will make no attempt to verify this.log_scale: the log of the scale parameter. If specified, the bijector's scale is set equal toexp(log_scale). Unlikescale,log_scaleis an unconstrained parameter. NOTE: eitherscaleorlog_scalecan be specified, but not both. If neither is specified, the bijector's scale will default to 1.
Raises:
ValueError: if bothscaleandlog_scaleare not None.