Skip to content

Multivariate Normal from Bijector¤

distreqx.distributions.MultivariateNormalFromBijector(distreqx.distributions.AbstractMultivariateNormalFromBijector) ¤

Multivariate normal distribution on \(\mathbb{R}^k\).

The multivariate normal over \(x\) is characterized by an invertible affine transformation \(x = f(z) = Az + b\), where \(z\) is a random variable that follows a standard multivariate normal on \(\mathbb{R}^k\), i.e., \(p(z) = \mathcal{N}(0, I_k)\), \(A\) is a \(k \times k\) transformation matrix, and \(b\) is a \(k\)-dimensional vector.

The resulting PDF on \(x\) is a multivariate normal, \(p(x) = \mathcal{N}(b, C)\), where \(C = AA^T\) is the covariance matrix.

The transformation \(x = f(z)\) must be specified by a linear scale bijector implementing the operation \(Az\) and a shift (or location) term \(b\).

__init__(loc: Array, scale: distreqx.bijectors.AbstractLinearBijector) ¤

Initializes the distribution.

Arguments:

  • loc: The term b, i.e., the mean of the multivariate normal distribution.
  • scale: The bijector specifying the linear transformation A @ z, as described in the class docstring.