问题标签 [mixture]

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 投票
0 回答
307 浏览

python - 高斯混合的密度估计与密度图不同

我有一个数据集x,它是作为四种不同高斯混合的样本生成的:

通过seaborn.kdeplot(x)数据集的核密度图x产生:

在此处输入图像描述

高斯混合的“真实”密度图——然而——一个完全不同的图:

将样本的核密度估计与实际密度一起绘制会产生两个完全不同的图:

在此处输入图像描述

密度和密度估计应该非常相似,特别是当我的示例中有这么多样本时。

我在这里做错了什么?

0 投票
0 回答
171 浏览

r - 在R中的for循环中从多个分布中生成值集

我想制作一组来自 3 个不同分布的新值的向量/数据列表,两个是lnorm,一个是混合均匀分布。我需要将每个分布的生成值加总为一个值(v1+v2+v3),以便将分布拟合到 3 个分布的总和。

我的代码没有将分布总和汇总到一个数据集中(带有函数:列表),我不确定代码的 UnivarMixingDistribution 函数部分是否有效?我希望它生成一个值并将其保存到 xv3 并将其添加到另外两个值中。

显示的错误是:

代码:

0 投票
1 回答
354 浏览

r - 2 个均匀随机变量的混合

我需要帮助创建我使用的 1/3 Unif (0,7) 和 2/3 Unif(9,10) 的混合物

但我不确定它是否好,因为在绘制 X 时,它返回一个没有任何意义的散点。

在此先感谢您的帮助 !

0 投票
1 回答
5964 浏览

python - 在 python sklearn 中对一维数组使用高斯混合

我想使用高斯混合模型来返回类似于下图的东西,除了正确的高斯。

我正在尝试使用 python sklearn.mixture.GaussianMixture,但我失败了。对于任何给定的 x 值,我可以将每个峰值视为直方图的高度。我的问题是:我是否必须找到一种方法将此图转换为直方图并删除负值,或者有没有办法将 GMM 直接应用于此数组以生成红色和绿色高斯?

在此处输入图像描述

0 投票
1 回答
36 浏览

python - 用于混合/混合物的python

我有 10 个具有以下特性的汽油储罐: https ://i.stack.imgur.com/B4DPv.png

我希望能够为每个 P1-P13 属性创建具有特定属性范围的 5000gal 混合物。

前任:

P1:45-50%;P2:50-150g;P3:<1g;P4:<0.2%;P5:<0.2%;P6:<1.5%;P7:2-4%;P8:<0.3%;P9:8-12%;P10:2-4%;P11:<0.8%;P12:<50ppm;P13:30-33%;

我正在尝试开发一个 PYTHON 代码,该代码将帮助我查看 50 加仑不同质量的所有可能组合,以实现所需的混合。

您可以将油箱体积四舍五入到最接近的 10 以简化操作

任何指导都会很棒!

到目前为止,我已经使用了 itertools 组合的变量来创建所有可能的混合,然后过滤它们。然而,这需要永远。以下是我一直用来寻找所有可能的 50 加仑组合来制作 5000 加仑混合物的方法。

谢谢!

0 投票
0 回答
51 浏览

r - Flexmix R:具有不同分量变量的混合回归

我正在使用 R 中的 flexmix 包设置以下回归模型的示例混合:model = flexmix(y~ x1 + x2 +x3, data = Data, k=2, control = list(verb = 5, iter = 1000))如何决定将一个变量放入其中一个组件中,以便y~x1+x3在组件 1 和y~x2+x3组件 2 中混合?

0 投票
0 回答
300 浏览

tensorflow - 如何为 VAE 实现高斯混合?

我觉得我真的不知道我在做什么,所以我会描述我认为我在做什么,我想做什么以及失败的地方。

给定一个正常的变分自编码器:

我想我在做什么:让神经网络找到一个“均值”和“标准差”值,并用它来创建正态分布(高斯)。从该分布中采样并将其用于解码器。换句话说:学习编码的高斯分布

现在我想对混合高斯做同样的事情。

这对我来说似乎相对简单,只是它失败并出现以下错误:

形状 () 和 (?,) 不兼容

这似乎来自probs没有批量维度(我不认为它需要那个)。

我认为这probs定义了组件之间的概率。

如果我定义一个probs也有批次维度的,我会得到以下神秘错误,我不知道它应该是什么意思:

维度 -1796453376 必须 >= 0

我通常会误解一些概念吗?

或者我需要做些什么不同的事情?

0 投票
1 回答
531 浏览

matlab - 绘制归一化均匀混合物

我需要重现下面的归一化密度 p(x),但给出的代码不会生成归一化 PDF。

x 的 p 的图

如果我通过简单地按它们的总和缩放它们来计算归一化混合 PDF,与上面的原始图相比,我有不同的归一化概率。

0 投票
0 回答
218 浏览

python - tensorflow/keras 中混合密度网络的形状不兼容问题

在通过 keras(使用 tensorflow 后端)计算混合密度网络时,我遇到了一个问题。这个 MDN 的目标是学习图像的潜在表示(为了在自动编码器中实现 MDN 的预测)。然后,我想将我的输入图像建模为多元正态分布,并作为网络输出获得一个 mu 和 sigma 向量(每个维度为 64),以及一组 N 个权重 alpha(其中 N 是混合物中的分量数)。如果我认为每个参数的输出形状为 64,一切正常,但获得比组件更多的 alpha 因子(在我的情况下是 64 维 alpha)是没有意义的。当我尝试指定 alpha 以获得与 mu 和 sigma 不同的形状时,会出现一些问题。

为了在 tensorflow 的 MixtureSameFamily 模块中实现协方差矩阵,我考虑了 sigma 向量的对角矩阵。然后,我在许多论坛上发现了这个损失函数(负对数似然),并尝试将其适应我的问题:

如果我尝试向我的网络提供一些数据并对其进行编译,我总是会遇到以下错误:

64 是向量的维度,2 是批量大小。使用 1 的批量大小是可行的,但给了我一些 NaN 作为损失。

以下是 alpha、mu 和 sigma 层的构建方式:

因此,问题是:是否有可能通过 tensorflow 做到这一点?有没有其他人在这里使用这种网络,可以向我解释如何处理损失函数?

亲切的问候,

阿德里安

0 投票
1 回答
272 浏览

r - 如何在 R 中找到真正的混合密度?

我不明白如何找到真实混合密度的图。在下文中,我提供了为正常混合创建函数的代码。而且我了解如何创建每个单独的密度图,但我不知道如何找到真实的密度。

模拟数据