层次聚类分析,超精彩 (3)

合集下载

代谢物的层次聚类各个参数

代谢物的层次聚类各个参数

代谢物的层次聚类各个参数1.引言1.1 概述概述部分的内容:代谢物的层次聚类是一种通过分析代谢物之间的相似性,将它们进行分组的方法。

代谢物是生物体内参与化学反应的物质,其种类繁多且复杂。

通过聚类分析,我们可以将相似的代谢物归为一类,从而更好地理解它们在生物体内的功能及相互关系。

在进行代谢物的层次聚类时,我们需要考虑一些关键参数,这些参数在聚类过程中起到重要的作用。

例如,聚类方法是我们进行聚类分析的基础,不同的聚类方法会导致不同的聚类结果。

另外,聚类参数也是影响聚类结果的关键因素,例如我们可以设定相似性的阈值来决定是否将两个代谢物分为同一类。

本文将详细介绍代谢物的层次聚类方法以及各个参数的定义和作用。

首先,我们将介绍常用的聚类方法,包括层次聚类、K均值聚类等,以及它们在代谢物分析中的优缺点。

其次,我们将详细讨论聚类参数的定义和作用,例如相似性度量、聚类阈值等。

通过对这些参数的理解和合理调整,我们可以得到更准确、可解释性强的代谢物聚类结果。

本文的目的是为了提供一种全面、系统的代谢物层次聚类分析方法,并探讨各个参数在聚类过程中的作用。

希望通过本文的研究,能够为代谢物的聚类分析提供一定的指导和参考,进一步推动代谢组学领域的发展和应用。

1.2文章结构文章结构部分是对整篇文章的结构组织进行说明,目的是为读者提供一个清晰的导航和理解文章的框架。

下面是对文章结构的介绍:1. 引言1.1 概述在这个部分,我将介绍代谢物的层次聚类的概念和应用背景。

我将解释代谢物层次聚类在生物医学研究中的重要性,并强调该方法对于代谢组学研究的意义。

1.2 文章结构本文将按照以下结构组织:第二部分是正文部分,主要讲述代谢物的层次聚类方法和各个参数的定义和作用。

这部分将详细介绍聚类方法和参数,以便读者了解代谢物层次聚类的基本原理和操作步骤。

第三部分是结论部分,总结了本文的主要观点和研究成果。

在总结中,我将强调代谢物的层次聚类在代谢组学领域的应用前景,并提出一些建议和展望。

聚类分析的类型与选择

聚类分析的类型与选择

聚类分析的类型与选择聚类分析是一种常用的数据挖掘技术,可以将数据按照某种相似性进行分组。

通过聚类分析,我们可以发现数据中的潜在规律和结构,帮助我们更好地理解数据,并做出相应的决策。

本文将介绍聚类分析的常见类型,并讨论如何选择适合的聚类方法。

1.聚类分析的类型聚类分析有多种类型,常见的包括层次聚类分析和k均值聚类分析。

下面将分别介绍这两种聚类方法。

1.1层次聚类分析层次聚类分析是一种自下而上的聚类方法,它通过计算数据之间的相似度或距离,将相似的数据逐步合并成簇。

这种方法对数据的层次结构有较好的表示,能够发现不同层次的聚类结构。

层次聚类分析的优点之一是不需要预先指定聚类的个数,但计算复杂度较高,对大规模数据处理存在困难。

另外,它对异常值敏感,若存在异常值可能影响聚类结果。

1.2k均值聚类分析k均值聚类分析是一种基于划分的聚类方法,它将数据划分成k个互不重叠的簇,使得簇内的数据相似度较高,簇间的数据相似度较低。

该方法通过迭代计算簇的中心和重新分配数据来实现聚类。

k均值聚类分析的优点在于计算简单、效果较好,适用于大规模数据集。

但该方法对初始簇中心的选择较为敏感,容易收敛于局部最优解。

2.选择合适的聚类方法在选择聚类方法时,应根据数据的特点和目标进行判断。

下面列举几个常见的选择因素,供参考:2.1数据特点需要考虑数据的特点,如数据的维度、规模、密度等。

对于高维度数据,层次聚类分析可能更适用;而对于大规模数据,k均值聚类分析常常更为合适。

2.2聚类目标需要考虑聚类的目标。

如果希望发现层次结构、发现数据的内在关联性,层次聚类分析是一个不错的选择。

而如果目标是将数据划分成互不重叠的簇,并且希望聚类结果能较好地解释数据的差异性,k均值聚类分析更为合适。

2.3数据质量数据质量也是选择聚类方法的重要因素。

层次聚类分析对异常值比较敏感,如果数据中存在异常值,使用k均值聚类分析可能更好。

选择合适的聚类方法需要综合考虑数据特点、聚类目标和数据质量等因素。

层次聚类的评价

层次聚类的评价

层次聚类的评价---共性分类相关系数(cophenetic correlation coeffieient,CPCC)一个聚类树的共性分类相关性是指由聚类树得到的共性分类距离与构造树时的原始距离(相异性)之间的线性相关系数,因此它是对聚类树在多大程度上代表了样本之间相异性的度量。

MATLAB中,用cohenetic计算该相关系数,输入参数为pdist 函数输出的样本对距离向量Y和由linkage函数输出的层次聚类树Z,相关系数越接近于1,说明聚类效果越好。

该系数的计算公式为:其中,Y是Y中样本i和j之间的距离,ij Z是Z(:,3)中样本i和j的共ij性分类距离,y和z分别是Y和Z(:,3)的平均值。

聚类个数的选择Inconsistent函数用来计算层次聚类树矩阵Z中每次并类得到的链接的不一致系数,输入参数为linkage函数创建的聚类树矩阵Z和计算涉及的链接的层数d,可以理解为计算的深度,d省略时默认为2。

输出参数为一个(n-1)*4的矩阵,第4列代表不一致系数。

在并类过程中,如果某一次并类所对应的不一致系数较上一次有大幅增加,说明该次并类的效果不好,而它上一次的并类效果是比较好的,不一致系数增加幅度越大,说明上一次并类效果越好。

在类的个数尽量少的前提下,可参照不一致系数的变化,确定最终的分类个数。

如果最后3次聚类的不一致系数为3.1333,1.2083和2.5671,这说明倒数第一类并类的效果是比较好的,此时原样品被分为2类。

聚类效果的评价聚类的有效性可以用凝聚度和分离度来衡量,凝聚度度量的是类中对象如何紧密相关,分离度度量的是某个类不同于其他类的地方。

轮廓值(silhouette value )方法结合了凝聚度和分离度,它衡量的是某个点和所在类其它点的相似度与其他类点的相似度的比较,定义为min((,:),2)()()max((),min((,:)))b i a i S i a i b i -= 其中,a(i)是第i 个点与所在类中其他点的距离的平均值,b(i,k)是第i 个点与另一个类k 中的点的距离的平均值,S(i)是第i 个点得轮廓值,值域在[-1,1]。

聚类算法(五)--层次聚类(系统聚类)及超易懂实例分析

聚类算法(五)--层次聚类(系统聚类)及超易懂实例分析

聚类算法(五)--层次聚类(系统聚类)及超易懂实例分析博客上看到的,叫做层次聚类,但是《医学统计学》上叫系统聚类(chapter21)思想很简单,想象成⼀颗倒⽴的树,叶节点为样本本⾝,根据样本之间的距离(相似系数),将最近的两样本合并到⼀个根节点,计算新的根节点与其他样本的距离(类间相似系数),距离最⼩的合为新的根节点。

以此类推对于样本X=(x1,x2,,,x m),共n个样品,m个特征,我们可以考虑两种情形聚类R型聚类:m个特征之间的聚类,可以理解为⼀种降维。

Q型聚类:n个样品之间的聚类,这就是⼀般意义上机器学习中的系统聚类(⽂中的下标i、j在R型、Q型中的含义不⼀样,聪明的读者⾃⾏分辨)相似系数:R型(真正意义上的相似系数)(r)$r_{ij}=\frac{\left | \sum \left ( X_{i}-\bar{X_{i}} \right )\left ( X_{j}-\bar{X_{j}} \right ) \right |}{\sqrt{\sum \left ( X_{i}-\bar{X_{i}} \right )^{2}\sum \left ( X_{j}-\bar{X_{j}} \right )^{2}}}$可以看到$r_{ij}$越⼤标明两特征相似程度越⾼Q型(真正意义上的样品距离)(d)闵可夫斯基(Minkowski)距离:$\sqrt[p]{\left | x-\mu _{i} \right |^{p}}$Minkowski距离没有考虑变量之间的相关关系。

引进马⽒距离:$d_{ij}={\mathbf{X}}'\mathbf{S}^{-1}\mathbf{X}$其中$X=(X_{i1}-X_{j1} \right , X_{i2}-X_{j2} \right, X_{im}-X_{jm})$(不明原因的公式不正确显⽰)类间相似系数:最⼤相似系数法r=Max(r)D=Min(d)最⼩相似系数法r=Min(r)D=Max(d)可以看出,就是⼈为规定了,当某两个指标或样品合并后,新的样本(或指标)与上⼀节点样品(或指标)的距离(或相似系数)的选取现举实例说明测量了300名成年⼥⼦⾝⾼(X1)、下肢长(X2)、腰围(X3)、胸围(X4)得到相似系数矩阵可以看到X1,X2的相似系数最⼤,所以将X1,X2合并为G5X3变为G3,X4变为G4G3与G4的相似系数不变,为0.73G5与G3、G5与G4的类间相似系数采⽤最⼤相似系数法G5与G3的类间相似系数r = Max r即$r_{53}=Max(r_{13},r_{23})=Max(0.09,0.05)=0.09$$r_{54}=Max(r_{14},r_{24})=Max(0.23,0.17)=0.23$所以有根据上述步骤,直到所有的类都归为⼀类。

层次聚类

层次聚类
对于复杂的数据来说这个是很难事先判定的。尽管层次聚类的方法实现的 很简单,但是偶尔会遇见合并或分裂点的抉择的困难。这样的抉择是特别 关键的,因为只要其中的两个对象被合并或者分裂,接下来的处理将只能 在新生成的簇中完成。已形成的处理就不能被撤消,两个聚类之间也不能 交换对象。如果在某个阶段没有选择合并或分裂的决策,就非常可能会导 致不高质量的聚类结果。而且这种聚类方法不具有特别好的可伸缩性,因 为他们合并或分裂的决策需要经过检测和估算大量的对象或簇。
avg i j
pci

p j
'
p p /nn
' i
j
二.簇间距离度量方法
d (c , c ) m m
mean i j i
j
c ,c
i
j
三.层次聚类方法存在的不足
在凝聚的层次聚类方法和分裂的层次聚类的所有的方法中,都需要用户提
供所希望所得到的聚类的单个数量和阈值作为聚类分析的终止条件,但是
四.层次聚类的MATLAB实现
plot3(X1(:,1),X1(:,2),X1(:,3),'*','MarkerSize',8); grid; %变颜色 hold on; for t=1:length(T1) if(T1(t)==1)
plot3(X1(t,1),X1(t,2),X1(t,3),'Marker','*','Color' ,'r'); elseif(T1(t)==2) plot3(X1(t,1),X1(t,2),X1(t,3),'Marker','*','Color' ,'b'); elseif(T1(t)==3) plot3(X1(t,1),X1(t,2),X1(t,3),'Marker','*','Color' ,'g'); elseif(T1(t)==4) end end hold on; xlabel ('X'); ylabel ('Y'); zlabel ('Z'); title('训练数据'); xlabel('样本'); ylabel('类间距离'); title('训练数据'); X2=[1702.8 1877.93 1860.96 867.81 2334.68 1831.49 1713.11 460.69 3274.77 2374.98 3346.98 2271.89 3482.97 1783.64 1597.99 198.83 3250.45 1494.63 2072.59 1597.03 1921.52

层次聚类算法总结

层次聚类算法总结

层次聚类算法总结层次聚类算法的总结一、引言层次聚类算法是一种常用的数据聚类方法,它通过逐步合并或分割数据来构建聚类层次结构。

本文将对层次聚类算法进行总结,包括算法原理、应用领域以及算法的优缺点。

二、算法原理层次聚类算法主要包括凝聚型层次聚类和分裂型层次聚类两种类型。

其中,凝聚型层次聚类是自底向上的合并过程,而分裂型层次聚类是自顶向下的分割过程。

1. 凝聚型层次聚类凝聚型层次聚类从每个数据点作为一个独立的类开始,然后逐步合并最相似的类,直到达到预设的聚类数目或者合并所有数据点为止。

常用的合并策略有单链接、完全链接和平均链接等。

- 单链接:将两个最相似的类合并,其中最相似的类定义为两个类中最近的两个数据点之间的距离。

- 完全链接:将两个最相似的类合并,其中最相似的类定义为两个类中最远的两个数据点之间的距离。

- 平均链接:将两个最相似的类合并,其中最相似的类定义为两个类中所有数据点之间距离的平均值。

2. 分裂型层次聚类分裂型层次聚类从所有数据点作为一个类开始,然后逐步将类分裂成更小的子类,直到达到预设的聚类数目或者每个类只包含一个数据点为止。

常用的分裂策略有K-means算法、二分K-means算法等。

三、应用领域层次聚类算法在许多领域都有广泛的应用,下面列举几个常见的应用领域。

1. 生物学层次聚类算法可以用于基因表达谱数据的聚类分析,帮助研究人员发现不同基因的表达模式,从而揭示基因之间的相互关系。

2. 图像处理层次聚类算法可以用于图像分割,将相似的像素点聚类到同一个区域,实现图像的分割和识别。

3. 社交网络层次聚类算法可以用于社交网络中的用户聚类,将具有相似兴趣和行为模式的用户聚集在一起,为推荐系统和个性化推送提供基础。

四、优缺点分析层次聚类算法具有以下优点:1. 不需要预先指定聚类数目,能够自动构建聚类层次结构。

2. 可以处理任意形状和大小的聚类。

3. 聚类结果具有层次结构,方便后续的分析和解释。

层次聚类分析

层次聚类分析

D(0)
表1
D(0) G1={X1}G2={X2}G3={X3}G4={X4}G5={X5} G1={X1} 0
G2={X2} 1
G3={X3} 2.5
0
1.5 0
G4={X4} 6
G5={X5} 8
5
7
3.5
5.5
0
2 0
D(1)
表2
D(1) G6={G1, G2} G3={X3} G4={X4} G5={X5} G6 0 1.5 5 7 0 3.5 5.5 0 2 0 G3 G4 G5
层次聚类分析
hierarchical clustering method
聚类分析也是一种分类技术。是研究“ 物以类聚”的一种方法。与多元分析的 其他方法相比,该方法理论上还不完善 ,但由于它能解决许多实际问题,很受 人们的重视,应用方面取得了很大成功 。
举 例
对10位应聘者做智能检验。3项指标X,Y 和Z分别表示数学推理能力,空间想象能 力和语言理解能力。其得分如下,选择合 适的统计方法对应聘者进行分类。
D2(1) G6={X1, X2} G3={X3}
G6 0 4
G3
G4
G5
0
G4={X4}
G5={X5}
30.25
56.25
12.25
30.25
0
4 0
D2(2)
G7
G7
0
G4
G5
G4
G5
20.25
42.25
0
4 0
D2(3)
G7={X1, X2,X3} G8={X4,X5 }
ห้องสมุดไป่ตู้G7
0 30.25
• x11• •

层次聚类算法课件

层次聚类算法课件

层次聚类形成的树状图能够直观地展示聚 类的过程和结果,便于理解和分析。
适用于任意形状的簇
对异常值敏感
层次聚类不受簇形状的限制,可以发现任 意形状的簇。
层次聚类对异常值比较敏感,异常值可能 会对聚类结果产生较大影响。
层次聚类算法的分类
01
根据是否进行分裂可以分为凝聚 层次聚类和分裂层次聚类。
02
根据距离度量方式可以分为最小 距离层次聚类、最大距离层次聚 类和平均距离层次聚类等。
对于具有非凸形状的簇,层次 聚类算法可能无法找到最优的 聚类结果。这是因为该算法基 于距离度量来构建簇,而距离 究
CHAPTER
案例一:社交网络用户群体的层次聚类
总结词
社交网络用户群体的层次聚类是利用层次聚类算法对社交网络中的用户进行分类的一种 应用。
特征选择
选择与聚类目标最相关的特征,去除冗余特征。
特征标准化
将特征值缩放到统一尺度,如归一化或标准化。
距离度量的选择
欧氏距离
适用于连续型数据,计算两点之间的直线距 离。
皮尔逊相关系数
适用于连续型数据,衡量两个变量之间的线 性关系。
余弦相似度
适用于连续型数据,衡量两个向量之间的夹 角大小。
Jaccard相似度
索、图像识别、目标检测等应用。
谢谢
THANKS
05 层次聚类算法的优缺点分析
CHAPTER
优点分析
灵活性
层次聚类算法能够处理各种形状和大小的簇,而 不仅仅是圆形或球形的簇。它能够识别出具有复 杂结构的簇,使得聚类结果更加符合实际情况。
稳健性
对于异常值和噪声数据,层次聚类算法通常具有 较好的稳健性。因为异常值和噪声数据对距离计 算的影响较小,所以它们不太可能对聚类结果产 生重大影响。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Step 0 Step 1 Step 2 Step 3 Step 4
a ab
b
abcde
c cde
d de
e
Step 4 Step 3 Step 2 Step 1 Step 0
agglomerative (AGNES)
divisive (DIANA)
6
图1 对数据对象{a,b,c,d,e}的凝聚和分裂层次聚类
33

两个点pi和pj是近邻,如果
sim( p , p )
i
j
• 其中sim是相似度函数, sim可以选择为距离度量,甚至可以
选择为非度量,非度量被规范化,使其值落在0和1之间,值越
大表明两个点越相似。
• 是用户指定的阈值。
pi和pj之间的链接数定义为这两点的共同近邻个数。如果 两个点的链接数很大,则他们很可能属于相同的簇。
① BIRCH:首先用树结构对对象进行层次划分,其中叶节点或者 是低层次的非叶节点可以看作是由分辨率决定的“微簇”,然 后使用其他的聚类算法对这些微簇进行宏聚类。
② ROCK基于簇间的互联性进行合并。 ③ CURE选择基于质心和基于代表对象方法之间的中间策略。 ④ Chameleon探查层次聚类的动态建模。
通过修改阈值,CF树的大小可以改变。如果存储CF树需 要的内存大于主存的大小,可以定义较大的阈值,并重建 CF树。
28
在 CF 树重建过程中,通过利用老树的叶节点来重新构建 一棵新树,因而树的重建过程不需要访问所有点,即构建 CF 树只需访问数据一次就行。
可以在阶段二使用任意聚类算法,例如典型的划分方法。
考虑一个n个d维的数据对象或点的簇,簇的聚类特征是一 个3维向量,汇总了对象簇的信息。定义如下
CF=<n, LS, SS> n
其中,n是簇中点的数目,LS是n个点的线性和(即

i 1
x)i ,
SS是数据点的平方和(即 )。
聚类特征本质上是给定簇的统计汇总:从统计学的观点来 看,它是簇的零阶矩、一阶矩和二阶矩。
21
使用聚类特征,我们可以很容易地推导出簇的许多有用的 统计量。例如,簇的形心x0,半径R和直径D分别是:
其中R是成员对象到形心的平均距离,D是簇中逐对对象 的平均距离。R和D都反映了形心周围簇的紧凑程度。
22
使用聚类特征概括簇可以避免存储个体对象或点的详细信 息。我们只需要固定大小的空间来存放聚类特征。这是空 间中BIRCH有效性的关键。
① 层次聚类方法尽管简单,但经常会遇到合并或分裂点选择 的困难。这样的决定是非常关键的,因为一旦一组对象合 并或者分裂,下一步的处理将对新生成的簇进行。
② 不具有很好的可伸缩性,因为合并或分裂的决定需要检查 和估算大量的对象或簇。
17
层次聚类的改进
一个有希望的方向是集成层次聚类和其他的聚类技术,形 成多阶段聚类。在下面的内容中会介绍四种这类的方法:
• 如果一个事务包含某个商品,那么该事务的记录中对应于此商 品的属性值就为真;否则为假。
称为最远邻聚类算法。如果当最近簇之间的最大距离超过
某个任意阈值时聚类过程便终止,则称其为全连接算法。
11
单连接算法例子
先将五个样本都分别看成是一个簇,最靠近的两个簇是3 和4,因为他们具有最小的簇间距离D(3,4)=5.0。
第一步:合并簇3和4,得到新簇集合1,2,(34),5
12
更新距离矩阵: 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 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。
13
14
15
最小和最大度量代表了簇间距离度量的两个极端。它们趋 向对离群点或噪声数据过分敏感。
使用均值距离和平均距离是对最小和最大距离之间的一种 折中方法,而且可以克服离群点敏感性问题。
尽管均值距离计算简单,但是平均距离也有它的优势,因 为它既能处理数值数据又能处理分类数据。
16
层次聚类方法的困难之处
• 最小距离: • 最大距离: • 均值距离: • 平均距离:
9
最小距离
均值距离
10
最大距离 平均距离
当算法使用最小距离
衡量簇间距离时,有时称它为
最近邻聚类算法。此外,如果当最近的簇之间的距离超过
某个任意的阈值时聚类过程就会终止,则称其为单连接算
Hale Waihona Puke 法。 当一个算法使用最大距离
度量簇间距离时,有时
聚类特征是可加的。也就是说,对于两个不相交的簇C1和 C2,其聚类特征分别为CF1=<n1,LS1,SS1>和CF2=<n2, LS2,SS2>,合并C1和C2后的簇的聚类特征是 CF1+CF2=<n1+n2,LS1+LS2,SS1+SS2>
23
例子
假定在簇C1中有三个点(2,5),(3,2)和(4,3)。 C1的聚类特征是:
此外,大多数聚类算法在进行聚类时只估计点与点之间的 相似度;也就是说,在每一步中那些最相似的点合并到一 个簇中。这种“局部”方法很容易导致错误。
32
ROCK是一种层次聚类算法,针对具有分类属性的数据使 用了链接(指两个对象间共同的近邻数目)这一概念。
ROCK采用一种比较全局的观点,通过考虑成对点的邻域 情况进行聚类。如果两个相似的点同时具有相似的邻域, 那么这两个点可能属于同一个簇而合并。
由于在确定点对之间的关系时考虑邻近的数据点,ROCK 比起只关注点间相似度的标准聚类方法就显得更加鲁棒。
34
包含分类属性数据的一个很好的例子就是购物篮数据。
• 这种数据由事务数据库组成,其中每个事务都是商品的集合
• 事务看作具有布尔属性的记录,每个属性对应于一个单独的商 品,如面包或奶酪。
29
BIRCH的有效性
该算法的计算复杂度是O(n),其中n是聚类的对象的数目。 实验表明该算法关于对象数目是线性可伸缩的,并且具有 较好的数据聚类质量。
然而,既然CF树的每个节点由于大小限制只能包含有限数 目的条目,一个CF树节点并不总是对应于用户所考虑的一 个自然簇。
此外,如果簇不是球形的,BIRCH不能很好地工作,因为 它使用半径或直径的概念来控制簇的边界。
方式,层次聚类方法可以进一步分为凝聚的和分裂的。 一种纯粹的层次聚类方法的质量受限于:一旦合并或分裂
执行,就不能修正。也就是说,如果某个合并或分裂决策 在后来证明是不好的选择,该方法无法退回并更正。
3
主要内容
凝聚和分裂层次聚类 BIRCH:利用层次方法的平衡迭代归约和聚类
ROCK:分类属性的层次聚类算法 CURE:基于质心和基于代表对象方法之间的中间策略
30
主要内容
凝聚和分裂层次聚类 BIRCH:利用层次方法的平衡迭代归约和聚类
ROCK:分类属性的层次聚类算法 CURE:基于质心和基于代表对象方法之间的中间策略
Chameleon:利用动态建模的层次聚类算法
31
对于聚类包含布尔或分类属性的数据,传统聚类算法使用 距离函数。然而,实验表明对分类数据聚类时,这些距离 度量不能产生高质量的簇。
• 阶段二:BIRCH采用某个(选定的)聚类算法对CF树的叶节点 进行聚类,把稀疏的簇当作离群点删除,而把稠密的簇合并为 更大的簇。
27
CF树的构造
在阶段一中,随着对象被插入,CF树被动态地构造。这样, 该方法支持增量聚类。
一个对象被插入到最近的叶条目(子簇)。如果在插入后, 存储在叶节点中的子簇的直径大于阈值,则该叶节点和可 能的其他节点被分裂。新对象插入后,关于该对象的信息 向树根节点传递。
它克服了凝聚聚类方法所面临的两个困难:
① 可伸缩性; ② 不能撤销前一步所做的工作。
BIRCH使用聚类特征来概括一个簇,使用聚类特征树(CF 树)来表示聚类的层次结构。这些结构帮助聚类方法在大 型数据库中取得好的速度和伸缩性,还使得BIRCH方法对 新对象增量和动态聚类也非常有效。
20
聚类特征(CF)
25
图3 CF树结构
26
BIRCH试图利用可用的资源生成最好的簇。给定有限的主 存,一个重要的考虑是最小化I/O所需时间。BIRCH采用 了一种多阶段聚类技术:数据集的单遍扫描产生一个基本 的好聚类,一或多遍的额外扫描可以用来进一步(优化) 改进聚类质量。它主要包括两个阶段:
• 阶段一:BIRCH扫描数据库,建立一棵存放于内存的初始CF树, 它可以看作数据的多层压缩,试图保留数据的内在的聚类结构。
初始,AGNES将每个对象自为一簇,然后这些簇根据某 种准则逐步合并,直到所有的对象最终合并形成一个簇。
• 例如,如果簇C1中的一个对象和簇C2中的一个对象之间的距离 是所有属于不同簇的对象间欧氏距离中最小的,则C1和C2合并。
在DIANA中,所有的对象用于形成一个初始簇。根据某 种原则(如,簇中最近的相邻对象的最大欧氏距离),将 该簇分裂。簇的分裂过程反复进行,直到最终每个新簇只 包含一个对象。
Chameleon:利用动态建模的层次聚类算法
4
层次聚类方法
一般来说,有两种类型的层次聚类方法:
• 凝聚层次聚类:采用自底向上策略,首先将每个对象作为单独 的一个原子簇,然后合并这些原子簇形成越来越大的簇,直到 所有的对象都在一个簇中(层次的最上层),或者达到一个终 止条件。绝大多数层次聚类方法属于这一类。
相关文档
最新文档