算法简介

我们先为此算法举一个简单的例子作为解释说明,假设数据集有6个点:P1(1.0,2.0),P2(1.5,2.5),P3(3.5,3.0),P4(4.0,1.5),P5(5.5,2.0),P6(6.0,1.5),另外设置可选参数B=3.0,d=0.01。我们先计算P1点依次到P2,P3,P4,P5,P6的欧氏距离D12,D13,D14,D15,D16,然后将各个距离大于d的Dij先求倒数再累加,假设以上结果都大于d,即为(1/D12+1/D13+1/D14+1/D15+1/D16),最后取负,就是P1的potential值,即P1=-(1/D12+1/D13+1/D14+1/D15+1/D16),其他各点计算过程同理。

我们计算的potential值,结果如下:

P1=-2.5356318736021333,

P2=-2.735675415796938,

P3=-2.279128224245421,

P4=-2.4650997150321703,

P5=-2.9641743813073678,

P6=-2.6731486285187667。

然后从小到大排序为<P5,P2,P6,P1,P4,P3>。首先选择最小的第一个点P5作为聚类中心,为第1类。然后选择排序队列的P2,因为P2与P5的距离是4.03,大于B=3.0,所以P2作为新的聚类中心,为第2类。下一个节点P6,与P5距离最小且小于B值,所以P6与P5是同一类,为第2类。同样地,P1被分配到P2,为第1类。P4被分配到第P5为第2类。最后,P3发现与P4距离更短且小于B,P3被分配到P4,与P5属于同一类,即第2类。最终聚类结果是2类:{P1,P2}和{P3,P4,P5,P6}


译自:《Clustering by Sorting Potential Values(CSPV): A novel potential-based clustering method》

更多推荐

Potential算法