在一维点集(1,4,9,16,25,36,49,64,81)上执行层次聚类方法,假定簇表示其质心,每一次迭代中将最近的两个簇合并。
时间: 2023-08-28 17:06:44 浏览: 135
在这个例子中,我们可以采用自底向上的聚类方法,即从每个对象开始,逐渐合并为更大的聚类,直到所有对象都被合并为一个聚类。
首先,我们需要计算每个点之间的距离。在这个例子中,我们采用欧几里得距离,即 $d_{ij} = \sqrt{(x_i - x_j)^2}$,其中 $x_i$ 和 $x_j$ 分别表示第 $i$ 个和第 $j$ 个点的位置。
| |1 |4 |9 |16 |25 |36 |49 |64 |81 |
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|1 |0 |3 |8 |15 |24 |35 |48 |63 |80 |
|4 | |0 |5 |12 |21 |32 |45 |60 |77 |
|9 | | |0 |7 |16 |27 |40 |55 |72 |
|16 | | | |0 |9 |20 |33 |48 |65 |
|25 | | | | |0 |11 |24 |39 |56 |
|36 | | | | | |0 |13 |28 |45 |
|49 | | | | | | |0 |15 |32 |
|64 | | | | | | | |0 |17 |
|81 | | | | | | | | |0 |
接下来,我们可以选择两个距离最近的点进行合并。在这个例子中,最近的两个点是 1 和 4,它们的距离为 3。因此,我们可以将它们合并成一个簇,取它们的中心点 2.5 作为新的簇质心。
合并后的点集为 (2.5, 9, 16, 25, 36, 49, 64, 81)。
| |2.5|9 |16 |25 |36 |49 |64 |81 |
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|2.5|0 |5.5|12.5|21.5|32.5|45.5|60.5|77.5|
|9 | |0 |7 |16 |27 |40 |55 |72 |
|16 | | |0 |9 |20 |33 |48 |65 |
|25 | | | |0 |11 |24 |39 |56 |
|36 | | | | |0 |13 |28 |45 |
|49 | | | | | |0 |15 |32 |
|64 | | | | | | |0 |17 |
|81 | | | | | | | |0 |
接下来,我们再次选择距离最近的两个点进行合并。在这个例子中,最近的两个点是 2.5 和 9,它们的距离为 5.5。因此,我们可以将它们合并成一个簇,取它们的中心点 5.75 作为新的簇质心。
合并后的点集为 (5.75, 16, 25, 36, 49, 64, 81)。
| |5.75|16 |25 |36 |49 |64 |81 |
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|5.75|0 |10.25|19.25|30.25|43.25|58.25|75.25|
|16 | |0 |9 |20 |33 |48 |65 |
|25 | | |0 |11 |24 |39 |56 |
|36 | | | |0 |13 |28 |45 |
|49 | | | | |0 |15 |32 |
|64 | | | | | |0 |17 |
|81 | | | | | | |0 |
不断重复以上步骤,直到所有点都被合并为一个簇。最终的聚类树如下所示:
```
5.75
/ | \
16 25 36
| | |
49 64 81
|
```
在这个聚类树中,每个叶子节点代表一个点,而每个非叶子节点代表一个簇。可以看出,最终的聚类结果是将所有点分成了一个簇。
阅读全文