GMM群集是否可以包含空群集?

时间:2018-02-27 10:11:41

标签: algorithm machine-learning

假设我们想要在2个点上训练一维GMM聚类算法:0,2,使用2个聚类。 假设初始化是: 高斯1:均值1,方差1。 高斯2:平均值5,方差1。

运行算法后,我们会得到什么高斯群集?第二高斯是否为空而第一高斯包含2个点?

谢谢。

1 个答案:

答案 0 :(得分:2)

是的,即使数据点数超过组件数,也可以。您的示例不会生成空集群。相反,它会与

汇合
SELECT columns
FROM   table
WHERE  NOT EXISTS (SELECT *
                   FROM   table
                   WHERE  all columns = 0) ;

我发布了以下代码来生成此代码。 GMM的密度函数如下所示:

enter image description here

为什么GMM使用第二高斯的原因是模型将高斯拉得更接近2总是有益的。这将增加第二个数据点的可能性,同时不降低任何其他数据点的可能性数据点。您可以将高斯方法视为通过弹簧附加到数据点。

空集群的示例

以下是一个示例,其中一个高斯结果为空簇/未被GMM使用。

Gaussian 1: mean=0.000000, variance=0.000001, weights=0.500000
Gaussian 2: mean=2.000000, variance=0.000001, weights=0.500000

这导致以下GMM:

Data: [-0.1, 0.1, 9.9, 10.1]
Components: 3
Initial Weights: [1/3, 1/3, 1/3]
Initial Means: [0, 5, 10]
Initial Variances: [1, 1, 1]

enter image description here

代码

Gaussian 1: mean=-0.000000, variance=0.010001, weights=0.500000
Gaussian 2: mean=5.000000, variance=24.989993, weights=0.000000
Gaussian 3: mean=10.000000, variance=0.010001, weights=0.500000