社会学系列教 第四章 聚类分析 聚类分析( Cluster Analysis)是根据研究对象的特征对研究对象进行分类的 多元分析技术的总称分类问题是各个学科领域都普遍存在的问题,例如人口学 中研究人口生育分类模式、人口死亡分类模式;医学中对各种精神病特征的分 析;市场营销学中进行市场分层、确定目标市场等等,这些都需要对研究对象 进行分类。聚类分析是应用最广泛的分类技术,它把性质相近的个体归为一类 使得同一类中的个体具有高度的同质性,不同类之间的个体具有高度的异质 聚类分析的大部分应用都属于探测性研究,最终结果是产生研究对象的分 类,通过对数据的分类研究还能产生假设。聚类分析也能用于证实性目的,对于 通过其他方法确定的数据分类,可以应用聚类分析进行检验。 本章将介绍聚类分析的原理和各种聚类方法的选择和使用。聚类分析可以用 来对案例进行分类,也可以用来对变量进行分类。对案例的分类常称为Q型聚 类,对变量的分类称为R型聚类。在实际应用中,聚类分析更多地用来对案例进 行分类,所以,本章以案例聚类为例介绍聚类分析,对变量的聚类方法和对案例 的聚类方法相同,这里不再赘叙
聚类分析的主要步骤 般来说,聚类分析至少都应该包括以下四个步骤:首先,根据研究的目的 选择合适的聚类变量;第二步计算相似性测度;第三步选定聚类方法进行聚类; 最后是对结果进行解释和验证。下面我们对每一步骤进行简单介绍。 1.选择变量 因为聚类分析是根据所选定的变量对研究对象进行分类,聚类的结果仅仅反 映了所选定变量所定义的数据结构,所以变量的选择在聚类分析中非常重要。 般来说,选择哪些变量应该具有一定的理论支持,但实践中往往缺乏这样强有力 的理论基础,研究者一般是根据实际工作经验和所研究问题的特征人为地选择 些变量。那么,这些变量应该具有以下特点 (1)和聚类分析的目标密切相关; (2)反映了要分类对象的特征; (3)在不同研究对象上的值具有明显差异; 4)变量之间不应该高度相关。 选择变量时要注意克服“加入尽可能多的变量”这种错误倾向,并不是加入的 变量越多,得到的结果越客观。有时,由于加入一两个不合适的变量就会使得分 类结果大相径庭。所以,聚类分析应该只根据在研究对象上有显著差别的那些变 量进行分类。因此,研究者需要对聚类结果不断进行检验,剔除在不同类之间没 有显著差别的变量。 另一点应该注意的是,所选择的变量之间不应该高度相关,不加鉴别地使用 高度相关的变量相当于给这些变量进行了加权。如果我们所选择的变量中有三个 高度相关的变量,这相当于使用了这三个高度相关变量中的一个,并对其给予了 倍的权数。对于高度相关的变量有两种处理办法,一是在聚类之前,首先对变 量进行聚类分析,从聚得的各类中分别挑选出一个有代表性的变量作为聚类变 量;二是做主成分分析或因子分析,主成分分析和因子分析都可以用来降低数据 的维数,产生新的不相关变量,然后把这些变量作为聚类变量。 2.计算相似性 选定了聚类变量,下一步就是计算研究对象之间的相似性( Similarity)。相
似性是聚类分析中的一个基本概念,它反映了研究对象之间的亲硫程度,聚类分 析就是根据研究对象之间的相似性来进行分类的。有很多种相似性测度,关于它 们的计算和使用,我们将在后面详述。 3.聚类 选定了聚类变量、计算出相似性矩阵之后,下一步就是要对研究对象进行分 类。这时主要涉及到两个问题:一是选定聚类方法;二是确定形成的类数。我们 将在第三部分介绍常用的聚类方法和如何确定形成的类数。 4.聚类结果的解释和证实 得到聚类结果后,最后一步还应该对结果进行验证和解释,以保证聚类解是 可信的 ∴、相似性测度 在聚类分析技术的发展过程中,形成了很多种测度相似性的方法。每一种方 法都从不同的角度测度了研究对象的相似性,主要分为以下三类:1.相关测度; 2.距离测度;3.关联测度。其中相关测度和距离测度适用于间距测度等级及以 上的数据,关联测度适用于名义测度和序次测度的数据。 1.相关测度 应用最广泛的相关测度是皮尔逊相关系数( Pearson correlation),即简单相关 系数。它最初用来测度变量之间的相关程度,聚类分析中用它来测度案例之间的 相似程度 (框中的内容可跳过不读) 计算公式为: 7 其中,x表示案例i在变量k上的值,x:表示所有变量在案例i上的均值 表示变量个数。 119
相关系数的变化范围为[-1,+1],0表示两个案例之间没关系。该系数对 各变量值的大小不敏感,因为在r公式中每个变量值先减去平均值,又除以了标 准差,它相当于先把每个案例在所有的变量上进行了标准化。相关系数测度了研 究对象在聚类变量模式变化上的相似性,这一点我们将通过表4-1中的假想数 据加以进一步说明。表4-1给出了五个案例在五个变量上的假想数据,从五个 变量的相关测度结果可以看出,五个案例被分成了两组,案例1,3,5之间具有 较高的相关,应该归为一组,案例2,4之间有较高的相关,应该归为另一组(见 表4-2)。如果我们画出每个案例在聚类变量上的变化曲线(见图4-1),可以 看出,聚为一组的案例在聚类变量上有相似的变化模式。因为相关测度在更大程 度上反映了案例在聚类变量上变化模式的相似性,而变量值大小的差异对其影响 不大,所以,它也常被称为形状测度。 表4-1 原始数据 变量 案例 57823 68943 ----2 43210 变量 图4-1五个案例在聚类变量上的变化曲线
表4-2 相似性测度:相关系数 案例 2 3 2 0 0.97 0.14 0.19 0.87-0.170.91022 相关测度的一个主要缺点也就是它忽视了变量值大小之间的差异。高度相关 的两个样本所提供的信息可能并不等同,有时甚至相差甚远。如本例中的案例1 和案例3之间的相关系数高达0.97,但两个案例的变量值相差很大。实际上,在 聚类分析的大部分应用中都更重视变量值大小的差异,而不是值的变化模式,所 以相关测度在聚类分析中应用并不普遍,应用最普遍的是我们下面要介绍的距离 测度 2.距离测度 距离测度的出发点是把每个案例看作m维空间(m为变量个数)中的一个 点,在m维空间中定义点与点之间的距离,距离越近的点,相似程度越高,聚类 时更可能归为一类。如果两个案例在所有的变量上的值都相同,这两个点在m维 空间中应该重合,两个点之间的距离为0 距离测度应该满足下列条件: 1)d=dn=0即距离具有对称性,从案例i至案例j的距离与案例j至案 例i的距离相等。 2)d,≤dk+d即三角不等式,任意一边小于其他两边之和。 3)如果d,≠0,则≠j,即案例i和案例j不等同。 常见的距离测度有 (1)欧氏距离( Euclidean distance)。定义为 其中,d,表示案例和案例j之间的距离,x表示第i个案例在第k个变量 上的值。欧式距离是聚类分析中用得最广泛的距离,上式也称为简单欧式距离, 另一种常用的形式是平方欧式距离,即取上式的平方,记为d2。平方欧式距离 的优点是,因为不再计算平方根,所以大大提高了计算机的运算速度。 (2)绝对值距离( Manhattan distance或 city-block metric)。定义为 121
绝对值距离是另一个应用很广泛的距离,使用时要注意的一个问题是它假设 变量之间是不相关的,如果变量之间相关,则聚类结果不可信。 (3)明科夫斯基距离( Minkowski metrics)。定义为 明科夫斯基距离是个通用的距离测度公式,当r为1时为绝对值距离,r等 于2时为欧氏距离 (4)马氏距离( Mahalanobis d)。定义为 dn=(X;-X)’E(x-X) 其中,X,X分别为案例i和案例j在各个变量上的值所组成的向量,E1 为聚类变量的协方差阵的逆矩阵。和前面所定义的距离测度所不同的是,马氏距 离考虑了聚类变量之间的相关,如果变量之间的相关为零,马氏距离等于平方欧 氏距离。 和相关测度所不同的是,距离测度更侧重于变量值的大小,不考虑案例在聚 类变量上的变化模式,认为靠得近的案例为相似的案例。表4-3给出了对于表 4-1中的数据计算出的简单欧氏距离。按照距离越近,相似程度越高的原则,案 例2,3应该归为一类,案例1,4,5归为另一类,这和用相关测度的聚类结果差 异很大,参照图4-1我们可以更清楚地看出相关测度和距离测度的差异。 表↓ 相似测度:欧氏距离 案例 8.7 2345 3.74 4.24 11.75 10.86 3.关联测度 关联测度用来度量聚类变量为分类变量的研究对象的相似性。有很多种关联 测度系数,其中只有三种得到了广泛的应用,它们分别是简单匹配系数(the Simple matching coefficient)、雅科比系数( Jaccards coefficient)和果瓦系数 ( Gowers coefficient),其中,简单匹配系数和雅科比系数只适用于二分类变量
果瓦系数可以用于各种测度的变量。 (1)简单匹配系数 对于二分类变量,关联测度的出发点是要估计研究对象在回答这些问题时的 致程度,所以最简单的关联测度是两个案例在所有的聚类变量上答案相同的情 况出现的频率,它被定义为简单匹配系数。 如果我们用1代表“是”,0代表“否”,任意两个案例的回答结果表示如下 案例2 案例1 0 1aC b 0 d 则简单匹配系数可以表示为 atd h+c+d S为两个案例之间的相似性,变化范围从0到1。 其中,a表示两个案例都回答是“1”的频数;b表示案例1回答是“I”,案 例2回答是“0”的频数;c表示案例1回答是“0”,案例2回答是“1”的频数; d表示两个案例都回答是“0”的频数 (2)雅科比系数 简单匹配系数的缺点是,两个案例相似可能是因为他们都共同拥有某些特 征,也可能是因为他们都缺乏某些特征。雅科比系数在简单匹配系数的基础上 做了一些改进,它把两个案例都回答“否”的部分从公式中去掉,只考虑回答 ¨是”的部分,计算公式为 b+ (3)果瓦系数 果瓦系数优于前两个关联测度之处在于它允许聚类变量可以是名义变量、序 次变量和间距测度变量。定义为
∑S 其中,S为案例和案例j在变量k上的相似性得分,Wi为加权变量 S和W的计算规则如下(见表4-4)。 对于二分类变量 在变量k上的值 案例i 案例j 0 0 0 W 1 0 即,只有当两个案例在某个变量上都取值为1时,S取值1,其他情况都取 值为0。对于二分类变量,果瓦系数等于雅科比系数。 对于序次变量:两个案例在变量上的取值相同时,S=1,取值不同时,S 对于间距测度或以上的变量 /RE 其中,x和x分别是案例和案例j在变量k上的值,R是变量k的全距 ( Range),即变量k的最大值与最小值之间的差。 4.数据的标准化问题 前面介绍的大部分相似测度,特别是距离测度,受聚类变量测量单位的影响 很大,其中数量级单位大的变量往往其变差也大,它对相似测度的贡献占主导地 位,这样就可能掩盖了其他变差小的变量的影响。另外,当变量的测量单位变化 时,相似测度的值也随之改变,有可能改变最终的聚类结果。下面我们通过一个 具体例子加以说明。 假设A、B、C三个案例在受教育年限和年收入两个变量上的值见表4-5 年收入可以分别用万元和元两种单位测量,表4-6给出了分别用这两种单位的 简单欧氏距离。当以万元为单位时,A和C之间的相似性最高,其次是A和B,B 和C之间的相似性最低,受教育年限变量在距离测度中起了主导作用。当年收入 以元为单位测量时,A和C之间的相似性变成了最低,A和B与B和C之间的相 似性相同,年收入的差异在相似性测度中占了绝对主导作用。 124
表4-5 原始数据2 受教育年限 年收入 年收入 案例 (年) (万元) (元) 20000 B 16 1.5 15000 10000 表4-6 变量取不同单位时的距离测度比较 距离 (万元) (元) A-B 6.02 5000 10000 10.01 000 为了克服变量测量单位的影响,在计算相似测度之前,一般对变量要做标准 化处理,通常是把变量变成均值为零、方差为1的标准化变量。常用的聚类分析 软件中都有这项功能,可以自动完成。 聚类方法 有很多种聚类方法,应用最广泛的有两类:层次聚类法( Hierarchical Cl Procedures)和迭代聚类法( Iterative Partitioning Procedures)。下面我们对每 类方法分别加以介绍。 1.层次聚类法 有两种层次聚类法:聚集法( Agglomerative Method)和分解法( Divisive Method)。聚集法是首先把每个案例各自看成一类,先把距离最近的两类合并 然后重新计算类与类之间的距离,再把距离最近的两类合并,每一步减少一类, 这个过程一直持续到所有的案例归为一类为止。分解法和聚集法的过程相反,首 先把所有的案例归为一类,然后把最不相似的案例分为两类,每一步增加一类, 直到每个案例都自成一类为止。分解法和聚集法相似,只是过程相反。所以,这 125
里我们只介绍常用的层次聚集法。层次聚集法是聚类分析中应用最广泛的聚类方 法,层次聚类法的聚类过程可以用一个树状图( Dendogram)表示出来,根据该 树状结构图可进行不同的分类处理。 层次聚类法中的一个核心问题是计算类与类之间的距离,有五种常用的方 法:(1)最短距离法( Single linkage);(2)最长距离法( Complete Linkage); (3)平均联结法( Average Linkage);(4)重心法( Centroid);(5)离差平方和法 (ward’' s Method)。下面我们逐一加以介绍。 1)最短距离法 最短距离法把两个类之间的距离定义为一个类中的所有案例与另一类中的所 有案例之间的距离最小者。 设x为类Gp中的任一案例,x,为类G中的任一案例,d1表示案例x;与案 例x之间的距离,Dx表示类Gn与G之间的距离,则最短距离法把Dx定义 为 min ∈Cn,∈( 图42给出了最短距离法的示意图。 图42最短距离法示意图 最短距离法的主要缺点是它有链接聚合的趋势,因为类与类之间的距离为所 有距离中的最短者,两类合并以后,它与其他类之间的距离缩小了,这样容易形 成一个比较大的类,大部分案例都被聚在一类中,在树状聚类图中,会看到一个