Daniel@0: Daniel@0: Daniel@0: Daniel@0: Netlab Reference Manual gmmem Daniel@0: Daniel@0: Daniel@0: Daniel@0:

gmmem Daniel@0:

Daniel@0:

Daniel@0: Purpose Daniel@0:

Daniel@0: EM algorithm for Gaussian mixture model. Daniel@0: Daniel@0:

Daniel@0: Synopsis Daniel@0:

Daniel@0:
Daniel@0: 
Daniel@0: [mix, options, errlog] = gmmem(mix, x, options)
Daniel@0: 
Daniel@0: Daniel@0: Daniel@0:

Daniel@0: Description Daniel@0:

Daniel@0: [mix, options, errlog] = gmmem(mix, x, options) uses the Expectation Daniel@0: Maximization algorithm of Dempster et al. to estimate the parameters of Daniel@0: a Gaussian mixture model defined by a data structure mix. Daniel@0: The matrix x represents the data whose expectation Daniel@0: is maximized, with each row corresponding to a vector. Daniel@0: Daniel@0: The optional parameters have the following interpretations. Daniel@0: Daniel@0:

options(1) is set to 1 to display error values; also logs error Daniel@0: values in the return argument errlog. Daniel@0: If options(1) is set to 0, Daniel@0: then only warning messages are displayed. If options(1) is -1, Daniel@0: then nothing is displayed. Daniel@0: Daniel@0:

options(3) is a measure of the absolute precision required of the error Daniel@0: function at the solution. If the change in log likelihood between two steps of Daniel@0: the EM algorithm is less than this value, then the function terminates. Daniel@0: Daniel@0:

options(5) is set to 1 if a covariance matrix is reset to its Daniel@0: original value when any of its singular values are too small (less Daniel@0: than MIN_COVAR which has the value eps). Daniel@0: With the default value of 0 no action is taken. Daniel@0: Daniel@0:

options(14) is the maximum number of iterations; default 100. Daniel@0: Daniel@0:

The optional return value options contains the final error value Daniel@0: (i.e. data log likelihood) in Daniel@0: options(8). Daniel@0: Daniel@0:

Daniel@0: Examples Daniel@0:

Daniel@0: The following code fragment sets up a Gaussian mixture model, initialises Daniel@0: the parameters from the data, sets the options and trains the model. Daniel@0:
Daniel@0: 
Daniel@0: mix = gmm(inputdim, ncentres, 'full');
Daniel@0: 
Daniel@0: 

options = foptions; Daniel@0: options(14) = 5; Daniel@0: mix = gmminit(mix, data, options); Daniel@0: Daniel@0:

options(1) = 1; % Prints out error values. Daniel@0: options(14) = 30; % Max. number of iterations. Daniel@0: Daniel@0:

mix = gmmem(mix, data, options); Daniel@0:

Daniel@0: Daniel@0: Daniel@0:

Daniel@0: See Also Daniel@0:

Daniel@0: gmm, gmminit
Daniel@0: Pages: Daniel@0: Index Daniel@0:
Daniel@0:

Copyright (c) Ian T Nabney (1996-9) Daniel@0: Daniel@0: Daniel@0: Daniel@0: