【问题标题】:Gaussian Mixture Model Components高斯混合模型组件
【发布时间】:2012-05-08 17:55:24
【问题描述】:

我正在尝试使用 matlab 将我的数据拟合到高斯混合模型,但问题是我无法确定执行此操作的最佳组件数量,任何人都可以帮忙!!!此外,如果已经有构建函数来获得最佳数量,请提供帮助。

【问题讨论】:

  • 这是经典的“模型选择”问题。没有唯一的解决方案,只有一些启发式方法可以帮助您选择。检查 YBE 写的链接。你也可以搜索“模型选择”论文,你会得到很多..

标签: matlab cluster-analysis gaussian pattern-recognition mixture-model


【解决方案1】:

在 Matlab 中,我们已经有 2 个标准:实现了 AIC 和 BIC。适合 GMM

查看代码 sn-p: SRC: http://www.mathworks.in/help/stats/gmdistribution.fit.html

AIC = zeros(1,4);

obj = cell(1,4);

 `for k = 1:4`

      `obj{k} = gmdistribution.fit(X,k);`

      `AIC(k)= obj{k}.AIC;`

  `end`

[minAIC,numComponents] = min(AIC);

numComponents

【讨论】:

  • 好吧,aic 根本不起作用,但 score 可以。 score 计算给定数据 X 的每个样本平均对数似然(使用 sklearn GMM)。
【解决方案2】:

对找到高斯模型混合的最佳分量数量的不同方法的良好评论是:

  • 评估混合模型中的组件数量:A Oliveira-Brochado 和 FV Martins 的评论 (2005):available here
  • McLachlan 和 Peel (2000) 的有限混合模型第 6 章

PS:我在 Matlab 中没有解决您的问题的方法,但 BIC 标准在 R 包中实现 mclust

【讨论】:

    【解决方案3】:

    无限高斯混合模型 (www.gatsby.ucl.ac.uk/~edward/pub/inf.mix.nips.99.pdf) 可以自动学习聚类的数量。

    这个页面(http://www.cs.brown.edu/~fwood/code.html)有一些实现它的matlab代码(我没有尝试过代码)。

    【讨论】:

      猜你喜欢
      • 2021-09-30
      • 2023-03-24
      • 2014-01-09
      • 2013-06-11
      • 2017-02-26
      • 2014-08-02
      • 2018-07-19
      • 2020-05-29
      • 2014-10-08
      相关资源
      最近更新 更多