问题标签 [gmm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
704 浏览

r - R gmm 包用于预测

我想尝试使用 R gmm 算法进行预测。

问题 #1:是否可以使用 gmm 进行预测?(手册中没有出现“预测”一词)

问题 #2:如果可以用 gmm 进行预测,那是怎么做的呢?

我正在寻找最简单的例子;例如,使用 svm 将通过以下方式完成:

问题 #3:我什至无法重现手册中提到的示例。第 24 页显示了代码:

但即使在安装包之后gmm,R 也不知道数据Finance

我错过了什么?

0 投票
0 回答
751 浏览

matlab - SIFT 费雪向量 GMM

我正在尝试在 Matlab 中使用 vl_feat 实现来提取 SIFT 特征,然后计算 GMM 模型以及 Fisher 向量。我有两个子集训练和测试来自 DTD 数据集的图像。

  1. 在每个拆分(训练和测试)上运行 vl_sift 并保存 128xN 特征
  2. 将每个包含 128xN 个特征的单元阵列应用于 vl_gmm 并获取每个特征 [平均协方差权重],然后将具有计算的 gmm 模型值的特征应用于每个特征的 vl_fisher。
  3. 制作主成分分析
  4. 全部放入SVM

我的问题是我在第 2 步中不知道如何将每个图像的特征值转换为适合 vl_gmm 和 vl_fisher。

这是我的代码:

还有另外两个问题:

  • 一个是 SIFT 在某些图像上失败,因此我拒绝了它们

  • 由于 SIFT 特征的不同维度,我取了最长的一个并将其他的用零填充到 1xN 特征向量。

0 投票
1 回答
706 浏览

python - 如何用 scipy/numpy 将一维向量表示为高斯曲线的总和?

UPD:谢谢,它有效。

我有一个表示直方图的一维向量。它看起来像几个高斯函数的总和: 在此处输入图像描述

curve_fit在 SO 上找到了示例代码,但不知道如何修改它以接收更多高斯元组(mu,sigma)。我听说“curve_fit”只优化一个函数(在这种情况下是一个高斯曲线)。

这个函数找到一个高斯曲线,而视觉上有 3 或 4 个: 在此处输入图像描述

拜托,你能建议一些 numpy/scipy 函数来实现1D vector格式的 gmm 表示([m1, sigma1],[m2, sigma2],..,[mN,sigmaN])吗?

0 投票
1 回答
1021 浏览

python - GMM - 对数似然不是单调的

昨天我使用期望最大化算法实现了一个 GMM(高斯混合模型)。

正如你所记得的,它将一些未知分布建模为高斯的混合,我们需要学习它的均值和方差,以及每个高斯的权重。

这是代码背后的数学(它并不复杂) http://mccormickml.com/2014/08/04/gaussian-mixture-models-tutorial-and-matlab-code/

这是我的代码:

问题是对数似然的行为很奇怪。我希望它是单调递增的。但事实并非如此。

例如,有 2000 个 8 个特征和 3 个高斯集群的示例,对数似然看起来像这样(30 次迭代) -

在此处输入图像描述

所以这是非常糟糕的。但是在我运行的其他测试中,例如一个包含 2 个特征和 2 个集群的 15 个示例的测试,对数似然是这样的 -

在此处输入图像描述

更好但仍然不完美。

为什么会发生这种情况,我该如何解决?

0 投票
0 回答
146 浏览

python - 使用 scikit learn 的 GMM 块对角协方差矩阵

我正在尝试实现 SCGMM,它在一个 GMM 中结合了空间和颜色特征。大多数论文都使用了解耦协方差矩阵。但是在 SCIKIT Learn Mixture Library 中,没有块对角协方差矩阵类型的选项。任何人都可以帮忙吗?

0 投票
1 回答
1173 浏览

python - Sklearn GMM 给出偏移的高斯峰

我正在将两个高斯的混合拟合到一维数据(超过 1000 个点)。

似乎两个高斯和的峰值相对于直方图的峰值向左移动。我认为这是由于我的数据在 0.5 左右的截止值。

绿线和红线是两个最合适的高斯线,黑色是两者的总和。这是情节: 阴谋

有什么方法可以确保峰值匹配,即使右侧缺少数据点?

我在用着 :

0 投票
1 回答
41 浏览

visual-c++ - 使用 vlfeat 时是否必须显式释放内存?

我正在使用 VLFeat 来训练高斯混合模型(GMM),我不确定在使用以下命令时是否应该手动释放内存:

我是否必须手动编写如下代码?

谢谢!

0 投票
1 回答
435 浏览

python - 使用 pyspark 的 GaussianMixtureModel 时出错(NegativeArraySizeException)

我正在探索 pyspark 并且在尝试拟合高斯混合模型时遇到了错误。我一直在尝试限制潜在错误的总数,并且我已经能够通过显着减少的向量数量(在这种情况下,只有 3 个)来复制错误。

这是我的代码:

这是回溯:

我一生都无法弄清楚发生了什么——我认为我创建的向量的大小不是负数,所以我不知道是什么引发了这个错误。我看过一些其他问题,但没有什么真正有帮助的,所以任何建议都将不胜感激!

0 投票
0 回答
484 浏览

machine-learning - 如何使用 Gesture Recognition Toolkit (GRT) 的接口来训练(HMM 模型)并从已经创建的数据集中进行测试?

我目前正在做一个项目——使用惯性传感器进行空中写作。基于从放置在手指上的传感器接收到的 6-DOF(自由度)、加速度计和陀螺仪值,系统应该识别使用手指做出的手势——基本上是字符('a' 到 'z')。我遇到了Gesture Recognition Toolkit (GRT),它在最近的一次更新中有一个新界面。那么,有人可以帮我解释如何训练(使用 HMM)和使用新界面中的工具包测试输出吗? 我是机器学习的新手,因此我不完全了解从哪里开始。这个工具包似乎是通往我打算实现的输出的捷径,即识别在空中书写的字符。我为字符“a”、“b”、“c”和“d”创建了一个惯性传感器值数据库。现在我想知道如何使用这个工具包完成机器学习部分。谁能帮我?

0 投票
1 回答
46 浏览

r - R:使用 gmm 包的索引超出范围

我是 Stackoverflow 的新手,这篇文章可能非常基础。使用“gmm”包时出现意外的“index out of list”错误。更具体地说,我正在使用该包的凝胶函数,我需要提供参数“g”,它是一个返回矩阵的函数。我传递给“g”参数的函数本身可以完美地工作,但不能作为凝胶函数的参数。我知道有非常密切相关的问题: https ://stackoverflow.com/search?q=index+out+of+bounds+r 但是这些都没有帮助我解决我面临的问题。我附上了一个可重现的例子。

提前致谢。