gmm

Purpose

Creates a Gaussian mixture model with specified architecture.

Synopsis

mix = gmm(dim, ncentres, covar_type)

Description

mix = gmm(dim, ncentres, covar_type) takes the dimension of the space dim, the number of centres in the mixture model and the type of the mixture model, and returns a data structure mix. The mixture model type defines the covariance structure of each component Gaussian:

  'spherical' = single variance parameter for each component: stored as a vector
  'diag' = diagonal matrix for each component: stored as rows of a matrix
  'full' = full matrix for each component: stored as 3d array

The priors are initialised to equal values summing to one, and the covariances are all the identity matrix (or equivalent). The centres are initialised randomly from a zero mean unit variance Gaussian. This makes use of the MATLAB function randn and so the seed for the random weight initialisation can be set using randn('state', s) where s is the state value.

The fields in mix are

  
  type = 'gmm'
  nin = the dimension of the space
  ncentres = number of mixture components
  covar_type = string for type of variance model
  priors = mixing coefficients
  centres = means of Gaussians: stored as rows of a matrix
  covars = covariances of Gaussians

Example


mix = gmm(2, 4, 'spherical');
This creates a Gaussian mixture model with 4 components in 2 dimensions. The covariance structure is a spherical model.

See Also

gmmpak, gmmunpak, gmmsamp, gmminit, gmmem, gmactiv, gmpost, gmprob
Pages: Index

Copyright (c) Christopher M Bishop, Ian T Nabney (1996, 1997)