- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我对“使用 Dirichlet 过程作为集群数量的先验分布的无限混合模型”的理解是,集群的数量由数据决定,因为它们会收敛到一定数量的集群。
此R 实现
https://github.com/jacobian1980/ecostates以这种方式决定集群的数量。尽管 R 实现
使用了 Gibbs 采样器,但我不确定这是否会影响这一点。
令我困惑的是 n_components
参数。 n_components: int, default 1 :
如果成分的数量是由数据和狄利克雷过程决定的,那么这个参数是什么?
混合成分的数量。
最终,我试图获得:
(1) 每个样本的聚类分配;
(2) 每个集群的概率向量;和
(3) 每个样本的似然/对数似然。
看起来 (1) 是 predict
方法,(3) 是 score
方法。然而,(1) 的输出完全依赖于 n_components
超参数。
如果这是一个天真的问题,我很抱歉,我对贝叶斯编程还很陌生,并且注意到 Scikit-learn
中有 Dirichlet Process
我想尝试一下.
这是文档: http://scikit-learn.org/stable/modules/generated/sklearn.mixture.DPGMM.html#sklearn.mixture.DPGMM
这是一个用法示例: http://scikit-learn.org/stable/auto_examples/mixture/plot_gmm.html
这是我天真的用法:
from sklearn.mixture import DPGMM
X = pd.read_table("Data/processed/data.tsv", sep="\t", index_col=0)
Mod_dpgmm = DPGMM(n_components=3)
Mod_dpgmm.fit(X)
最佳答案
@maxymoo 在评论中提到,n_components
是一个截断参数。
在与 sklearn 的 DP-GMM 中的 Stick-breaking 表示相关的中餐馆过程的上下文中,新数据点以 |k 的概率加入现有集群
并开始一个概率为 k
|/n-1+alphaalpha/n-1 + alpha
的新集群。该参数可以解释为狄利克雷过程的浓度参数,它会影响最终的簇数。
与使用 Gibbs 采样的 R 实现不同,sklearn 的 DP-GMM 实现使用变分推理。这可能与结果的差异有关。
可以找到温和的狄利克雷过程教程 here .
关于python - 如何在 Scikit-learn 中使用 `Dirichlet Process Gaussian Mixture Model`? (n_components?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39089637/
我需要从混合分布生成样本 40% 样本来自高斯分布(mean=2,sd=8) 20% 的样本来自 Cauchy(location=25,scale=2) 40% 的样本来自高斯分布(平均值 = 10,
我在 Python 中使用 sklearn.mixture.GMM,结果似乎取决于数据缩放。在下面的代码示例中,我更改了整体缩放比例,但没有更改维度的相对缩放比例。然而,在三种不同的缩放设置下,我得到
我正在使用 sklearn.mixture.GMM 将两条高斯曲线拟合到一组数据,然后将其与数据直方图重叠(数据干扰是 2 条高斯曲线的混合)。 我的数据是 float 列表,这是我正在使用的代码行:
一般来说,我是 scikit-lear 和 GMM 的新手...我对 python (scikit-learn) 中的高斯混合模型的拟合质量有一些疑问。 我有一组数据,您可以在 DATA HERE 找
我这里有一个示例代码: unsigned char *m_fbytes; m_fbytes = (unsigned char*)malloc(m_iByteLen1FrameDecod
我从 DPGMM 得到的结果不是我所期望的。例如: >>> import sklearn.mixture >>> sklearn.__version__ '0.12-git' >>> data = [
我正在尝试运行以下 Python 项目: https://github.com/huanghe314/Text-Independent-Speaker-Indentification-System 这
我想运行这个关于一维高斯混合示例的示例:http://www.astroml.org/book_figures/chapter4/fig_GMM_1D.html 但是我一直有这个错误: fro
我正在尝试解决以下问题 codechef problem使用标度。问题陈述如下: Harry Potter has n mixtures in front of him, arranged in a
我正在使用 scikit-learn将多元高斯混合模型拟合到某些数据(效果很好)。但是我需要能够根据一些变量获得一个新的 GMM,而 scikit 工具包似乎无法做到这一点,这让我感到惊讶,因为它看起
想知道是否可以在 Angular 中创建动态 Assets 标签,如果可以,如何创建。 背景是这样的:我一直在使用Mixture.io模板并已经习惯了它提供的易用性和灵 active 。我现在正在开发
我有一个已建立的模型,我正在尝试将其扩展到 iOS 应用。 最终我想在服务器上训练模型,然后能够在设备上对特征向量进行评分,而不是每次都调用服务器。 最佳答案 是的,这是可能的,但它涉及……数学。它将
拟合高斯混合模型(X-Y数据集)后,如何获取每个分布的参数?例如每个分布的均值、标准差、权重和角度? 我想我可以找到代码 here : def make_ellipses(gmm, ax):
我正在尝试使用 GaussianMixture 模型进行图像分割,所以我使用了 2 个组件,协方差矩阵 type="full"并尝试使用 anaconda 附带的 Spyder3.6 运行。这是代码:
我对“使用 Dirichlet 过程作为集群数量的先验分布的无限混合模型”的理解是,集群的数量由数据决定,因为它们会收敛到一定数量的集群。 此R 实现 https://github.com/jacob
现在我正在尝试教授 g++ 编译器线性代数,以便 g++ 可以重写像 (matrix * vector)(index) 这样的表达式作为计算表达式的循环。基本上这就是我对 the last artic
我是一名优秀的程序员,十分优秀!