VIBES

Variational Inference for Bayesian Networks

SourceForge.net Logo
[Sourceforge project page]
John Winn, January 2004
Overview Tutorial Examples Help
previous    Contents   next

3. Creating and learning a Gaussian model

As the model stands, the node x has been marked as Gaussian by default and so the model is invalid as neither the mean nor the precision of the Gaussian have been set (attempting to initialise the model by pressing the Init. button will give an error message to this effect). We can specify latent variables for these parameters by creating a Gaussian node μ for the mean parameter and a Gamma node γ for the precision parameter. These nodes are created within the d plate to give a model which is separable over each data dimension. These are then set as the Mean and Precision properties of x, as shown here.

The model is still invalid as the parameters of μ and γ are unspecified. In this case, rather than create further latent variables, these parameters will be set to fixed values to give appropriate priors (for example setting μ to have mean=0 and precision=0.3 and γ to have a=10 and b=1).

Note: If you want to skip constructing this network by hand, it is in the tutorial file called Gaussian2D.xml.

The network now corresponds to a two-dimensional Gaussian model and variational inference can be performed automatically by pressing the Start button (which also performs initialisation). For this data set, inference converges after four iterations and gives a bound of -1984 nats. At this point, the expected values of each latent variable under the fully-factorised Q distribution can be displayed or graphed by double-clicking on the corresponding node.