bayespy.inference.vmp.nodes.gaussian.GaussianDistribution

class bayespy.inference.vmp.nodes.gaussian.GaussianDistribution(shape)[source]

Class for the VMP formulas of Gaussian variables.

Currently, supports only vector variables.

Notes

Message passing equations:

\mathbf{x} &\sim \mathcal{N}(\boldsymbol{\mu}, \mathbf{\Lambda}),

\mathbf{x},\boldsymbol{\mu} \in \mathbb{R}^{D},
\quad \mathbf{\Lambda} \in \mathbb{R}^{D \times D},
\quad \mathbf{\Lambda} \text{ symmetric positive definite}

\log\mathcal{N}( \mathbf{x} | \boldsymbol{\mu}, \mathbf{\Lambda} )
&=
- \frac{1}{2} \mathbf{x}^{\mathrm{T}} \mathbf{\Lambda} \mathbf{x}
+ \mathbf{x}^{\mathrm{T}} \mathbf{\Lambda} \boldsymbol{\mu}
- \frac{1}{2} \boldsymbol{\mu}^{\mathrm{T}} \mathbf{\Lambda}
  \boldsymbol{\mu}
+ \frac{1}{2} \log |\mathbf{\Lambda}|
- \frac{D}{2} \log (2\pi)

__init__(shape)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__(shape) Initialize self.
compute_cgf_from_parents(u_mu_Lambda) Compute \mathrm{E}_{q(p)}[g(p)]
compute_fixed_moments_and_f(x[, mask]) Compute the moments and f(x) for a fixed value.
compute_gradient(g, u, phi) Compute the standard gradient with respect to the natural parameters.
compute_logpdf(u, phi, g, f, ndims) Compute E[log p(X)] given E[u], E[phi], E[g] and E[f].
compute_message_to_parent(parent, index, u, …) Compute the message to a parent node.
compute_moments_and_cgf(phi[, mask]) Compute the moments and g(\phi).
compute_phi_from_parents(u_mu_Lambda[, mask]) Compute the natural parameter vector given parent moments.
compute_weights_to_parent(index, weights) Maps the mask to the plates of a parent.
plates_from_parent(index, plates) Resolve the plate mapping from a parent.
plates_to_parent(index, plates) Resolves the plate mapping to a parent.
random(*phi[, plates]) Draw a random sample from the distribution.