【问题标题】:gaussian mixture model probability matlab高斯混合模型概率matlab
【发布时间】:2013-06-11 06:29:46
【问题描述】:

我有一个尺寸为 50x100000 的数据。 (100000 个特征,每个特征的维度为 50)。

我想使用这些数据拟合一个高斯混合模型。我使用了以下代码。

               obj = gmdistribution.fit(X',3);

我需要的是,当我给出一个新数据 Y 时,我应该能够得到似然概率 $p(Y|\theta)$,其中 $\theta$ 是高斯混合模型参数。

我使用以下代码获取概率值。

               P = pdf(obj,X');

但是我得到的值非常低,都大约为 0。这是怎么回事?我怎样才能得到合适的概率值?

【问题讨论】:

  • 当你说你的数据是 50x100000 维度时,你的意思是你有 100000 个长度为 50 的向量,并且你正在寻找多元正态分布的混合,即每个分布混合是长度为 50 的向量的多元正态分布?

标签: matlab probability gaussian probability-theory mixture-model


【解决方案1】:

在一维中,高斯分布的pdf最大值为1/sqrt(2*PI)。所以在 50 个维度中,最大值将是 1/(sqrt(2*PI)^50),大约是 1E-20。所以 pdf 的值都将是那个数量级,或者更小。

【讨论】:

  • 感谢您的回复。这里的 PI 是什么?我打算建立一个分类器来拒绝概率值中的异常值。我正在根据一类数据学习这种分布。就我而言,如何根据概率值构建分类器?
  • PI 是 3.14159 等。 sqrt 是平方根函数。我认为我可能已经回答了您最初的问题,因此如果您同意,您可能会考虑将此答案标记为有用和/或已接受。如果您发布另一个与如何构建分类器相关的问题,那么如果可以的话,我一定会看看并发布您的新问题的答案。仅供参考,我总是查看所有带有probability 标签的问题。
  • 感谢您的回复。我在stackoverflow.com/questions/17113387/… 发布了一个新问题,希望得到您的回复。 :-)
猜你喜欢
  • 2014-11-19
  • 2014-01-14
  • 1970-01-01
  • 2021-09-30
  • 1970-01-01
  • 2020-04-06
  • 2015-10-16
  • 2018-04-08
  • 2023-03-24
相关资源
最近更新 更多