高斯混合模型sklearn起始先验值

3

我有一个混合模型:

gm = mixture.GaussianMixture(
                n_components=3,
                covariance_type="tied",
                weights_init=[w1,w2,w3],
                means_init=[m1,m2,m3],
                random_state=0).fit(datas)

但是,聚类的结果并不完美,因此我从我的初始数据中计算出了3个先验条件来改善聚类。我希望在高斯混合模型的EM算法中使用这些先验条件作为初始起点。

初始均值:它们是起始点吗?我能否用我的新先验条件替换它们,还是说这是其他东西?

我看到:

sklearn.mixture.BayesianGaussianMixture 

但是,它看起来非常不同,就像我无法初始化我的权重,只有先前的权重,我不知道是否是相同的事情(我不是统计学专家...),而且有太多我不理解的选项...

我该如何将我的新先验作为高斯混合中EM算法的起始点使用?

感谢任何帮助。

1个回答

2

一位统计学家帮我回答了我的问题,它是initial_means,这些是EM算法使用的起始点。 我只需要在GaussianMixture函数中给出我的新先验概率,无需使用BayesianGaussianMixture


你是用什么方法来设置initial_means的?我在考虑将sklearn中的KernelDensity用于平滑数据点,然后使用scipy中的find_peaks函数,并将其作为initial_means。你是怎么解决的呢?如果你能与我们分享一下,我会非常感激。谢谢。 - Eduardo Gomes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接