O.r*_*rka 6 python statistics machine-learning bayesian scikit-learn
我对"Dirichlet过程作为聚类数量的先验分布的无限混合模型"的理解是,当聚合到一定数量的聚类时,聚类的数量由数据决定.
这个R Implementation https://github.com/jacobian1980/ecostates以这种方式决定集群的数量.虽然,R implementation使用Gibbs采样器,我不确定是否会影响这一点.
令我困惑的是n_components参数.n_components: int, default 1 :
Number of mixture components. 如果组件的数量由数据和Dirichlet过程确定,那么这个参数是什么?
最终,我想得到:
(1)每个样本的聚类分配;
(2)每个聚类的概率向量; 和
(3)每个样本的似然/对数似然.
看起来(1)是predict方法,(3)是score方法.但是,(1)的输出完全取决于n_components超参数.
我的道歉,如果这是一个幼稚的问题,我很新的贝叶斯编程,发现有Dirichlet Process在Scikit-learn,我想试试.
这是文档: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)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3589 次 |
| 最近记录: |