问题标签 [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 回答
89 浏览

matlab - 从混合正态分布生成向量

我将具有从混合正态分布生成向量的功能。首先,我已经完成了从以下生成向量的功能N(mu, Sigma)

我可以使用它 从二维空间BSXgen(10,2,[0;0],diag([1 1]))生成向量。10

接下来,我将从混合正态分布中生成数据。我在做什么:

我对吗?我真的从混合物中生成数据吗?我不确定,所以我会非常感谢任何意见。

0 投票
3 回答
600 浏览

r - 从 R 中具有概率的两个分布中绘制

我试图以 100000 次的概率从两个不同的分布中提取。不幸的是,我看不出我的 for 循环有什么问题,但是,它只添加了 1 个值,simulated_data而不是所需的 100,000 个值。

问题1:我该如何解决这个问题?

问题 2:有没有一种更有效的方法,我不必遍历列表中的 100,000 个项目?

0 投票
1 回答
112 浏览

r - 尝试为 3 分量正态混合分布创建函数

我正在尝试创建一个 R 函数来从具有 3 个不同参数的 3 分量正态混合分布生成样本,但我不断收到错误消息。

这是我当前的代码

0 投票
1 回答
2830 浏览

python - 使用 sklearn 在 Python 中初始化参数高斯混合

我正在努力用 sklearn 做一个高斯混合,但我认为我错过了一些东西,因为它肯定不起作用。

我的原始数据如下所示:

我想做一个包含 3 个成分 = 3 个基因型 (AA|AB|BB) 的高斯混合。我知道每种基因型的权重、每种基因型的对数比平均值以及每种基因型的强度平均值。

我保留列 LogRatio 和 Strength 并创建一个 NumPy 数组。

然后我测试了来自 sklearn v0.18 的混合函数 GaussianMixture 并尝试了来自 sklearn v0.17 的函数 GaussianMixtureModel (我仍然没有看到区别,也不知道使用哪一个)。

这是我得到的,这是一个很好的结果,但它每次都会改变,因为每次运行初始参数的计算方式都不同

在此处输入图像描述

我想在 gaussianMixture 或 GMM 函数中初始化我的参数,但我不明白我必须如何格式化我的数据:(

0 投票
2 回答
1363 浏览

mixture-model - Stan 中的混合模型 - 矢量化

我现在正在学习 Stan,想实现一个简单的混合模型。

在参考手册(stan-reference-2.14.0)中已经有一个解决方案:

下一页描述了外部循环的矢量化是不可能的。但是,我想知道内部循环的并行化是否仍然存在。

所以我尝试了以下模型:

...并且该模型做出错误的估计(与原始模型相反)。

我想知道,我对模型规范的理解是错误的。我想了解语法提供的区别(以及vector[K]和之间的区别real[K]),也许对 Stan 有更深入的了解。

0 投票
4 回答
4550 浏览

python - GaussianMixture 使用组件参数初始化 - sklearn

我想使用sklearn.mixture.GaussianMixture来存储高斯混合模型,以便以后可以使用它来生成样本或使用score_samples方法在样本点处生成值。这是一个示例,其中组件具有以下权重、均值和协方差

然后我将混合物初始化如下

最后,我尝试根据导致错误的参数生成样本:

据我了解,GaussianMixture 旨在使用混合高斯拟合样本,但有没有办法为其提供最终值并从那里继续?

0 投票
1 回答
446 浏览

scikit-learn - sklearn BayesianGaussianMixture 基于多个数据点的聚类分配

我正在尝试使用 sklearn.mixture.BayesianGaussianMixture 来拟合一组轨迹。

每个轨迹由一组数据点组成,例如

其中t_i是第 i 个轨迹,(x_ik, y_ik)是轨迹上的第 k 个点。例如,x_ik 可以表示机器人在时间步 k 的状态,y_ik 可以表示机器人采取的动作。每个 GP 组件都是从 x_ik -> y_ik 的映射。这是使用 sklearn 学习 GP 的标准。

但是,当您想先学习具有狄利克雷过程的高斯混合模型时,您必须决定何时添加新的 GP 组件

BayesianGaussianMixture类仅为您提供基于单个数据点进行集群分配的接口。换句话说,一个新的数据点是否属于一个新的集群。

我感兴趣的是:给出一组轨迹,其中每个轨迹可能包含很多数据点。有没有办法根据轨迹进行集群分配?即给定一个新的轨迹,判断它是否属于一个新的集群。

0 投票
0 回答
386 浏览

bayesian - STAN - 使用采样语句与直接增加对数概率时得到不同的结果

我试图通过使用'target += bernoulli_logit_lmpf(y | alpha)'功能直接增加对数概率来在stan中实现模型。完整模型如下:

我的理解是,这应该产生与下面的抽样语句相同的结果:

然而,这两个模型产生了完全不同的结果(即使在 R 和 Stan 中使用相同的种子)。我认为问题可能在于我如何实现直接增量,所以我也尝试了以下模型。

但是,所有三种模型都会产生不同的结果。有趣的是,直接增量的运行速度大约是采样语句的两倍,但似乎没有给出正确的结果。我需要使用直接增量方法,因为我最终会将这个模型转换为混合模型,而据我所知,混合模型需要直接更新对数概率。对此的任何帮助将不胜感激!

问候,蒂姆

0 投票
1 回答
591 浏览

r - 模拟每两个变量之间具有不同混合依赖结构的混合数据?

我想模拟一个混合数据,比如 3 维数据。我想在每两个变量之间有 2 个不同的组件。

也就是说,模拟混合数据(V1 和 V2),其中它们之间的依赖关系是两个不同的正常分量。然后,在 V2 和 V3 之间还有另外两个正常分量。所以,我将有 3d 数据,第一个和第二个变量之间的依赖关系是两个法线的混合。第二个和第三个变量之间的依赖关系是另外两个不同成分的混合。

另一种解释我的问题的方法:

假设我想生成如下混合数据:

1- 0.3 normal(0.5,1) + 0.7 normal(2,4) # 因此在这里我将得到一个由两个不同的法线(混合模型的两个分量)生成的二元混合数据,混合器权重之和为 1。

然后,我想得到另一个变量,如下所示:

2- 0.5 normal(2,4) # 这是第一次模拟的第二个变量 + 0.5 normal(2,6)

所以在这里,我得到了 3d 模拟混合数据,其中 V1 和 V2 是由两个不同的混合分量生成的,而 V2 和 V3 是由另一个不同的混合分量生成的。

这是在 r 中生成数据的方法:(我相信它不会生成双变量数据)

因此,如果我们生成混合双变量数据(两个变量),那么如何将其扩展为具有 4 或 5 个变量,其中 V1 和 V2 是从两个不同的法线生成的(它们之间的依赖结构是两个法线的混合),然后 V3 将从另一个不同的正常生成,然后与 V2 结合。也就是说,当我们绘制 V2 ~ V3 时,我们会发现它们之间的依赖结构是两个法线的混合体,依此类推。

0 投票
1 回答
277 浏览

r - 我们如何使用 MXNet 创建混合密度网络?

我正在评估 R 中的 MXNet,我想对混合密度网络进行建模。可以在此处找到 Tensorflow、Keras 和 Edward 的示例:http: //cbonnett.github.io/MDN_EDWARD_KERAS_TF.html

所示示例是正态分布的混合。怎么能用 MXNet 做同样的分析呢?