问题标签 [mixture-model]

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 回答
5200 浏览

python - scikit-learn GMM 产生正对数概率

我正在使用 python scikit-learn 包中的高斯混合模型来训练我的数据集,但是,当我编码时,我发现

-- G=mixture.GMM(...)

-- G.fit(...)

-- G.score(求和特征)

得到的对数概率是正实数……这是为什么呢?对数概率不能保证为负吗?

我得到它。高斯混合模型返回给我们的是对数概率“密度”而不是概率“质量”,因此正值是完全合理的。

如果协方差矩阵接近奇异,则 GMM 将不会表现良好,通常意味着数据不适用于此类生成任务

0 投票
0 回答
1309 浏览

c++ - Opencv:使用高斯混合模型 (GMM) 获得期望最大化 (EM)

我正在尝试使用 GMM 来找到视频帧中不同颜色的期望最大化。然后据此,我将确定哪个是主色。

为此,我的问题是如何执行基于 GMM 的 EM 来获取和比较对不同颜色的期望?

0 投票
1 回答
472 浏览

matlab - 用于目标检测的实时高斯混合模型实现

我正在研究实时视频压缩。我正在用 MATLAB 对其进行建模。我需要稍后在 5832MIPS、729MHz 的 DSP 处理器上实现它。

在 DSP 处理器上实现高斯混合模型是否可行,或者是否有更好的目标检测算法?

提前致谢

0 投票
3 回答
183 浏览

machine-learning - 房屋区域的 ML / 密度聚类。每个维度上的两种成分或多种混合物

我试图自学 ML 并遇到了这个问题。非常感谢该领域更有经验的人的帮助!

假设我有三个向量,其中包含浴室、客厅和厨房等房屋隔间的区域。数据包括大约 70,000 所房屋。每个单独向量的直方图显然具有双峰分布的证据,例如双分量高斯混合。我现在想要某种 ML 算法,最好是无监督的,它可以根据这些属性对房屋进行分类。说:大浴室,小厨房,大客厅。

更具体地说,我想要一种算法来为每个双峰分布向量选择最佳可能的分离阈值,比如大/小厨房(这可以是二元的,因为我们假设有双峰的证据),对其他人做同样的事情并对数据进行聚类. 理想情况下,这将带有一些信心措施,以便我可以检查处于中间状态的房屋……例如,一栋带有明显大厨房的房屋,但其浴室将接近大/小浴室的阈值区域/边界例如,放在“大厨房和大浴室”列表的底部。由于这个原因,首先决定一个阈值(用不太可能的 FDR 拟合高斯),折叠数据然后聚类是不可取的。

关于如何进行的任何建议?我知道 R 和 python。

非常感谢!!

0 投票
1 回答
4411 浏览

r - 高斯和伽马分布的混合

我正在寻找 R 中的一些脚本/包(Python 也会这样做),以从高斯和伽马分布的混合中找出分量分布参数。到目前为止,我已经使用 R 包“mixtools”将数据建模为高斯混合,但我认为它可以更好地由 Gamma 加高斯建模。

谢谢

0 投票
1 回答
478 浏览

r - 双变量混合正态-对数正态模型的参数估计

我必须创建一个混合了正态分布和对数正态分布的模型。要创建它,我需要通过最大化对数似然函数来估计 2 个协方差矩阵和混合参数(总共 = 7 个参数)。这种最大化必须由 nlm 例程执行。

当我使用相对数据时,均值已知且等于 1。

我已经尝试过一维(使用一组相关数据)并且效果很好。然而,当我介绍第二组相关数据时,我得到了不合逻辑的相关结果和大量警告消息(总共 25 条)。

为了估计这些参数,我首先使用 2 个命令 dmvnorm 和 dlnorm.plus 定义了对数似然函数。然后我分配参数的起始值,最后我使用 nlm 例程来估计参数(参见下面的脚本)。

有人知道我的模型有什么问题,或者我应该如何在二维中找到这些参数?

非常感谢您花时间看我的问题。

问候,

格拉迪斯·赫佐格

0 投票
1 回答
1070 浏览

matlab - 高斯混合模型概率matlab

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

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

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

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

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

0 投票
1 回答
2238 浏览

pymc - 如何在 PyMC 中模拟 3 个法线的混合?

CrossValidated 上有一个关于如何使用 PyMC 将两个正态分布拟合到数据的问题。Cam.Davidson.Pilon的答案是使用伯努利分布将数据分配给两个法线之一:

现在我的问题是:如何处理三个法线?

基本上,问题是您不能再使用伯努利分布和 1-伯努利分布。但是那怎么办呢?


编辑:根据 CDP 的建议,我编写了以下代码:

具有以下采样过程的迹线看起来也不错。解决了!

0 投票
2 回答
1381 浏览

mcmc - 使用 PyMC 拟合 3 个法线:简单数据的错误收敛

我编写了一个 PyMC 模型,用于使用(类似于这个问题中的那个)将 3 个法线拟合到数据中。

我从中采样数据的分布明显重叠,但有 3 个明显不同的峰(见下图)。将 3 个法线拟合到此类数据应该是微不足道的,我希望它能够在 99% 的 MCMC 运行中产生我从 (-10, 0, 10) 采样的平均值。 来自 3 个正态分布的数据 我期望的结果示例。这发生在十分之二的案例中。 MCMC 跟踪产生良好的拟合 10 个案例中有 6 个发生意外结果的示例。这很奇怪,因为在 -5 上,数据中没有峰值,所以我不能真正达到采样可能陷入的严重局部最小值(从 (-5,-5) 到 (-6,-4)应该提高合身性,等等)。 MCMC 跟踪产生不合适的结果

(自适应 Metropolis)MCMC 采样在大多数情况下卡住的原因可能是什么?有哪些可能的方法来改进它没有的抽样程序?

所以运行确实收敛,但并没有真正探索正确的范围。


更新: 使用不同的先验,我在 5/10 中得到正确的收敛(大约第一张图片),在另一个 5/10 中得到错误的收敛(大约第二张图片)。基本上,更改的行是下面的行,并删除了 AdaptiveMetropolis 步骤方法:

0 投票
2 回答
1213 浏览

scikit-learn - 将 GMM 拟合到 scikit-learn 中的 3D 直方图

scikit-learn 中的混合模型代码适用于列出单个数据点,但是如果您有直方图怎么办?也就是说,我对每个体素都有一个密度值,我希望混合模型来近似它。这可能吗?我想一种解决方案是从此直方图中采样值,但这不是必需的。