Bayesian robust mixture model
The BRMM class implements algorithms for simulating and estimating the parameters of a finite mixture model. Mixture models are typically used for cluster analysis, i.e. grouping data into categories. This model is specifically designed for data containing outliers and/or missing values.
A BRMM object models each prototype as a heavy-tailed distribution with component-specific parameters. The parameters are equipped with a conjugate prior distribution as per the Bayesian paradigm. The model also contains hidden variables representing the missing values in the data and the quality of the data. The posterior distributions over both parameters and hidden variables are estimated by an approximate variational inference algorithm.
This submission includes a test function that generates a set of synthetic data and learns a model from these data. The test function also plots the data clustered according to the model, and the variational lower bound on the marginal log-likelihood of the data after each iteration.
If you find this submission useful for your research/work please cite my MathWorks community profile. Feel free to contact me directly if you have any technical or application-related questions.
INSTRUCTIONS:
After downloading this submission, extract the compressed file inside your MatLab working directory and run the test function (brmmtest.m) for a demonstration.
Cite As
Gabriel Agamennoni (2024). Bayesian robust mixture model (https://www.mathworks.com/matlabcentral/fileexchange/40582-bayesian-robust-mixture-model), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
@brmm/
@brmm/private/
Version | Published | Release Notes | |
---|---|---|---|
1.14.0.0 | Minor code refactoring |
||
1.13.0.0 | Minor changes to documentation. |
||
1.12.0.0 | Improved efficiency of estimation algorithm. |
||
1.11.0.0 | Minor redesign. |
||
1.10.0.0 | Updated documentation, added comments to the code. |
||
1.9.0.0 | Minor changes in the code and updates to the documentation. |
||
1.8.0.0 | Minor code improvements. |
||
1.6.0.0 | Major code refactoring. |
||
1.5.0.0 | Minor changes in documentation. |
||
1.4.0.0 | Minor comments. |
||
1.3.0.0 | Major code refactoring. |
||
1.2.0.0 | Minor updates |
||
1.1.0.0 | Added a technical report. |
||
1.0.0.0 |