wolffd@0: <html>
wolffd@0: <head>
wolffd@0: <title>
wolffd@0: Netlab Reference Manual gmmem
wolffd@0: </title>
wolffd@0: </head>
wolffd@0: <body>
wolffd@0: <H1> gmmem
wolffd@0: </H1>
wolffd@0: <h2>
wolffd@0: Purpose
wolffd@0: </h2>
wolffd@0: EM algorithm for Gaussian mixture model.
wolffd@0: 
wolffd@0: <p><h2>
wolffd@0: Synopsis
wolffd@0: </h2>
wolffd@0: <PRE>
wolffd@0: 
wolffd@0: [mix, options, errlog] = gmmem(mix, x, options)
wolffd@0: </PRE>
wolffd@0: 
wolffd@0: 
wolffd@0: <p><h2>
wolffd@0: Description
wolffd@0: </h2>
wolffd@0: <CODE>[mix, options, errlog] = gmmem(mix, x, options)</CODE> uses the Expectation
wolffd@0: Maximization algorithm of Dempster et al. to estimate the parameters of
wolffd@0: a Gaussian mixture model defined by a data structure <CODE>mix</CODE>.
wolffd@0: The matrix <CODE>x</CODE> represents the data whose expectation
wolffd@0: is maximized, with each row corresponding to a vector.
wolffd@0:   
wolffd@0: The optional parameters have the following interpretations.
wolffd@0: 
wolffd@0: <p><CODE>options(1)</CODE> is set to 1 to display error values; also logs error 
wolffd@0: values in the return argument <CODE>errlog</CODE>.
wolffd@0: If <CODE>options(1)</CODE> is set to 0,
wolffd@0: then only warning messages are displayed.  If <CODE>options(1)</CODE> is -1,
wolffd@0: then nothing is displayed.
wolffd@0: 
wolffd@0: <p><CODE>options(3)</CODE> is a measure of the absolute precision required of the error
wolffd@0: function at the solution. If the change in log likelihood between two steps of
wolffd@0: the EM algorithm is less than this value, then the function terminates.
wolffd@0: 
wolffd@0: <p><CODE>options(5)</CODE> is set to 1 if a covariance matrix is reset to its
wolffd@0: original value when any of its singular values are too small (less
wolffd@0: than MIN_COVAR which has the value eps).  
wolffd@0: With the default value of 0 no action is taken.
wolffd@0: 
wolffd@0: <p><CODE>options(14)</CODE> is the maximum number of iterations; default 100.
wolffd@0: 
wolffd@0: <p>The optional return value <CODE>options</CODE> contains the final error value 
wolffd@0: (i.e. data log likelihood) in
wolffd@0: <CODE>options(8)</CODE>.  
wolffd@0: 
wolffd@0: <p><h2>
wolffd@0: Examples
wolffd@0: </h2>
wolffd@0: The following code fragment sets up a Gaussian mixture model, initialises
wolffd@0: the parameters from the data, sets the options and trains the model.
wolffd@0: <PRE>
wolffd@0: 
wolffd@0: mix = gmm(inputdim, ncentres, 'full');
wolffd@0: 
wolffd@0: <p>options = foptions;
wolffd@0: options(14) = 5;
wolffd@0: mix = gmminit(mix, data, options);
wolffd@0: 
wolffd@0: <p>options(1)  = 1;		% Prints out error values.
wolffd@0: options(14) = 30;		% Max. number of iterations.
wolffd@0: 
wolffd@0: <p>mix = gmmem(mix, data, options);
wolffd@0: </PRE>
wolffd@0: 
wolffd@0: 
wolffd@0: <p><h2>
wolffd@0: See Also
wolffd@0: </h2>
wolffd@0: <CODE><a href="gmm.htm">gmm</a></CODE>, <CODE><a href="gmminit.htm">gmminit</a></CODE><hr>
wolffd@0: <b>Pages:</b>
wolffd@0: <a href="index.htm">Index</a>
wolffd@0: <hr>
wolffd@0: <p>Copyright (c) Ian T Nabney (1996-9)
wolffd@0: 
wolffd@0: 
wolffd@0: </body>
wolffd@0: </html>