系统聚类的合并算法通过计算两类数据点间的距离,对最为接近的两类数据点进行组合,并反复迭代这一过程,直到将所有数据点合成一类,并生成聚类谱系图。此外,系统聚类可以解决簇数 K 的取值问题,后文会给出 SPSS 操作的流程。
例:下表是30个学生的六门课的成绩。根据这30个人的成绩,对这30个学生进行分类。
样本与样本之间的常用距离(样本 i i i 与样本 j j j):
1 、 绝 对 值 距 离 : d ( x i ⃗ , x j ⃗ ) = ∑ k = 1 p ∣ x i k − x j k ∣ 2 、 欧 式 距 离 : d ( x i ⃗ , x j ⃗ ) = ∑ k = 1 p ( x i k − x j k ) 2 3 、 M i n k o w s k i 距 离 : d ( x i ⃗ , x j ⃗ ) = [ ∑ k = 1 p ( x i k − x j k ) q ] 1 q 4 、 C h e b y s h e v 距 离 : d ( x i ⃗ , x j ⃗ ) = m a x 1 ≤ k ≤ p ∣ x i k − x j k ∣ 5 、 马 氏 距 离 : d ( x i ⃗ , x j ⃗ ) = ( x i ⃗ , x j ⃗ ) ′ ∑ − 1 ( x i ⃗ , x j ⃗ ) 其 中 : x ⃗ i = ( x i 1 , x i 2 , . . . , x i p ) ′ , x ⃗ j = ( x j 1 , x j 2 , . . . , x j p ) ′ 1、绝对值距离:d(\vec{x_i},\vec{x_j})=\sum_{k=1}^{p}|x_{ik}-x_{jk}|\\ 2、欧式距离:d(\vec{x_i},\vec{x_j})=\sqrt{\displaystyle\sum_{k=1}^{p}(x_{ik}-x_{jk})^2}\\ 3、Minkowski距离:d(\vec{x_i},\vec{x_j})=\left[ \sum_{k=1}^{p}(x_{ik}-x_{jk})^q \right]^{\frac{1}{q}}\\ 4、Chebyshev距离:d(\vec{x_i},\vec{x_j})=\mathop{max}\limits_{1≤k≤p}|x_{ik}-x_{jk}|\\ 5、马氏距离:d(\vec{x_i},\vec{x_j})=(\vec{x_i},\vec{x_j})^{'}\sum\nolimits{}^{-1}(\vec{x_i},\vec{x_j})\\ 其中:\vec x_i=(x_{i1},x_{i2},...,x_{ip})^{'},\quad\vec x_j=(x_{j1},x_{j2},...,x_{jp})^{'} 1、绝对值距离:d(xi,xj)=k=1∑p∣xik−xjk∣2、欧式距离:d(xi,xj)=k=1∑p(xik−xjk)23、Minkowski距离:d(xi,xj)=[k=1∑p(xik−xjk)q]q14、Chebyshev距离:d(xi,xj)=1≤k≤pmax∣xik−xjk∣5、马氏距离:d(xi,xj)=(xi,xj)′∑−1(xi,xj)其中:xi=(xi1,xi2,...,xip)′,xj=(xj1,xj2,...,xjp)′
例:根据这30个人的成绩,将六门课程分为两类。
指标与指标之间的常用距离(指标 i 与指标 j )
相 关 系 数 : ρ ( X i , X j ) = ∑ k = 1 p ( x ˉ k i − x ˉ i ) ( x ˉ k j − x ˉ j ) ∑ k = 1 p ( x ˉ k i − x ˉ i ) 2 ( x ˉ k j − x ˉ j ) 2 夹 角 余 弦 : r ( X i , X j ) = ∑ k = 1 p x k i x k j ∑ k = 1 p x k i 2 ∑ k = 1 p x k j 2 相关系数:\rho(X_i,X_j)=\frac{\displaystyle\sum_{k=1}^{p}{(\bar x_{ki}-\bar x_i)(\bar x_{kj}-\bar x_j)}}{\sqrt{\displaystyle\sum_{k=1}^{p}{(\bar x_{ki}-\bar x_i)^2(\bar x_{kj}-\bar x_j)^2}}}\\ 夹角余弦:r(X_i,X_j)=\frac{\displaystyle\sum_{k=1}^{p}{x_{ki}x_{kj}}}{\sqrt{\displaystyle\sum_{k=1}^{p}{x_{ki}^2\displaystyle\sum_{k=1}^{p}{x_{kj}^2 }}}} 相关系数:ρ(Xi,Xj)=k=1∑p(xˉki−xˉi)2(xˉkj−xˉj)2k=1∑p(xˉki−xˉi)(xˉkj−xˉj)夹角余弦:r(Xi,Xj)=k=1∑pxki2k=1∑pxkj2k=1∑pxkixkj
用的比较少,了解即可。
类与类之间的距离就是集合与集合之间的距离。
类与类之间的距离有如下两个属性:
定义: G p G_p Gp和 G q G_q Gq是两个类, D ( G p , G q ) D(G_p,G_q) D(Gp,Gq)是这两个类的距离。 x i ∈ G p , x j ∈ G q x_i∈G_p,x_j∈G_q xi∈Gp,xj∈Gq, d ( x i , x j ) d(x_i,x_j) d(xi,xj)是两个样本之间的距离。
类与类之间的距离有如下几种定义:
流程图如下:
根据五个学生的六门课的成绩,对这五个学生进行分类。
SPSS操作:
分析 → 分类 → 系统聚类,将变量与标注依据分别加入到对应的组中。 保存图示如下,方法中的标准化,如果量纲不同,则选择 Z 得分。
结果分析:
SPSS运行出的谱系图,可根据自己的需求划分出要聚类的个数,方法是画竖线,如下图,将样本化分为 3 类。第一类是广东、上海,第二类是北京、浙江、天津、西藏、福建,第三类是其余的省份。(这道例题选取:1999年全国31个省份城镇居民家庭平均每人全年消费性支出数据 )
虽说系统聚类对于 K 的选取提供了一些方案,但是我们对 K 的选取还存在一定的主观性,因此需要应用肘部法则来修正系统聚类。
肘部法则是通过图形大致的估计出最优的聚类数量。应用了SPSS输出文档中的集中计划中的系数,需要将系数进行排序之后,应用 excel 生成图像,如下图:
从上图可以看出 K 取1到5时,畸变程度变化最大。超过5以后,畸变程度变化显著降低。因此 K可以取 5,当然 3 也可以,只要给出理由。
本文借鉴了数学建模清风老师的课件与思路,如果大家发现文章中有不正确的地方,欢迎大家在评论区留言,也可以点击查看下方链接查看清风老师的视频讲解~
原文链接:https://www.bilibili.com/video/BV1DW411s7wi