|
1 |
| -# K-means实验 |
| 1 | +# K-means 实验 |
2 | 2 |
|
3 | 3 | <center>PB18071477 敖旭扬</center>
|
4 | 4 |
|
5 | 5 | ## 原理
|
6 | 6 |
|
7 |
| -给定数据集 $D=\{X_1,\dots,X_m \}$ 和 $K$,`K-means`(K均值)算法针对聚类所得簇划分 $C=\{C_1,C_2,…,C_K \}$ 最小化平方误差 |
| 7 | +给定数据集 $D=\{X_1,\dots,X_m \}$ 和 $K$,`K-means`(K 均值)算法针对聚类所得簇划分 $C=\{C_1,C_2,…,C_K \}$ 最小化平方误差 |
| 8 | + |
8 | 9 | $$
|
9 | 10 | E=\sum_{k=1}^{K}\sum_{\boldsymbol{x} \in C_k}||\boldsymbol{x}-\boldsymbol{\mu}_k||_2^2 \tag{1}
|
10 | 11 | $$
|
11 |
| -将数据集D划分成 $K$ 个簇,其中 |
| 12 | + |
| 13 | +将数据集 D 划分成 $K$ 个簇,其中 |
| 14 | + |
12 | 15 | $$
|
13 | 16 | \boldsymbol{\mu}_k=\dfrac{1}{|C_k|}\sum_{\boldsymbol{x} \in C_k}\boldsymbol{x} \tag{2}
|
14 | 17 | $$
|
| 18 | + |
15 | 19 | 在本实现中,$\boldsymbol{\mu}$ 的初始值是从数据集合 $D$ 中随机抽取 $K$ 个样本点得到。之后把每个样本点归类为欧氏距离最近的 $\boldsymbol{\mu}_k$ 所在的那个簇,再重新计算 $\boldsymbol{\mu}$ ,重复迭代直到样本分类类别标签不再发生变化时结束训练。
|
16 | 20 |
|
17 | 21 | 性能度量使用**DBI**,定义为
|
| 22 | + |
18 | 23 | $$
|
19 | 24 | DBI=\dfrac{1}{K}\sum_{i=1}^{K}\max\limits_{j\neq i}\Bigg( \dfrac{avg(C_i)+avg(C_j)}{d_{cen}(C_i,C_j)} \Bigg) \tag{3}
|
20 | 25 | $$
|
21 | 26 |
|
22 | 27 | 其中
|
| 28 | + |
23 | 29 | $$
|
24 | 30 | avg(C_k)=\dfrac{1}{|C_k|}\sum_{\boldsymbol{x} \in C_k}dist(\boldsymbol{\mu}_k,\boldsymbol{x}) \tag{4}
|
25 | 31 | $$
|
| 32 | + |
26 | 33 | 为簇内样本平均距离
|
27 | 34 |
|
28 | 35 | $$
|
29 | 36 | d_{cen}(C_i,C_j)=dist(\boldsymbol{\mu}_i,\boldsymbol{\mu}_j) \tag{5}
|
30 | 37 | $$
|
| 38 | + |
31 | 39 | 为簇中心点距离
|
32 | 40 |
|
33 | 41 | 一般`DBI`越小,聚类划分效果越好。
|
@@ -84,6 +92,7 @@ class KMeans:
|
84 | 92 | ### 实例
|
85 | 93 |
|
86 | 94 | 本次实验使用的数据分布如下:
|
| 95 | + |
87 | 96 | <center>
|
88 | 97 | <img style="border-radius: 0.3125em;
|
89 | 98 | box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
|
@@ -189,4 +198,4 @@ DBI = 0.4936
|
189 | 198 | 2)DBI值小于5
|
190 | 199 | ```
|
191 | 200 |
|
192 |
| -我训练出的结果中,聚类后簇中心点坐标为 $(10.444,18.2102),(36.782,34.1022),(31.6182,11.0314)$ ,DBI值为 $0.4936$ ,效果良好。 |
| 201 | +我训练出的结果中,聚类后簇中心点坐标为 $(10.444,18.2102),(36.782,34.1022),(31.6182,11.0314)$ ,DBI 值为 $0.4936$ ,效果良好。 |
0 commit comments