Free Split and Merge Expectation Maximization for MultiVaria
Free Split and Merge Expectation-Maximization algorithm for Multivariate Gaussian Mixtures. This algorithm is suitable to estimate mixture parameters and the number of conpounds
Usage
------
[M , S , P ,logl] = fsmem_mvgm(Z , [option] , [M0] , [S0] , [P0]);
Inputs
------
Z Measurements (d x N)
M0 Initial mean vector. M0 can be (d x 1 x K) (default [Kini random elements from Z])
S0 Initial covariance matrix. S0 can be (d x d x K) (default [cov(Z)/40])
P0 Initial mixture probablities (1 x 1 x K) : (default [1/Kini])
options
Kini Initial number of compounds (default [5])
Kmax Maximum number of compounds (default [15])
maxite_fsmem Number of maximum iteration for the main loop of the fsmem (default [100])
maxite_fullem Number of maximum iteration for the full EM inside the main loop (default [100])
maxite_partialem Number of maximum iteration for the partial EM inside the main loop (default [100])
epsi_fullem Tolerance in loglikelihood improuvement of the Full EM (default [1e-6])
epsi_partialem Tolerance in loglikelihood improuvement of the Partial EM (default [1e-6])
lambda Covariance regularization parameter (default [0.01])
maxcands_split Maximum number of split candidate (default [5])
splitinit_epsi Split Initialisation parameter for the mean of splitted cluster (default [1])
maxcands_merge Maximum number of merge candidate (default [5])
covtype Covariance type : 0 = full , 1 = elliptical , 2 = spherical (default [0])
fail_exit Number of tentatives of split/merge operations before exit. If fail_exit = 0, then FSMEM = EM
Ouputs
-------
M Estimated mean vector (d x 1 x Kest), where Kest is the number of estimated coupounds
S Estimated covariance vector (d x d x Kest)
P Estimated initial probabilities (1 x 1 x Kest)
logl Final loglikelihood
Please run mexme_fsmem_mvgm.m in order to compile mex-files on your own plateform (Be sure than "mex -setup" have been previously)
Please run test_fsmem_mvgm for the demo
Citar como
Sebastien PARIS (2024). Free Split and Merge Expectation Maximization for MultiVaria (https://www.mathworks.com/matlabcentral/fileexchange/22711-free-split-and-merge-expectation-maximization-for-multivaria), MATLAB Central File Exchange. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxCategorías
- AI and Statistics > Statistics and Machine Learning Toolbox > Cluster Analysis and Anomaly Detection > Gaussian Mixture Models >
Etiquetas
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.
Versión | Publicado | Notas de la versión | |
---|---|---|---|
2.1 | Fixed for modern Matlab & OS64 |
||
2.0 | Bug fixes in description/online help |
||
1.13.0.0 | -Correct typo in the header of fsmem_mvgm.c |
||
1.12.0.0 | -Fix a bug when true number of conpounds is unity, thanks to Jonathan. |
||
1.11.0.0 | -change input/output parsing
|
||
1.10.0.0 | -Minor changes |
||
1.9.0.0 | - Fix a bug in parsing inputs |
||
1.8.0.0 | -Minor changes |
||
1.7.0.0 | -Fixed bug for Linux64 and GCC |
||
1.6.0.0 | - Improve description and mexme_fsmem_mvgm
|
||
1.5.0.0 | Minor code cleaning and should compile on non-C99 compiler |
||
1.4.0.0 | - add options.Kmin
|
||
1.2.0.0 | Correct a bug in likelihood_mvgm.c when d=1 |
||
1.1.0.0 | -Add HTML file report |
||
1.0.0.0 |