步骤2:现在移至下一个数据项说P2并计算其与领导者P1的距离。如果P2和Leader P1之间的距离小于指定的阈值(T),则将数据点P2分配给该群集(群集C1)。如果领导者P1和数据项P2之间的距离大于指定的阈值T,则形成一个新的群集C2并将P2分配给此新群集。 P2将是群集C2的领导者。
步骤4:重复步骤3,直到将所有数据项分配给群集。 示例使理论变得清晰。
考虑模式位于
A (1, 1),B(1, 2), C(2, 2), D(6, 2), E(7, 2), F(6, 6), G(7, 6)
LET数据按顺序处理,用户指定的阈值
A, B, C, D, E, F and G
T
3
A(1, 1)
,也成为C1
对于第二点
C1
,它与领导者的距离B
计算。 使用Euclidean距离公式(
A
),我们将距离作为
Distance(a, b)) = √(x - a)² + (y - b)²
,这小于用户指定的阈值
√(1 - 1)² + (1 - 2)² = 1
,因此分配给群集1。对于第三点
3
群集领导者之间的距离B
计算了群集和点C(2, 2)
的距离。使用欧几里得公式距离为
A(1, 1)
阈值,因此也分配给C1
。
A和D(√(1-6)² +(1-2)²= 5.099)之间的距离超过用户指定的阈值3,因此创建了一个新的群集,并将D分配给群集C
。 D是这个集群的领导者。
对于点
√(1 - 2)² + (1 - 2)² = 1.41
,计算了它与
C
(
C1
的领导者)和C2
(
E
的领导者)的距离。由于
A
少于用户指定的阈值
C1
,因此分配给群集2。F与
D
(C1的负责人)的距离为C2
,与Distance(D,E)
(C2的负责人)为3
。
这两个距离都高于阈值,因此将A
放入新的群集
7.07
中,并成为该集群的领导者。
对于D
,4
,F
和C3
分别为G
,Distance(A,G)
和Distance(D,G)
。由于
Distance(F,G)
少于指定的用户7.81
6.41
将其分配给群集3。
可以看出,如果数据已按不同的顺序处理,则群集
领导者会有所不同 - 即使群集也会有所不同。如果发生之前发生
1
和Distance(F,G)
,然后3
将是C
的领导者。如果发生之前发生,并且
A
和B
之间的距离小于阈值,它本来是C
。这
如果是领导者,可能不会发生。因此,领导者算法取决于顺序,并且可能会根据处理顺序给出不同的结果。
紧凑型版本是:原始阈值和第一个集群中心(第一领导者)
选择一个新领导者(集群中心)何时确定threshold距离(ε)。第一个数据点成为第一个领导者(群集中心)
。
过程顺序序列每个新数据点对于每个传入点
X,将其distance
计算到所有现有集群领导者。tosign
点Xx
to将点分配给现有群集或基于阈值距离(ε)创建新簇,直到所有点已经用尽。