Diagonal Linear Bijector¤
distreqx.bijectors.diag_linear.DiagLinear (AbstractLinearBijector)
¤
Linear bijector with a diagonal weight matrix.
The bijector is defined as f(x) = Ax
where A
is a DxD
diagonal matrix.
Additional dimensions, if any, index batches.
The Jacobian determinant is trivially computed by taking the product of the
diagonal entries in A
. The inverse transformation x = f^{-1}(y)
is
computed element-wise.
The bijector is invertible if and only if the diagonal entries of A
are all
non-zero. It is the responsibility of the user to make sure that this is the
case; the class will make no attempt to verify that the bijector is
invertible.
__init__(self, diag: Array)
¤
Initializes the bijector.
Arguments:
diag
: a vector of length D, the diagonal of matrixA
.