下载 - 西安电子科技大学软件学院

Download Report

Transcript 下载 - 西安电子科技大学软件学院

数据挖掘与商务智能
Data Mining & Business Intelligence
第五章
聚类
西安电子科技大学 软件学院
主讲人:黄健斌
1
分类与聚类

尽管分类是一种识别对象组或类的有效手段,但
是它常常需要高昂的代价收集和标记大量训练元
组集或模式,以便分类法使用它们对每个组建模

希望:
 首先,基于数据的相似性把数据集合划分成组
 然后,给这些数量相对较少的组指定标号

基于聚类的过程的另一个优点:
 可以适应变化,并且能够挑选出区分不同组的有用特
征
2
聚类

什么是聚类?
 聚类(clustering)是将物理或抽象对象的集合分成
相似的对象类或簇(cluster)的过程

相关概念
 簇是数据对象集合,同一个簇中的对象之间具有很高
的相似度,而不同簇中的对象高度相异
 相异度根据描述对象的属性值评估,通常使用距离度
量
3
聚类

什么是聚类?
 聚类(clustering)是将物理或抽象对象的集合分成相
似的对象类或簇(cluster)的过程

相关概念
 簇是数据对象集合,同一个簇中的对象之间具有很高
的相似度,而不同簇中的对象高度相异
 相异度根据描述对象的属性值评估,通常使用距离度
量
4
聚类


应用领域
 市场研究、模式识别、数据分析、图像处理
其他应用
 在某些应用中,聚类又称数据分割(data
segmentation),因为它根据数据的相似性把大
型数据集合划分成组
 聚类还可以用于离群点检测(outlier
detection),其中离群点(“远离”任何簇的
值)可能比普通情况更值得注意
5
聚类技术
基于划分的聚类
基于层次的聚类
基于密度的聚类
基于图论的聚类算法
基于网格的聚类算法
基于模型的聚类算法
6
基于划分的聚类

划分方法(partitioning methods)
 定义:给定n个对象或数据元组的数据库D,划分方法
构建数据的k个划分(k ≤ n),每个划分表示一簇
 方法:给定要构建的划分数目k,划分方法创建一个初
始划分;然后采用迭代重定位技术,尝试通过对象在
组建移动来改进划分

比较常用的算法
 k-means:k均值聚类算法,其中每个簇都用该簇中对象
的均值来表示
<入选数据挖掘十大算法>
 k-medoids:k中心点聚类算法,其中每个簇用接近簇中
心的一个对象来表示
 CLARANS:大型数据库中的划分聚类算法
7
k-means

算法思想:
 随机选择k个对象,每个对象初始地代表一个类的平均
值;对剩余每个对象,根据其到类中心的距离,被划分
到最近的类;然后重新计算每个类的平均值。不断重复
这个过程,直到所有的样本都不能再分配为止。
 给定类 Ki  {ti1, ti 2,...
, tim}
m
1
其均值定义为:mi 
tij

m j 1
(在定义里假设每个对象是数值型属性)
8
k-means



输入:期望得到的簇的数目k,n个对象的数据D
输出:k个簇的集合
方法:
(1)选择k个对象作为初始的簇的质心
(2)repeat
(3)计算对象与各个簇的质心的距离,将对象划分到距
离其最近的簇
(4)重新计算每个新簇的均值
(5)Until簇的质心不再变化
9
k-means
10
k-means
假设:给定如下要进行聚类的对象:
{2,4,10,12,3,20,30,11,25},k = 2,
请使用k均值划分聚类
步骤如下:
m1
2
2.5
3
4.75
7
m2
4
16
18
19.6
25
K1
{2,3}
{2,3,4}
{2,3,4,10}
{2,3,4,10,11,12}
{2,3,4,10,11,12}
K2
{4,10,12,20,30,11,25}
{10,12,20,30,11,25}
{10,12,20,30,11,25}
{20,30,25}
{20,30,25}
11
k-means



算法的计算复杂度为O(nkt)
其中
n为数据集中对象的数目
k为期望得到的簇的数目
t为迭代的次数
在处理大数据库时也是相对有效的(可扩展性)
12
k-means

优点
 聚类时间快

缺点
 用户必须事先指定聚类簇的个数
 常常终止于局部最优
 只适用于数值属性聚类(计算均值有意义)
 对噪声和异常数据也很敏感
 不同的初始值,结果可能不同
 不适合发现非凸面形状的簇
13
k-medoids



k-means利用簇内点的均值或加权平均值ci(质心)
作为类Ci的代表点。对数值属性数据有较好的几
何和统计意义。对孤立点是敏感的,如果具有极
大值,就可能大幅度地扭曲数据的分布
k-medoids(k-中心点)算法是为消除这种敏感性提
出的,它选择类中位置最接近类中心的对象(称为
中心点)作为类的代表点,目标函数仍然可以采用
平方误差准则
PAM(Partitioning Around Medoids,围绕中心点
的划分)是最早提出的k中心点算法之一
14
PAM

算法思想
随机选择k个对象作为初始的k个类的代表点,将其余对
象按与代表点对象的距离分配到最近的类;
 反复用非代表点来代替代表点,以改进聚类质量。

即:算法将判定是否存在一个对象可以取代已存在的一个
中心点。

通过检验所有的中心点与非中心点组成的对,算法将选择最能
提高聚类效果的对,其中成员总是被分配到与中心点距离最短
的类中。

假设类Ki 的当前中心点是Oi , 希望确定Oi是否应与非中心点Oh
交换.如果交换可以改善聚类的效果,则进行交换。
15
PAM


距离代价的变化是指所有对象到其类中心点的距
离之和的变化
这里使用Cjih表示中心点Oi与非中心点Oh交换后,
对象Oj到中心点距离代价的变化
总代价定义如下:
n
TCih   C jih
j 1
16
PAM(计算代价要考虑的四种情况)
 第一种情况: Oj当前隶属于中心点对象Oi 。如果Oi被Oh所
代替作为中心点,且Oj离一个Om最近,i≠m,那么Oj被重新
分配给Om
 第二种情况:Oj当前隶属于中心点对象Oi。如果Oi被Oh代替
作为一个中心点,且Oj离Oh最近,那么Oj被重新分配给Oh
17
PAM(计算代价要考虑的四种情况)
 第三种情况:Oj当前隶属于中心点Om,m≠i。如果Oi被Oh
代替作为一个中心点,而Oj依然离Om最近,那么对象的隶
属不发生变化
 第四种情况:Oj当前隶属于中心点Om,m≠i。如果Oi被Oh
代替作为一个中心点,且Oj离Oh最近,那么Oi被重新分配
给Oh
18
PAM



输入:簇的数目k和包含n个对象的数据库。
输出:k个簇的集合
方法:
(1) 任意选择k个对象作为初始的代表对象(簇中心点)
(2) repeat
(3) 将每个剩余对象指派到最近的代表对象所代表的簇
(4) 随机地选择一个非代表对象Orandom
(5) 计算用Orandom交换代表对象Oi的总代价S
(6) if S < 0,then用Orandom替换Oi ,形成新的k个代
表对象的集合
(7) UNTIL不发生变化
19
PAM

假如空间中的五个点{A、B、C、D、E}如图1所示,
各点之间的距离关系如表1所示,根据所给的数据对其运
行PAM算法实现划分聚类(设k=2)。 样本点间距离如
下表所示:
C
A
D
B
E
样本点
样本点
A
B
C
D
E
A
0
1
2
2
3
B
1
0
2
4
3
C
2
2
0
1
5
D
2
4
1
0
3
E
3
3
5
3
0
A
C
2
2
D
B
3
E
起始中心点
20
PAM


第一步 建立阶段:假如从5个对象中随机抽取的2个中心点为{A,
B},则样本被划分为{A、C、D}和{B、E}
第二步 交换阶段:假定中心点A、B分别被非中心点C、D、E替
换,根据PAM算法需要计算下列代价TCAC、 TCAD、 TCAE、TCBC、
TCBD、 TCBE。
 以TCAC为例说明计算过程
a) 当A被C替换以后,A不再是一
个中心点,因为A离B比A离C
近,A被分配到B中心点代表的
簇,CAAC=d(A,B)-d(A,A)=1
b) B是一个中心点,当A被C替换
以后,B不受影响,CBAC=0
样本点
A
B
C
D
E
A
0
1
2
2
3
B
1
0
2
4
3
C
2
2
0
1
5
D
2
4
1
0
3
E
3
3
5
3
0
21
PAM
a)
b)
c)
d)
e)
C原先属于A中心点所在的簇,当A被C
替换以后,C是新中心点,符合PAM算 样本点
A
法代价函数的第二种情况CCAC=d(C,C)d(C,A)=0-2=-2
B
D原先属于A中心点所在的簇,当A被C
C
替换以后,离D最近的中心点是C,根据 D
PAM算法代价函数的第二种情况
E
CDAC=d(D,C)-d(D,A)=1-2=-1
E原先属于B中心点所在的簇,当A被C
替换以后,离E最近的中心仍然是 B,
根据PAM算法代价函数的第三种情况
CEAC=0
A
B
C
D
E
0
1
2
2
3
1
0
2
4
3
2
2
0
1
5
2
4
1
0
3
3
3
5
3
0
 因此,TCAC=CAAC+ CBAC+ CcAC+ CDAC+ CEAC =1+0-
2-1+0=-2。
22
PAM
在上述代价计算完毕后,我们要选取一个最小的代价,显然有多种替换可以选择,我们选
择第一个最小代价的替换(也就是C替换A),根据图5-4(a)所示,样本点被划分为{ B、A、E}
和{C、D}两个簇。图5-4(b)和图5-4(c)分别表示了D替换A,E替换A的情况和相应的代价
C
A
1
C
A
1
1
D
B
C
A
1
D
B
2
1
D
B
3
3
3
E
E
E
(a) C替换A, TCAC=-2
(b) D替换A, TCAD=-2
(c) E替换A, TCAE=-1
图5-4 替换中心点A
图5-5(a)、(b)、(c)分别表示了用C、D、E替换B的情况和相应的代价。
C
A
1
C
A
1
1
D
B
1
D
B
3
2
A
1
2
C
D
B
3
E
E
E
(b) D替换B, TCBD=-2
(c) E替换B, TCBE=-2
图5-5 替换中心点B
通过上述计算,已经完成了第一次迭代。在下一迭代中,将用其他的非中心点{A、D、E}替
换中心点{B、C},找出具有最小代价的替换。一直重复上述过程,直到代价不再减小为止。
•
C替换B, TCBC=-2
23
K-medoids

优点
 对属性类型没有局限性
 通过簇内主要点的位置来确定选择中心点,对孤立点
和噪声数据的敏感性小

不足
 处理时间要比k-mean更长
 用户事先指定所需聚类簇个数k
 发现的聚类与输入数据的顺序无关
24
CLARANS

PAM算法中,每一次迭代都需要确定出k(n-k)个交换
对,对于交换对i,h需要计算TCih。在计算TCih过程
中,需要计算n-k个非中心点的代价,所以每次迭代
的复杂度是k(n-k)2

由于迭代的次数可能很多,PAM算法的复杂性很高,
所以不适合大型数据库
CLARANS(Clustering Large Application based upon
RANdomized Search,大型数据库中的划分聚类)算
法是由PAM算法改进后得到的一种算法,适合大型数
据库

25
CLARANS

算法思想
 CLARANS方法在搜索的每一步都以某种随机方式进行
采样,其聚类过程可描述成一个图的搜索,图中的每
个节点是一个潜在的解,即k个中心点的集合
 在替换一个中心对象后所获得的新第一就称为当前聚
类的邻居,随机产生的聚类邻居数由用户限制
 若发现一个更好的邻居(具有较低的方差),CLARANS
算法就移动到这一邻居节点然后再开始重新搜索,否则
当前节点就形成了一个局部最优
 若发现一个局部最优,CLARANS方法就随机选择节点
重新开始搜索新的局部最优
26
CLARANS


给定n个对象,描述发现k个中心点的过程可以抽象的看成一个图
的搜索,在该图中,Gn,k定义的节点可以用一个k个对象的集合
{Om1,Om2,… Omk}来表示,即Om1,Om2,…Omk实际是选择的
中心点
若两个节点的集合之间只有一个对象不同,这两个节点就是邻居
节点(由弧线连接)
两个节点S1={Om1,Om2,… Omk},S2={On1,On2,… Onk}是
邻居,当且仅当S1和S2交集由k-1个元素。每一个节点有k(n-k)个
邻居。
因为一个节点有k个中心点组成,则每个节点对应着一个聚类,
于是每个节点可以赋予一个代价。
若Oi与Oh属于不同的邻居S1和S2,两个邻居的代价差与PAM算
法中的代价相同,即表示中心点Oi与非中心点Oh交换后的TCih 。
27
CLARANS
1.
2.
3.
4.
5.
6.
7.
8.
输入参数numlocal和maxneighbor,numlocal表示抽样的次数,
maxneighbor表示一个节点可以与任意特定邻居进行比较的数目令:
i =1,i用来表示已经选样的次数,mincost为最小代价,初始时
设为大数
将current设置当前节点为Gn,k中的任意一个节点
令j =1(j用来表示已经与current进行比较的邻居的个数)
考虑当前点的一个随机的邻居S,并计算两个节点的代价差
如果S的代价较低,则current:=S,转到步骤3
否则,令j=j+1。如果j≤maxneighbor,则转到步骤4
否则,当j>maxneighbor,当前节点为本次选样最小代价节点. 如果其
代价小于mincost,令mincost为当前节点的代价,bestnode为当前的
节点
令 i= i+1,如果i>numlocal,输出bestnode,运算中止.否则,转到
步骤2
28
CLARANS


步骤(3)到步骤(6)搜索节点的代价逐步降低。但若当
前的节点已于节点的邻居的最大数比较过而且仍是最低的
代价,则认为是当前节点是局部最小的。然后再步骤(7)
中,将这个局部最小于目前得到的最小代价比较,两者值
小的存入mincost。CLARANS算法然后再重复搜索其他的
局部最小者,一直到i=numlocal为止(numlocal为抽样次数)
优点
 不用限制在局部区域搜索
 只检查节点的邻居的样本,效率高
29
基于划分的聚类

特点
 k事先定好
 创建一个初始划分,再采用迭代的重定位技术
 不必确定距离矩阵
 比系统聚类法运算量小,适用于处理庞大的样本数据
 适用于发现球状类

缺陷
 不同的初始值,结果可能不同
 有些k均值算法的结果与数据输入顺序有关,如在线k
均值算法
 容易陷入局部极小值
30
基于层次的聚类

层次方法(hierachical methods)
 层次方法创建给定数据对象集的层次分解。根据层次
的分解的形成方式,层次的方法可以分类为凝聚的或
分裂的方法
 凝聚法,也称自底向上的方法,开始将每个对象形成
单独的组,然后逐次合并相近的对象或组,直到所有
的组合并为一个(层次的最顶层),或者满足某个终
止条件
 分裂法,也称自顶向下的方法,开始将所有的对象置
于一个簇中,每次迭代,簇分裂为更小的簇,直到最
终每个对象在一个簇中,或者满足某个终止条件
31
基于层次的聚类

比较常用的算法
 DIANA(Divisive ANAlysis)
:
分裂层次聚类算法
 AGENES(AGglomerative NESting):
凝聚层次聚类算法
 BIRCH:
利用层次方法的平衡迭代规约和聚类
候选十八大算法之一>
<数据挖掘
32
凝聚和分裂层次聚类
 对数据对象{a,b,c,d,e}的凝聚和分裂层次聚类
33
凝聚和分裂层次聚类
10
10
10
9
9
9
8
8
8
7
7
7
6
6
6
5
5
5
4
4
4
3
3
3
2
2
2
1
1
1
0
0
0
1
2
3
4
5
6
7
8
9
10
0
0
1
2
3
4
5
6
7
8
9
10
0
1
2
3
4
5
6
7
8
9
10
 凝聚层次聚类
 分裂层次聚类
10
9
8
7
6
5
4
3
2
1
0
10
10
9
9
8
8
7
7
6
6
5
5
4
4
3
3
2
2
1
1
0
0
1
2
3
4
5
6
7
8
9
10
0
0
1
2
3
4
5
6
7
8
9
10
0
1
2
3
4
5
6
7
8
9
10
34
凝聚和分裂层次聚类


在凝聚或者分裂层次聚类方法中,用户可以定义
希望得到的簇数目作为一个终止条件
通常,使用一种称作树状图(dendrogram)的树
形结构表示层次聚类的过程
35
最小距离

单链接(single-link)方法,其每个簇可以用簇中所有对象
代表,簇间的相似度用属于不同簇中最近的数据点对之间
的相似度来度量

也称为最短距离法,定义簇的邻近度为取自不同簇的所有
点对的俩个最近的点之间的邻近度
设 dij 表示样本 X ( i ) 和 X ( j ) 之间的距离,D 表示类 Gi 和
ij
G j 之间距离
Dij 
min dij
X ( i ) Di , X ( j ) D j
36
最大距离

全链
 取自不同簇中的俩个最远的点之间邻近度作为簇的邻
近度,或者使用图的术语,不同的结点子集中俩个结
点之间的最长边 D 
max dij
ij
X ( i ) Gi , X ( j ) G j
•
•
•
•
•
•
•
•
•
•
•
37
平均距离

组平均(average linkage method)类间所有样本点
的平均距离
 该法利用了所有样本的信息,被认为是较好的系统聚
类法
•
•
•
•
•
•
•
38
算法





当算法使用最小距离dmin(Ci,Cj)衡量簇间距离时,有时称
它为最近邻聚类算法
如果当最近的簇之间的距离超过某个任意的阈值是聚类过程
就会终止,则成其为单连接算法
使用最小距离度量的凝聚层次聚类算法也成为最小生成树算
法
当算法使用最大距离dmax(Ci,Cj)衡量簇间距离时,有时
称它为最远邻聚类算法(farthest-neighbor clustering algorithm)
如果当最近的簇之间的最大距离超过某个任意的阈值是聚类
过程就会终止,则成其为全连接算法(complete-linkage
algorithm)
39
单连接算法


先将五个样本都分别看成是一个簇,最靠近的两个簇是3和4,
因为他们具有最小的簇间距离 D(3,4)=5.0
合并簇3和4,得到新簇集合1,2,(34),5更新距离矩阵


D(1,(34)) = min(D(1,3),D(1,4)) = min(20.6, 22.4) =
20.6
D(2,(34)) = min(D(2,3),D(2,4)) = min(14.1, 11.2) =
11.2
40
单连接算法
D(5,(34)) = min(D(3,5),D(4,5)) = min(25.0, 25.5) =
25.0
 原有簇1,2,5间的距离不变,故在四个簇1,2,(34),5中,最靠
近的两个簇是1和5,它们具有最小簇间距离D(1,5)=7.07

41
BIRCH


问题:
 大数据集
 I/O开销
BIRCH
 一次扫描
 处理噪音
 评估时间/空间效率
 BIRCH/CLARANS性能比较
42
算法必备知识

簇内:R和D反映了质心周围簇的紧凑程度 tightness

X0:中心点

R:点到中心点的平均距离

D:簇内的平均距离(成对)

X0 
N
i 1
Xi
N
2
(
X
i

X
0)
 i 1
N
R(
N
2
(
X
i

X
j
)
 i 1  j 1
N
D(
)
1
2
N
N  N  1
)
1
2
43
算法必备知识

簇间:closeness
 X01,X02:中心点
 D0:质心点欧几里德距离
 D1:质心点曼哈顿距离
1
2 2
D0  (( X 01  X 02 ) )
d
D1 | X 01  X 02 | | X 01(i )  X 02(i ) |
i 1
44
算法必备知识
D2:平均聚类间距离
 D3:平均聚类内距离
 D4:变化引导的增量距离

45
聚类特征向量

聚类特征CF(Clustering Feature):是一个三维向量,汇
总了对象簇的信息
 给定簇中n个d为对象或点{Xi},则该簇的CF定义如
CF = <n,LS,SS>
n
:簇中点的数目
 LS:n个点的线性和
(即
)
 SS:数据点的平方和
(即
)
46
CF

迭加性
 假定有两个不相交的簇C1和C2,分别具有聚类特征CF1
和CF2,那么由C1和C2合并而成的簇的聚类特征就是
CF1+CF2

CF树
 高度平衡
 平衡因子B:非叶节点可以拥有的孩子数
 L:叶子节点最多拥有L个元组
 阈值T:叶子节点中的子聚类的最大直径(半径)
 P:一个节点的空间
47
BIRCH
48
BIRCH
49
插入CF树

从根节点开始,自上而下选择最近的孩子节点

到达叶子节点后,检查最近的元组Li能否吸收Ent
 是,更新CF值
 否,是否可以添加一个新的元组

是,添加一个新的元组

否则,分裂最远的一对元组,作为种子,按最近距离重
新分配其它元组

更新每个非叶节点的CF信息,如果分裂节点,在父节点中
插入新的元组,检查分裂,直到root

合并:在某个非叶子节点Nj处停止分裂,发现Nj中最近的
两个元组,合并
50
BIRCH

处理方案
 第一种:将阈值定为所有叶条目的“最近邻居对”之
间距离的平均值,根据这个平均值得出的新的阈值,
相似的俩个叶条目将合并成一个
 第二种:孤立点处理。当孤立点分配R字节的空间,孤
立点是那些密度较低的叶条目。对整体而言,这些孤
立点是不重要的。当通过插入旧叶条目来重建CF树时,
新的CF树从俩个方面减少树的大小。首先通过增加阈
值,其次若磁盘空间溢出,通过吸收孤立点,直到磁
盘空间不溢出为止
51
BIRCH算法

BIRCH算法:
采用多阶段聚类技术,对数据集合进行单遍扫描后生成初步
簇,再经过一遍或多遍扫描改进聚类质量, CF树的重建类似于
B+树构建中的节点插入和节点分裂 。

算法优点:
对大型数据库的高效性和可扩展性
 支持增量聚类
 复杂度为O (n)


算法缺点:
CF树对节点中包含项的数目有限制,这可能导致节点并未对
应实际数据集的一个自然簇。
 不适合发现非球形的簇。

52
基于密度的聚类方法


基于密度的聚类方法将簇看作数据空间中由低密
度区域分隔开的高密度对象区域。
主要思想:
只要临近区域的密度(对象或数据点的数目)超过某个
阈值,就继续聚类,即对给定类中的每个数据点,在一个
给定范围的区域中必须至少包含某个数目的点。

基于密度的聚类方法可以用来过滤噪声孤立点数
据,发现任意形状的簇。
 DBSCAN:基于高密度连通区域聚类
 OPTICS:通过点排序识别聚类结构
53
DBSCAN

基于密度的簇是密度相连的点的集合

主要思想
 寻找被低密度区域分离的高密度区域
 只要临近区域的密度(单位大小上对象或数据点的数
目)超过某个阈值,就继续聚类
54
DBSCAN

两个参数:
 Eps:
邻域的最大半径
 MinPts:
一个核心对象以 Eps为半径的邻域内的最小顶
点数
p
MinPts = 5
Eps = 1 cm
q
55
DBSCAN

密度可达的(Density-reachable)
p1, …, pn, p1 = q, pn = p ,pi+1
是从pi关于Eps和MinPts 直接密度可达的,则对象p是
从对象q关于Eps和MinPts 密度可达的
 如果存在一个对象链
 密度可达性是直接
密度可达性的传递闭包,
p
这种关系是非对称的。
只有核心对象之间是
相互可达的。
p1
q
56
DBSCAN

密度相连的(Density-connected)
 如果对象集合D中存在一个对象o,使得对象p和q是从
o关于Eps 和 MinPts密度可达的,那么对象p和q是关
于Eps 和 MinPts密度相连的
 密度相连性是一个
对称的关系
p
q
o
57
DBSCAN

DBSCAN(Density-Based Spatial Clustering of Applications
with Noise)

该算法将具有足够高密度的区域划分为簇,并可以在带有
“噪音”的空间数据库中发现任意形状的聚类

不包含在任何簇中的对象被认为是“噪音”

定义簇为密度相连的点的最大集合

一个基于密度的簇是基于密度可达性的最大的密度相连的
对象
58
DBSCAN


密度 = 制定半径 (Eps)内点的个数
如果一个对象的 Eps 邻域至少包含最小数目
MinPts 个对象,则称该对象为核心对象(Core
point)
 集群内有多个核心对象


边界点( Border point )的Eps 邻域有少于MinPts
个对象, 但它的邻域中有核心对象
噪声点( Noise point )是除核心对象和边界点之
外的点
59
DBSCAN
60
DBSCAN
61
DBSCAN
62
DBSCAN
63
DBSCAN:核心对象、边界点、噪声点
Original Points
Point types: core,
border and noise
Eps = 10, MinPts = 4
64
DBSCAN:任意形状聚类
Original Points
Clusters
• 抗噪声
• 能处理各种形状和大小集群
65
DBSCAN: 参数敏感
66
DBSCAN: 算法

选任意节点 p

对于参数 Eps 和 MinPts,检索所有关于p密度可
达的顶点

如果 p 是核心对象, 一个簇形成

如果 p 是边界点, 没有有关于 p 密度可达的顶
点,扫描下一个节点

继续算法直到所有节点扫描一遍
67
OPTICS

在前面介绍的DBSCAN算法中


需要用户手动设置输入,并且聚类的类簇结果对这两个参数
的取值非常敏感
为了克服DBSCAN算法这一缺点,提出了OPTICS算法。
OPTICS并不显示的产生结果类簇,而是为聚类分析生成
一个增广的簇排序(比如,以可达距离为纵轴,样本点输
出次序为横轴的坐标图),这个排序代表了各样本点基于
密度的聚类结构。它包含的信息等价于从一个广泛的参数
设置所获得的基于密度的聚类,换句话说,从这个排序中
可以得到基于任何参数E和minPts的DBSCAN算法的聚类
结果。
68
OPTICS


对象p的核心距离:使p成为核心对象的最小Ɛ’。
如果p不是核心对象,那么p的核心距离没有任何
意义。
可达距离:对象q到对象p的可达距离是指p的核
心距离和p与q之间欧几里得距离之间的较大值。
如果p不是核心对象,p和q之间的可达距离没有
意义。
69
OPTICS

OPTICS算法生成一个有序对象列表,每个对象拥
有两个属性,核心距离和可达距离。利用这个列表,
可以获得任何领域半径小于的聚类。
70
OPTICS:通过点排序识别聚类结构

对于真实的,高维的数据集合而言,参数的设置
通常是依靠经验,难以确定。

绝大多数算法对参数值是非常敏感的:设置的细
微不同可能导致差别很大的聚类结果。

OPTICS算法通过对象排序识别聚类结构。

OPTICS没有显式地产生一个数据集合簇,它为自
动和交互的聚类分析计算一个簇排序。

这个次序代表了数据的基于密度的聚类结构。
71
基于密度的聚类方法

主要特征:
 发现任意形状的聚类
 处理噪声(孤立点数据)
 一次扫描
 需要密度参数作为终止条件
72
基于图论的聚类算法

目前有关图论的理论研究已经非常深入,并出现
了很多性能优异的算法,而且图具有很多优良特
性,用图论来解决聚类问题是一种有效方法
 MST_based
Clustering:基于最小生成树的聚类
 CHAMELEON:(变色龙)一个利用动态模型的层次聚
类算法

图的基本构成:
 节点表示数据项
 边表示一个节点v在另一个节点u的最相似点中,其权
重表示数据项间的相似度
73
稀疏图

稀疏图:只保留对象中与其最近邻之间的连接
 稀疏化方法:
断开相似度低于指定阈值的边
 保留连接到点的K个近邻边(后面用到的K邻近图)


优点:
 压缩数据量,节省了存储空间
 在密集和稀疏区域的数据项都同样能建模
 更好的聚类(断开了与较远对象的连接)
 可使用图划分算法
74
基本MST_based Clustering

它是除了K均值之外的另一个分裂层次聚类技术,
从邻近图的最小生成树开始,可看作用稀疏化找
出簇的应用。

它是根据MST中边的权值大小,断开权值大的边形
成一个森林,森林中每棵树就是一个聚类. 算法时
间复杂度为o (mlogn) (m 为边数, n 为顶点数) ,
能够处理任意形状和高维数据聚类问题
75
最小生成树算法

克鲁斯卡尔算法
 时间复杂度:
Oe log e  (e为边的个数)

普里姆算法
 时间复杂度:
O

n 
2
(n为结点个数)
破圈法
76
最小生成树聚类算法

输入:数据库中数据项

输出:经过聚类所得簇
 构造顶点的K-邻近相异度图
 计算图的最小生成树
 repeat

断开对应于最大相异度的边,创建新簇
 until
只剩下单个簇
77
评价

优点:
 简单易实现
 能够处理任意形状和高维数据聚类问题.

缺点:
 这个算法不能处理任意密度的情况,并且参数的设定也
有一定的难度
78
MST改进一

根据数据的最近邻原理,即一个对象与其最近邻
对象趋向于在同一个类中,从最小生成树中的一
个边开始,通过一个控制参数,逐步合并该边连接
的两个部分(两点之间的互联性还具有传递性,
这样将可以互联的所有点聚在一起即成为一个簇)

方法类似与基于密度的DBSCAN算法,根据点间的
可达性聚类
79
MST改进二

利用基本最小生成树聚类算法,清除相对较大的
边得到森林,对森林中的每棵树构造邻接矩阵,
以邻接矩阵中度最大的节点作为簇的中心,根据
各个结点距中心的距离按最小距离归类,完成聚
类
80
改进评价


优点:
 解决了基本算法的问题,它可得到任意形状、
任意密度的类
 对于高维数据集,只要计算出相似度矩阵就能
用本算法进行求解,该算法还有良好的扩展性
 与输入顺序没有关系,能发现离群点等优良特性.
缺点:
 生成MST的时间复杂度成为算法效率的瓶颈
81
Chameleon

一个利用动态模型的层次聚类算法
 基于动态模型的合并过程有利于自然的和同构的聚类
的发现,只要定义了相似度函数就可以用所有类型的
数据
 通过一个图划分算法将数据对象聚类为大量相对较小
的子聚类,然后利用一个凝聚的层次聚类算法通过反
复的合并子类来找到真正的结果簇。
 既考虑了互联性又考虑了簇间的接近性,特别是簇内
部的特征来确定相似的子簇,这样它就不依赖于一个
静态的用户提供的模型,能够自动地适应被合并的内
部特征
82
Chameleon基本步骤

Chameleon算法基于通常采用的K-最邻近图方法
描述他的对象
83
Chameleon——比较

以往算法的不足:
 只处理符合某静态模型的簇
 忽略了不同簇间的信息
忽略互联性:只考虑簇
间距离较近数据对的多
少
 忽略接近性:只考虑簇
间数据的最近距离

变色龙算法发现了这样的局限性,它同时考虑互联性和
接近性,使得聚类效果大大提高
84
相对互连性(RI)

相对互联性函数:
RI Ci , C j  
 EC(

ECCi ,C j 
1
ECCi  ECC j
2

Ci, Cj):连接簇Ci和Cj的所有边的权重
 EC(
Ci):把簇Ci划分为两个大致相等部分的最小
等分线切断的所有边的权重和。
 相对互连性能处理簇间形状不同和互连程度不同
的问题。
85
相对接近性(RC)

相对接近性函数:
RCCi , C j  
S ECCi ,C j 
Ci
Ci  C j


S ECCi 
Cj
Ci  C j
S ECC j
:连接簇Ci和Cj的边的平均权重。
:把簇Ci划分为两个大致相等部分的
最小等分线切断的所有边的平均权重
86
聚类——Chameleon两阶段算法

第一阶段:用图形划分算法把K-最邻近图使用划
分算法将其划分为较小的相对独立的子簇;

第二阶段:用一个凝聚的层次聚类算法反复合并
子类找到真正的结果簇
87
第一阶段:得子簇

运用hMetis算法
 hMetis算法根据最小化截断的边的权重和来分割K-
最邻近图
 hMetis多层超图二分算法:提供高质量快速的划分
概化过程:将原始图通过概化操
作产出一系列逐步缩小的概图
初始分割过程:应用超图分割算
法对最小的概图进行分割
反概化和精化过程:最小概图的
二分反向逐层映射回原图,并在
每一层进行精化操作,不断提高
分割质量
88
第二阶段:合并子簇

用户指定阈值(TRI和TRC)
 访问每个簇,计算它与临近簇的RI和RC。
 合并RI和RC分别超过TRI和TRC的簇对。若满足条件的临
近簇多于一个,合并具有最高绝对互连性的簇。
 重复上两步,直到没有可合并的簇。

函数定义
 度量函数:F(
Ci, Cj)=RI( Ci, Cj)× RC( Ci,
Cj)α(选择函数值最大的两个簇)
 α>1,更重视相对近似性
 α<1,更重视相对互连性
 选择使该函数值最大的簇对合并。
89
算法


输入:数据库中数据项
输出:经过聚类所得簇
 构造K-最邻近图
 使用多层图划分算法划分图(使用hMetis算法)
 Repeat
根据相对互联性和接近性合并簇
 Until不再有可以合并的簇

90
实验结果对比
Chameleon算法聚类结果
CURE算法聚类结果
91
Chameleon总结


有效的聚类空间数据,即使存在噪声点和离群点,
并且簇具有不同形状、大小、密度
问题:
 k-最近邻居图中k值的选取。
 用户指定方式中阈值的选取。
 使用稀疏化和图划分算法的到的对象组群必须是子簇,
否则第二阶段将导致错误,因它不会将已经错误的放
到一起的对象分开(对于高维数据时常发生)

在最坏情况下,高维数据的处理代价可能需要
O(n2)的时间。
92
模糊聚类


硬聚类
 对象只能被划分到一个簇中,即使它到两个质
心距离相等或接近。
模糊聚类(软聚类)
 对象不被明确的划分给某个簇,而是给对象赋
予一个权值,指明它属于某个簇的程度。
 对象可以以0和1之间的某个隶属度属于一个簇。
93
基于网格的聚类


聚类分析的算法有很多,其中一大类的传统算法
是基于距离的,这种基于距离的缺点在于只能发
现球状的簇、处理大数据集和高维数据集时不够
有效,另一方面它能发现的聚类个数常常依赖于
用户参数的指定,这对用户来说经常是很困难的。
基于网格(dding-based)指将对象空间量化为有限
数目的单元,形成一个网格结构,所有聚类都在
这个网格结构上进行。
94
基于网格的聚类



基本思想是将每个属性的可能值分割成许多相邻
的区间,创建网格单元的集合(对于的讨论我们
假设属性值是序数的、区间的或者连续的)。
每个对象落入一个网格单元,网格单元对应的属
性区间包含该对象的值。
优点是它的处理速度很快,其处理时间独立于数
据对象的数目,只与量化空间中每一维的单元数
目有关。
95
STING:统计信息网格

STING是一种基于网格的多分辨率聚类技术,它将
空间区域划分为矩形单元。
 针对不同级别的分辨率,通常存在多个级别的
矩形单元,
 这些单元形成了一个层次结构:高层的每个单
元被划分为多个低一层的单元。
 关于每个网格单元属性的统计信息(例如平均
值、最大值和最小值)被预先计算和存储。这
些统计信息用于回答查询。
96
STING:统计信息网格
网格中常用参数
 count-网格中对象数目
 mean-网格中所有值的平均值
 stdev-网格中属性值的标准偏差
 min-网格中属性值的最小值
 max-网格中属性值的最大值
 distribution-网格中属性值符合的分布类型。如正
态分布、均匀分布、指数分布或者none(分布类
型未知)
97
STING:统计信息网格
STING聚类的层次结构
98
STING: 统计信息网格


当数据加载到数据库时。最底层的单元参数直接
由数据计算,若分布类型事先知道,可以用户直
接指定,而较高层的分布类型可以基于它对应的
低层单元多数的分布类型,用一个阈值过滤过程
的合取来计算,若低层分布彼此不同,则高层分
布设置为none。
高层单元的统计参数可以很容易的从低层单元的
参数计算得到。
99
STING:统计信息网格
统计处理步骤:
 使用自顶向下的方法回答空间数据的查询
从一个预先选择的层次开始-通常包含少量的单
元,为当前层的每个单元计算置信区间
 不相关的单元不再考虑
 当检查完当前层,接着检查下一个低层次
 重复这个过程直到达到底层
100
STING:统计信息网格



查找加利福尼亚州地区的房屋以得到房产相关方
面年龄数据。约束条件:单元地区至少有100栋房
屋;70%的房屋其价格在$2000到$30000之间
查询语言(sql语言)
SELECT RANGE(age)
FROM house-map
WHERE price RANGE (2000,30000)
WITH PERCENT (0.7, 1)
AND AREA (100, +)
AND LOCATION California
101
STING:统计信息网格
算法步骤:
1 从一个层次开始
2 对于这一层次的每个单元格,我们计算查询相关的属性值
3 从计算的属性值及其约束条件中,我们将每一个单元格标
注成相关或者不相关
4 如果这一层是底层,则转到步骤6,否则就行步骤5
5 我们由层次结构转到下一层依照步骤2进行计算
6 查询结果满足,转到步骤8,否则转到步骤7
7 恢复数据到相关的单元格进一步处理以得到满意结果,转
到步骤8
8 停止
102
STING:统计信息网格
103
STING:统计信息网格
优点如下:
 计算是独立于查询的;
 有利于并行处理和增量更新;

效率很高。
 STING算法扫描数据库一次来计算单元的统计信息,因
此产生聚类的时间复杂度是o(n),其中n是对象的数目。
在层次结构建立后,查询处理时间是,这里g是最低层
网格单元的数目o(g),通常远小于n。
104
STING:统计信息网格
缺点如下:

如果粒度比较细,处理的代价会显著增加;但是,如果网
格结构最低层的粒度太粗,将会降低聚类分析的质量;

在构建一个父亲单元时没有考虑孩子单元和其相邻单元之
间的关系,因此,结果簇的形状是isothetic,即所有的
聚类边界或者是水平的,或者是竖直的,没有斜的分界线。
 尽管该技术有快速的处理速度,但可能降低簇的质量
和精确性
105
基于模型的聚类

基于模型的方法试图优化给定数据和某数学模型
之间的拟合。

通常基于这样的假设:数据根据潜在的一系列概
率分布生成。

两种方案:
 统计学方案:EM和
COBWEB
 神经网络方案:SOM
106
基于模型的聚类

基于统计模型:通常一种方便而有效的做法是,假定数据
是由一个统计过程产生的,并通过找出最佳拟合数据的统
计模型来描述数据,其中统计模型用分布和该分布的一组
参数描述

基于模型的算法通过构建反映数据点空间分布的密度函数
或其他来定位聚类

它的某些算法基于标准的统计数字自动决定聚类的数目,
考虑噪声数据和孤立点,从而产生健壮的聚类
107
EM:最大似然估计混合模型参数

期望最大化算法是一种流行的迭代求精算法。它可以看作
是k均值算法的一种扩展,不过EM不把每一个对象指派到
特定的簇,而是根据一个代表隶属度概率的权重将每个对
象指派到簇,即簇间没有严格的边界

假定数据是从k个概率分布而来,每个簇用一个概率分布
描述。

目标:得到概率分布的参数

算法:期望最大化

输出:概率分布参数,数据分配到聚类
108
混合模型

混合模型:使用若干统计分布对数据建模,每个
分布对应于一个簇,而每个分布的参数提供对应
簇的描述

将数据看作从不同的概率分布得到观测值的集合。
概率分布可以是任何分布,但通常是多元正态的,
因为这种类型的分布已被人们完全理解,容易从
数学上进行处理,并已经证明在许多情况下都恩
能够产生好的结果
109
混合模型





假定有k个簇,m个对象。则,第j个簇的参数为
j = (j, j)
选取第j个分布产生一个对象的概率是wj,其中w1
+ …+ wk = 1
第i个对象来自第j个分布的概率是 p j ( xi |  j )
则第i个对象出现在第j个簇中的概率是 w j p j ( xi |  j )
则某个对象x出现的概率是
k
prob( x |  )   w j p j ( x |  j )
j 1
110
混合模型
如果对象以独立的方式产生则数据集X的概率为:
m
m
i 1
i 1 j 1
k
0.0
0.05
0.10
0.15
prob( X | )   prob( xi | )  w j p j ( xi |  j )
| | | |||||||||||||||||||| ||||||| || ||
-10
-5
|| |||||||| |||||| ||| ||| | |
0
| | | ||||||| |||| |||||||||||||||||||| ||||||||| ||
5
10
111
示例:
prob( xi | ) 

1
e
2 
( x )2
2 2
1  (4,2)  2  (4,2)
1  (4,2)  2  (4,2)
1
prob( x | ) 
e
4 2
( x  4) 2

8
1

e
4 2
( x 4) 2

8
112
最大化参数估计

最大似然估计
 如果我们有从某个分布的出的一组数据,但不
知道分布的参数,则可以选择能最大化的参数。
m
prob( X | )  
j 1

1
e
2 
( x j  )2
2 2
 也就是最大化
( xi   ) 2
log prob( X | )  
 0.5m log 2  m log
2
2
i 1
m
113
EM:使用最大似然估计混合模型参数
选择模型参数的初始值
重复以下两个步骤
 Expectation step:
对每个对象,计算它们属于各个分布的概率,
即prob(xi|i)
 Maximation step:
根据上步得出的概率,计算能够最大化似然
函数的新的参数估计
直到参数不再改变
114
EM:使用最大似然估计混合模型参数

期望步对应于将每个对象以某一概率指派到每个簇
(分布)中

最大化步对应选取分布的所有参数以及权值参数来最
大化似然(参数一般由最大似然估计推导出来的公式
进行计算)
 对于单个正态分布参数最大似然估计就是分布中对
象的均值
 混合分布和EM算法背景下,均值计算需要修改以说
明每个对象以一定的概率属于某分布
115
示例
116
示例
117
示例
118
示例
119
示例
120
示例
121
算法评价




比K均值更加具有普遍性
聚类由几个参数就能表示(用模型刻画簇)
当簇只包含少量数据时,不能很好的处理
在估计簇的个数,或者说是选择适当模型方面存
在问题
122
概念聚类



概念聚类(一种机器学习聚类方法)
 概念具有可解释性
 给定一组未标记对象,产生对象的分类模式
 与传统聚类不同的是不仅确定对象分组外,而
且找出每组对象的特征描述
概念聚类是一个两步的过程:
 首先聚类然后给出特征描述
聚类质量不再只是个体对象的函数,而且加入了
如导出概念描述的一般性和简单性等因素
123
COBWEB

COBWEB (Fisher’87)
 一种流行的简单的增量的概念聚类方法
 输入对象用分类属性-值对描述
 以分类树的形式创建层次聚类
 树中的每个节点代表一个概念,并且包含这个
概念的概率描述
124
分类树
125
决策树
age?
<=30
overcast
31..40
student?
no
no
yes
yes
yes
>40
credit rating?
excellent
fair
no
126
区别


分类树:
 分类树标记节点。每个节点对应一个概念,包
含该概念的概率描述,汇总分类在该节点下的
对象
 概率描述包含概念的概率和一个条件概率
p(Ai=vij|ck) ,其中Ai=vij是一个属性---值对
(第i个属性取它第j个值的概率)
决策树
 决策树标记每个边,节点采用逻辑描述。
127
分类效用(category utility)




采用启发式分类度量——分类效用来指导树的创
建
属性值的概率: p(Ai=vij) 表示此属性某个值出
现的概率,越大,表示这个值越能影响预测
类内相似性: p(Ai=vij|ck) 该值越大,表示共
享该属性---值对的类成员的比例越大,就更加可
预测该对是属于类成员的
类间相异性: p(ck|Ai=vij) 该值越大,共享该
属性---值对的其他类类成员就越少,就更加可预
测该对是属于类成员的
128
分类效用(category utility)
能够正确猜测属
性值的期望数目
未知划分时正确猜测
的期望数目
129
COBWEB

将对象增量地加入到分类树中。


COBWEB算法沿着一条适当的路径向下,修改计数,
寻找可以分类该对象的最好节点。
也计算为给定对象创建一个新的节点所产生的分
类效用。
 它与基于现存节点的计算相比较。根据产生最高分类
效用的划分,对象被置于一个已存在的类,或者为它
创建一个新类。

可以自动修正划分中类的数目。
 它不需要用户提供这样的输入参数。
130
COBWEB



在一个对象进入时,有四种选择
 将对象置于最好的分类中
 加入一个新分类,包含此对象
 将两个现有分类合并,并把对象加入
 将现有分类分裂,并加入对象
以上前两种操作对于输入顺序比较敏感,而后两
个则是针对这个问题附加的两个操作
选择最大化category utility的操作执行
131
算法评价







基于概率模型,灵活性较强
处理多属性数据
自动修正划分中类的数目
不学要用户提供这样的输入参数
假定属性的概率分布相互独立,由于属性之间常
常存在相关,实际上往往不成立
复杂度不仅依赖属性数目,更依赖于每个属性值
的数目
不适用于大型数据
132
数据挖掘与商务智能
Data Mining & Business Intelligence
聚类技术的商务应用案例
西安电子科技大学 软件学院
主讲人:黄健斌
133
聚类分析的基本原理

聚类分析又称群分析,它是研究(样品或指标)
分类问题的一种多元统计方法,所谓类,通俗地
说,就是指相似元素的集合。

(1)样品聚类:
 样品聚类在统计学中又称为Q
型聚类。用SPSS 的术语
来说就是对事件(Cases)进行聚类,或是说对观测量进
行聚类。它是根据被观测的 对象的各种特征,即反映
被观测对象的特征的各变量值进行分类。
134
聚类分析的基本原理

(2)变量聚类:


变量聚类在统计学又称为R型聚类。反映同一事物特点的变
量有很多,我们往往根据所研究的问题选择部分变量对事物
的某一方面进行 研究。由于人类对客观事物的认识是有限
的,往往难以找出彼此独立的有代表性的变量,而影响对问
题的进一步认识和研究。例如在回归 分析中,由于自变量
的共线性导致偏回归系数不能真正反映自变量对 因变量的
影响等。因此往往先要进行变量聚类,找出彼此独立且有代
表性的自变量,而又不丢失大部分信息。
值得提出的是将聚类分析和其它方法联合起来使
用,如判别分析、主成分分析、回归分析等往往
效果更好。
135
常用聚类算法

K均值(K-means) 算法

两步聚类

层次聚类

其他
136
聚类的典型应用

模式识别
空间数据分析
 在GIS中,通过聚类发现特征空间来建立主题索引;
 在空间数据挖掘中,检测并解释空间中的簇;
图象处理
经济学 (尤其是市场研究方面)
WWW文档分类;分析WEB日志数据来发现相似的访问模
式
Cluster analysis of data

Customer segmentation

Fraud detection

Missing value prediction





137
快速聚类法的SPSS操作详解

K-均值聚类法又叫快速聚类法,可以用于大量数据进行聚
类分析的情形。它是一种非分层的聚类方法。这种方法占
用内存少、计算量、 处理速度快,特别适合大样本的聚
类分析。它的基本操作步骤如下:






1、指定聚类数目k,应由用户指定需要聚成多少类,最终也只能
输出关于它的唯一解。这点不同于层次聚类。
2、确定k个初始类的中心。两种方式:一种是用户指定方式,二
是根据数据本身结构的中心初步确定每个类别的原始中心点。
3、根据距离最近原则进行分类。逐一计算每一记录到各个中心点
的距离,把各个记录按照距离最近的原则归入各个类别,并计算
新形成类 别的中心点
4、按照新的中心位置,重新计算每一记录距离新的类别中心点的
距离,并重新进行归类。
5、重复步骤4,直到达到一定的收敛标准。
这种方法也常称为逐步聚类分析,即先把被聚对象进行初
始分类, 然后逐步调整,得到最终分类。
138
SPSS在聚类分析中的应用


Step01:选定对话框
 打开SPSS软件,选择菜单栏中的【File(文件)】
→【Open(打开)】→【Data(数据)】命令,弹出
【Open Data(打开数据)】对话框。
Step02:选定打开文件类型
 在【Files of type(文件类型)】下拉列表框中指
定打开Excel文件类型。接着,选择iris.xls文件。
最后单击【Open(打开)】按钮。
139
SPSS在聚类分析中的应用

Step03:设置变量名称

弹出的对话框中的【Read variable names from the fi rst row of
date(从第一行数据读取变量名)】复选框表示SPSS将Excel工
作表的第一行设定为SPSS的变量名称,【Range(范围)】文本
框表示选定Excel文件导入SPSS的数据范围。这里,保持系统
默认选项。
140
SPSS在聚类分析中的应用

Step04:完成操作
 最后,单击【OK(确定)】按钮,数据即可导入成功。此
时,SPSS的数据浏览窗口中会出现相关的数据内容。
141
SPSS在聚类分析中的应用

Step05:打开对话框

选择菜单栏中的【Analyze(分析)】→【Classify(分类)】
→ 【K-Means Cluster ( K 均 值 聚 类 ) 】 命 令 , 弹 出 【KMeans Cluster Analysis(K均值聚类分析)】对话框,这是快
速聚类分析的主操作窗口。
142
SPSS在聚类分析中的应用

Step06:选择聚类分析变量
 在【K-Means
Cluster Analysis(K均值聚类分析)】对
话框左侧的候选变量列表框中选择进行聚类分析的变
量,将其添加至【Variables(变量)】列表框中。同时
可以选择一个标识变量移入【Label Cases by(个案标
记依据)】列表框中。

Step07:确定分类个数
 在【Number
of Clusters(聚类数)】列表框中,可以输
入确定的聚类分析数目,用户可以根据需要自行修改
调整。系统默认的聚类数为2。
143
SPSS在聚类分析中的应用

Step08:选择聚类方法
 在【Method(方法)】下拉列表框中可以选择
聚 类 方 法 。 系 统 默 认 值 选 择 【Iterative and
classify(迭代与分类)】项。

Iterate and classify:选择初始类中心,在迭代过程中
不断更新聚类中心。把观测量分派到与之最近的以
类中心为标志的类中去。

Classify only:只使用初始类中心对观测量进行分类,
聚类中心始终不变。
144
SPSS在聚类分析中的应用

Step09:聚类中心的输入与输出
 在主对话框中,【Cluster
Centers(聚类中心)】选项
组表示输入和输出聚类中心。用户可以指定外部文件
或数据集作为初始聚类中心点,也可以将聚类分析的
聚类中心结果输出到指定文件或数据集 中。

Read initial:要求使用指定数据文件中的观测量或建
立数据集作为初始类中心。

Write final as File:要求把聚类结果中的各类中心数
据保存到指定的文件或数据集中。
145
SPSS在聚类分析中的应用

Step10:输出聚类结果
在
主对话框中单击
【Save(保存)】按钮,
弹 出 【Save New
Variables ( 保 存 新 变
量)】对话框,它用于
选择保存新变量。
146
SPSS在聚类分析中的应用
聚类结果
147
SPSS在聚类分析中的应用
聚类结果
148
149