在MATLAB中可视化高斯混合模型聚类

时间:2012-09-27 17:55:04

标签: matlab plot cluster-analysis classification visualize

我必须编写一个分类器(高斯混合模型)来用于人类行为识别。我有4个视频数据集,每个数据包含12个我想要识别的动作。我选择其中3个作为训练集,其中1个作为测试集。对于每个帧,我提取了907个我观察到的特征。在我在训练集上应用GM模型之前,我在其上运行PCA。所以我只考虑50个组件。

我构建了GM模型,每个动作都有一个集群。

gm = gmdistribution.fit(data, cluster_num, 'Options', options, 'CovType','diagonal','Regularize', 1e-10, 'SharedCov', true);

现在我希望有一个视觉反馈,以了解群集是否运作良好或数据是否被错误分类。

有可能有类似的东西吗? enter image description here

1 个答案:

答案 0 :(得分:11)

我并不接近我为编写这些代码所编写的代码,但我记得哪些函数值得一看。

plot_gaussian_ellipsiod开始。您可以进一步添加gmdistributionezcontour,最终得到以下内容:

enter image description here

或者,对于3d数据,您可以使用plot3plot_gaussian_ellipsiod

enter image description here