mahout之3-mean shift聚类
?
?
?
(3).可以在空间X的任意子集上进行飘移,而S保持不变
而且在某些限定条件下成为我们所熟知的一些聚类方法,比如最大熵、Kmeans等方法。同时mean shift还可以看成对数据密度的梯度估计,用于寻找概率密度函数的波峰,因此提供了一种无需指定聚类数量的更自然的聚类方法。有兴趣的看官可以看一下PAMI上两篇论文:《Mean Shift, Mode Seeking, and Clustering》和《Mean Shift:A Robust Approach Toward Feature Space Analysis》
?
mahout采用类似于Canopy聚类的方法的方法实现,使用MeanShiftCanopy对象表示mean shift的窗口(即球体或核函数),并使用Canopy聚类的T1表示球体的半径,T2表示两个canopy是否足够近而需要合并。
聚类过程如下:
?????? (1)初始化,每个数据点代表一个MeanShiftCanopy
?????? (2)根据T1计算每个Canopy的mean shift向量,表示其质心;任意两个Canopy质心距离小于T2,则合并之。