我正在阅读Bishop有关GMM的EM算法以及GMM和k均值之间的关系。
在这本书中,它说k均值是GMM的硬分配版本。我想知道这是否意味着如果我要聚类的数据不是高斯,我就不能使用k-means(或者至少不适合使用)?例如,如果数据是手写数字的图像,该图像由8 * 8像素组成,每个像素的值为0或1(并假设它们是独立的,因此应该是伯努利的混合物)?
我对此有些困惑,将不胜感激。
我正在阅读Bishop有关GMM的EM算法以及GMM和k均值之间的关系。
在这本书中,它说k均值是GMM的硬分配版本。我想知道这是否意味着如果我要聚类的数据不是高斯,我就不能使用k-means(或者至少不适合使用)?例如,如果数据是手写数字的图像,该图像由8 * 8像素组成,每个像素的值为0或1(并假设它们是独立的,因此应该是伯努利的混合物)?
我对此有些困惑,将不胜感激。
Answers:
在典型的EM GMM情况下,确实会考虑方差和协方差。这不是用k均值完成的。
但确实,一种流行的k均值启发式算法(请注意:k均值是一个问题,而不是算法)-Lloyd算法-本质上是一种EM算法,使用质心模型(无方差)和硬分配。
在进行k均值样式聚类(即方差最小化)时,
k均值目标函数可以被形式化为这样: 其中,小号= { 小号1 ... 小号ķ }是将数据集所有可能的分区划分为k个分区,D是数据集的维数,例如x j d
一般说来,k-均值假设为球形簇。人们也普遍认为k均值簇是Voronoi细胞,即不是球形的。两者都是正确的,而且都是错误的。首先,簇不是完整的Voronoi细胞,而只是其中的已知对象。无需将群集之间的死区视为任一群集的一部分,因为在那里存在对象会影响算法结果。但是也称它为“球形”并不是更好,因为欧几里德距离是球形的。K-means不在乎欧几里得距离。所有这些都是一种使差异最小化的试探法。实际上,您应该将k均值视为:方差最小化。
minimize squared euclidean distance
或to是什么minimize the variances
?因为我们有2个以上的簇,所以必须有“和”或“汇集”之类的词,不是吗?
coincidentally minimize Euclidean distance, because the sqrt function is monotone
因此,准确地说,您的观点是不正确的。
minimize squared Euclidean distance, because WCSS variance contribution = squared euclidean distance
是什么意思?您是说“ 集群中的对象之间的平方d 最小,因为偏差的WCSS最小化了”,还是“偏差的WCSS最小化了-偏差- 本质上是欧几里德距离”?还是其他?
GMM使用延伸到无穷大的重叠山丘(但实际上仅计3 sigma)。每个点都获得所有山丘的概率得分。另外,山丘是“卵形”的(好的,它们是对称的椭圆形),并且使用完整的协方差矩阵,可能会倾斜。
K均值将一个点硬分配给单个聚类,因此其他聚类中心的得分将被忽略(隐式重置为零/无关)。小山是球形的肥皂泡。在两个肥皂泡接触的地方,它们之间的边界变为平坦(超)平面。就像您吹起许多肥皂泡的泡沫一样,内部的泡沫不是平坦的而是方形的,因此许多(超)球之间的边界实际上形成了空间的Voronoi分隔。在蜂巢中,这看起来像是在六角形的密堆积中模糊地看起来像六边形(尽管当然不能保证Voronoi细胞是六边形的)。K均值山是圆形的,不会倾斜,因此表示力较小;但计算速度要快得多,尤其是在较大尺寸的情况下。
由于K均值使用欧几里德距离度量,因此假设尺寸是可比较的并且权重相等。因此,如果维度X的每小时英里数从0到80,并且维度Y的磅单位从0到400,并且您要在此XY空间中拟合圆,则一个维度(及其传播)将会比其他维度更强大,并且会使结果蒙上阴影。这就是为什么习惯采用K均值时对数据进行规范化的原因。
GMM和K-means都通过对给出的数据进行最佳近似来对数据建模。GMM适合倾斜的鸡蛋,而K均值适合倾斜的球体。但是底层数据的形状可以是任何形状,可以是螺旋形或毕加索画,并且每种算法仍将运行,并尽力而为。生成的模型是否看起来像实际数据,取决于生成数据的基础物理过程。(例如,时延测量是单边的;高斯拟合是否合适?也许。)
但是,GMM和K-means都隐含地假设数据轴/域来自实数字段 。这取决于您要集群的数据轴/域的类型。有序整数计数很好地映射到实数。有序符号(例如光谱中的颜色)不太好。二进制符号,ehn。无序符号根本不会映射到实数上(除非您自2000年以来一直使用有创造力的新数学)。
因此,您的8x8二进制图像将被解释为第一个超象限中的64维超立方体。然后,算法使用几何类比来查找聚类。用K均值表示的距离在64维空间中显示为欧几里得距离。这是做到这一点的一种方法。