高斯混合模型的变分贝叶斯推理

版本1.0.0.0(5.38 KB)由 莫陈
GMM的变分贝叶斯方法(平均场)可以自动确定分量数

7.9 k下载

更新2016年3月7日

查看许可协议

这是高斯混合模型的变分贝叶斯推理方法。与EM算法(最大似然估计)不同,它可以自动确定混合成分的数量k。请尝试以下代码进行演示:
关闭所有;清晰;
D = 2;
K = 3;
N = 2000;
[X,z] = mixGaussRnd(d,k,n);
plotClass (X, z);
M = floor(n/2);
X1 = X(:,1:m);
X2 = X(:,(m+1):end);
% VB拟合
[y1, model, L] = mixGaussVb(X1,10);
图;
plotClass (X1, y1);
图;
情节(左)
预测测试数据
[y2, R] = mixGaussVbPred(model,X2);
图;
plotClass (X2, y2);
该数据集由3个集群组成。您只需要设置一个数字(比如10),这个数字大于集群的固有数量。算法会自动找到合适的k。
算法的详细描述可以在参考文献中找到。
模式识别和机器学习作者:Christopher M. Bishop (P.474)

根据请求,我提供了样本外推断的预测函数。

此函数现在是PRML工具箱的一部分(//www.tatmou.com/matlabcentral/fileexchange/55826-pattern-recognition-and-machine-learning-toolbox).

引用作为

莫陈(2023)。高斯混合模型的变分贝叶斯推理(//www.tatmou.com/matlabcentral/fileexchange/35362-variational-bayesian-inference-for-gaussian-mixture-model), MATLAB中央文件交换。检索

MATLAB版本兼容性
使用R2016a创建
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!
版本 发表 发布说明
1.0.0.0

增加了预测功能,大大简化了代码