![copyright.gif](https://i-blog.csdnimg.cn/blog_migrate/f4bb33a44367c6812a5edbbde4d0b37e.gif)
聚类分析又称群分析,它是研究(样品或指标)分类问题的一种多元统计方法,也是数据挖掘技术的基本方法。所谓类,通俗地说,就是指相似元素的集合。聚类分析起源于分类学,在考古的分类学中,人们主要依靠经验和专业知识来实现分类。随着生产技术和科学的发展,人类的认识不断加深,分类越来越细,要求也越来越高,有时光凭经验和专业知识是不能进行确切分类的,往往需要定性和定量分析结合起来去分类,于是数学工具逐渐被引进分类学中,形成了数值分类学。后来随着多元分析的引进,聚类分析又逐渐从数值分类学中分离出来而形成一个相对独立的分支。
聚类分析内容非常丰富,有系统聚类法、有序样品聚类法、动态聚类法、模糊聚类法、图论聚类法、聚类预报法等。这里介绍常用的系统聚类法。
正如样本之间的距离可以有不同的定义方法一样(欧氏距离、曼哈顿距离、马氏距离等),类与类之间的距离也有各种定义。例如可以定义类与类之间的距离为两类之间最近样本的距离,或者定义为两类之间最远样本的距离,也可以定义为两类重心之间的距离等等。类与类之间用不同的方法定义距离,就产生了不同的系统聚类方法。常用的八种系统聚类方法,即最短距离法、最长距离法、中间距离法、重心法、类平均法、可变类平均法、可变法、离差平方和法。系统聚类分析尽管方法很多,但归类的步骤基本上是一样的,所不同的仅是类与类之间的距离有不同的定义方法,从而得到不同的计算距离的公式。
一、系统聚类分析涉及的基本问题
现有10名学生六门课程成绩样本表(附表I)如下:
样本(学生) | 概率论 | 统计学 | 英语 | 政治 | 数据挖掘 | 线性代数 |
---|---|---|---|---|---|---|
$S_1$ | 67 | 63 | 73 | 75 | 44 | 91 |
$S_2$ | 74 | 69 | 66 | 94 | 81 | 55 |
$S_3$ | 76 | 93 | 93 | 79 | 71 | 27 |
$S_4$ | 65 | 38 | 85 | 85 | 61 | 45 |
$S_5$ | 80 | 39 | 48 | 75 | 41 | 52 |
$S_6$ | 72 | 80 | 70 | 88 | 86 | 43 |
$S_7$ | 60 | 50 | 91 | 95 | 42 | 64 |
$S_8$ | 77 | 49 | 69 | 50 | 89 | 55 |
$S_9$ | 65 | 89 | 50 | 70 | 99 | 85 |
$S_{10}$ | 78 | 41 | 55 | 89 | 71 | 28 |
1、样本间距离及距离矩阵
以欧氏距离为例,样本\(S_1\)和\(S_3\)之间的距离\(D_{13}\)的距离为,
\[D_{13}=\sqrt{(76-67)^2+(93-63)^2+(93-73)^2+(79-75)^2+(71-44)^2+(27-91)^2}\approx 78.88\]
样本\(S_i\)和\(S_j\)之间的距离\(D_{ij}\)的距离构成的矩阵表(附表II)为,
$D_{ij}$ | $S_1$ | $S_2$ | $S_3$ | $S_4$ | $S_5$ | $S_6$ | $S_7$ | $S_8$ | $S_9$ | $S_{10}$ |
$S_1$ | 0 | 56.21 | 78.88 | 57.25 | 53.85 | 67.53 | 40.93 | 65.25 | 65.54 | 76.31 |
$S_2$ | 56.21 | 0 | 49.17 | 44.54 | 56.83 | 18.60 | 52.77 | 49.17 | 50.37 | 42.13 |
$S_3$ | 78.88 | 49.17 | 0 | 60.58 | 80.61 | 35.72 | 67.64 | 66.80 | 78.84 | 65.22 |
$S_4$ | 57.25 | 44.54 | 60.58 | 0 | 46.30 | 51.73 | 32.05 | 51.28 | 84.23 | 38.51 |
$S_5$ | 53.85 | 56.83 | 80.61 | 46.30 | 0 | 67.11 | 53.99 | 59.06 | 84.89 | 41.58 |
$S_6$ | 67.53 | 18.60 | 35.72 | 51.73 | 67.11 | 0 | 62.54 | 50.83 | 52.79 | 47.26 |
---|---|---|---|---|---|---|---|---|---|---|
$S_7$ | 40.93 | 52.77 | 67.64 | 32.05 | 53.99 | 62.54 | 0 | 71.34 | 86.85 | 62.24 |
$S_8$ | 65.25 | 49.17 | 66.80 | 51.28 | 59.06 | 50.83 | 71.34 | 0 | 59.20 | 53.25 |
$S_9$ | 65.54 | 50.37 | 78.84 | 84.23 | 84.89 | 52.79 | 86.85 | 59.20 | 0 | 83.02 |
$S_{10}$ | 76.31 | 42.13 | 65.22 | 38.51 | 41.58 | 47.26 | 62.24 | 53.25 | 83.02 | 0 |
2、按样本间距离矩阵最小距离聚类
样本间距离矩阵为对称矩阵,即\(D_{ij}=D_{ji}\),并且对角线距离为0,即\(D_{ii}=0\)。所以,样本间距离矩阵最小距离只在下三角矩阵中寻找即可。表中\(D_{26}=18.60\)为最小距离,说明样本\(S_2\)和\(S_6\)相似性最大,可以首先归为同一类。把样本\(S_2\)和\(S_6\)做为新类,计算新类和其它类距离,然后在降维距离矩阵中选择最小距离、再归类,直至把所有样本归为一类。
3、类与类之间的距离
我们可以把每个样本看成一个类,也可以把具有某种共同特征的几个样本分为一类,如按距离最小将样本\(S_2\)和\(S_6\)归为一类。当按某种距离公式(如欧氏距离)计算出两两样本间距离矩阵后,在距离矩阵基础上,多个样本和一个样本、或多个样本和多个样本之间的距离称为类与类之间的距离。
如果把样本\(S_2\)和\(S_6\)分为一类、即\(C_1\{S_2,S_6\}\),再把样本\(S_7\)、\(S_8\)和\(S_9\)分为一类、即\(C_2\{S_7,S_8,S_9\}\)。\(C_1\)和\(C_2\)之间的距离称为类间距离。
二、系统聚类方法
为了分析问题简便,将5名学生3门课程成绩样本(附表III)进行系统聚类分析。样本数据为,
样本(学生) | 概率论 | 统计学 | 英语 |
---|---|---|---|
$S_1$ | 67 | 63 | 73 |
$S_2$ | 74 | 69 | 66 |
$S_3$ | 76 | 93 | 93 |
$S_4$ | 65 | 38 | 85 |
$S_5$ | 80 | 39 | 48 |
样本\(S_i\)和\(S_j\)之间的距离\(D_{ij}\)的距离构成的矩阵表(附表IV)为,
$D_{ij}$ | $S_1$ | $S_2$ | $S_3$ | $S_4$ | $S_5$ |
$S_1$ | |||||
$S_2$ | 56.21 | ||||
$S_3$ | 78.88 | 49.17 | |||
$S_4$ | 57.25 | 44.54 | 60.58 | ||
---|---|---|---|---|---|
$S_5$ | 53.85 | 56.83 | 80.61 | 46.30 |
1、最短距离法
根据距离矩阵(附表IV),按距离最小(最小距离44.54)将样本\(S_2\)和\(S_4\)归为一类\(C_1\)。在矩阵表中将\(C_1\)设置为第1行第1列,划去\(S_2\)、\(S_4\)对应行列,并计算\(C_1\)和其它样本或类之间的最短距离,得矩阵表如下,
$D_{ij}$ | $C_1(2,4)$ | $S_1$ | $S_3$ | $S_5$ |
$C_1(2,4)$ | ||||
$S_1$ | 56.21 | |||
$S_3$ | 49.17 | 78.88 | ||
$S_5$ | 46.30 | 53.85 | 80.61 |
---|
表中类\(C_1\)和样本\(S_1\)之间的最短距离为,\(min\{D_{12},D_{14}\}=min\{56.21,57.25\}=56.21\),\(C_1\)和其它样本之间的最短距离同理。
现在距离矩阵中\(C_1\)和\(S_5\)最小距离为46.30,将两样本聚类为\(C_2(2,4,5)\),在矩阵表中将\(C_2\)设置为第1行第1列,划去\(C_1\)、\(S_5\)对应行列,并计算\(C_2\)和其它样本或类之间的最短距离,得矩阵表如下,
$D_{ij}$ | $C_2(2,4,5)$ | $S_1$ | $S_3$ |
$C_2(2,4,5)$ | |||
$S_1$ | 53.85 | ||
$S_3$ | 49.17 | 78.88 |
---|
表中\(C_2(2,4,5)\)和\(S_1\)最短距离为,\(min\{D_{12},D_{14},D_{15}\}=min\{56.21.57.25,53.85\}=53.85\)。
按最小距离49.17将\(C_2(2,4,5)\)、\(S_3\)聚类为\(C_3(2,3,4,5)\),
$D_{ij}$ | $C_3(2,3,4,5)$ | $S_1$ |
$C_3(2,3,4,5)$ | ||
$S_1$ | 53.85 |
表中\(C_3(2,3,4,5)\)和\(S_1\)最短距离为,\(min\{D_{12},D_{13},D_{14},D_{15}\}=min\{56.21,78.88,57.25,53.85\}=53.85\)。
最后,\(C_3(2,3,4,5)\)和\(S_1\)聚为一类。
上述并类过程可用下图表达,