gaussian_mixture_mo​del.m

版本 1.1.0.0 (20.8 KB) 作者: Matthew Roughan
Estimate the parameters of a 1D Gaussian Mixture Model using the EM algorithm.
7.0K 次下载
更新时间 2009/10/28

查看许可证

A Gaussian mixture model means that each data point is drawn (randomly) from one of C classes of data, with probability p_i of being drawn from class i, and each class is distributed as a Gaussian with mean standard deviation mu_i and sigma_i. Given a set of data drawn from such a distribution, we seek to estimate these unknown parameters.

The algorithm used here for estimation is EM (Expectation Maximization). Simply put, if we knew the class of each of the N input data points, we could separate them, and use Maximum Likelihood to estimate the parameters of each class. This is the M step. The E step makes (soft) choises of (unknown) classes for each of the data points based on the previous round of parameter estimates for each class.

Implicitly the data is classfied (or clustered) into the different classes, whose parameters are estimated.

The current code only works for 1D data, and is primarily of use in illustrating the idea about mixture models and EM, but it would be pretty easy to generalize to higher dimensions.

引用格式

Matthew Roughan (2024). gaussian_mixture_model.m (https://www.mathworks.com/matlabcentral/fileexchange/24867-gaussian_mixture_model-m), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2007a
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Statistics and Machine Learning Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.1.0.0

Minor fix to improve the initial variance estimates so it can deal with widely spread data.

1.0.0.0