Documentation Center

  • Trials
  • Product Updates

gmdistribution

Class: gmdistribution

Construct Gaussian mixture distribution

Syntax

obj = gmdistribution(mu,sigma,p)

Description

obj = gmdistribution(mu,sigma,p) constructs an object obj of the gmdistribution class defining a Gaussian mixture distribution.

mu is a k-by-d matrix specifying the d-dimensional mean of each of the k components.

sigma specifies the covariance of each component. The size of sigma is:

  • d-by-d-by-k if there are no restrictions on the form of the covariance. In this case, sigma(:,:,I) is the covariance of component I.

  • 1-by-d-by-k if the covariance matrices are restricted to be diagonal, but not restricted to be same across components. In this case, sigma(:,:,I) contains the diagonal elements of the covariance of component I.

  • d-by-d matrix if the covariance matrices are restricted to be the same across components, but not restricted to be diagonal. In this case, sigma is the pooled estimate of covariance.

  • 1-by-d if the covariance matrices are restricted to be diagonal and the same across components. In this case, sigma contains the diagonal elements of the pooled estimate of covariance.

p is an optional 1-by-k vector specifying the mixing proportions of each component. If p does not sum to 1, gmdistribution normalizes it. The default is equal proportions.

Examples

expand all

Construct a Gaussian Mixture Distribution

Create a gmdistribution distribution defining a two-component mixture of bivariate Gaussian distributions.

mu = [1 2;-3 -5];
sigma = cat(3,[2 0;0 .5],[1 0;0 1]);
p = ones(1,2)/2;
obj = gmdistribution(mu,sigma,p);

ezsurf(@(x,y)pdf(obj,[x y]),[-10 10],[-10 10])

References

[1] McLachlan, G., and D. Peel. Finite Mixture Models. Hoboken, NJ: John Wiley & Sons, Inc., 2000.

See Also

| | | | | |

Was this topic helpful?