EM_MVGM

Fast implementation of EM algorithm for multivariate gaussian mixture
3.8K Downloads
Updated 27 Nov 2012

View License

Mex implementation of EM algorithm for multivariate Gaussian mixture. Multiple data/initial parameters are allowed by ND slices definition

em_mvgm : Expectation-Maximization algorithm for Multivariate Gaussian Mixtures

Usage
-------

[logl , M , S , P] = em_mvgm(Z , M0 , S0 , P0 , [nbite]);

Inputs
-------

Z Measurements (m x K x [n1] x ... x [nl])
M0 Initial mean vector. M0 can be (m x 1 x p x [v1] x ... x [vr])
S0 Initial covariance matrix. S0 can be (m x m x p x [v1] x ... x [vr])
P0 Initial mixture probabilities (1 x 1 x p) : P0 can be (1 x 1 x d x [v1] x ... x [vr])
nbite Number of iteration (default = 10)

Outputs
-------

logl Final loglikelihood (n1 x ... x nl x v1 x ... x vr)
M Estimated mean vector (d x 1 x p x n1 x ... x nl v1 x ... x vr)
S Estimated covariance vector (d x d x p x n1 x ... x nl v1 x ... x vr)
P Estimated initial probabilities (1 x 1 x p x n1 x ... x nl v1 x ... x vr)

Please run mexme_em_mvgm for compile mex file on your own systems.

Run test_em_mvgm.m for a demo

Cite As

Sebastien PARIS (2024). EM_MVGM (https://www.mathworks.com/matlabcentral/fileexchange/17560-em_mvgm), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Statistics and Machine Learning Toolbox in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.8.0.0

-Fix 2 bugs (thanks to Jonathan for reporting)

1.7.0.0

-Fix a bug introduced in the last update

1.6.0.0

-Minor update for Linux

1.5.0.0

-Fix a compilation error for Linux and // comments

1.4.0.0

-Fixed a bug for Linux64 & GCC

1.3.0.0

Correct a bug in likelihood_mvgm.c when d=1

1.2.0.0

Fixed bug in the likelihood constant computation

1.1.0.0

- add mexme_em_mvgm to build mex files and compatible with LCC compiler.

1.0.0.0