层次聚类
- 格式:doc
- 大小:380.00 KB
- 文档页数:9
聚类分析方法聚类分析是一种常见的数据分析方法,它可以帮助我们将数据集中的对象按照它们的相似性分成不同的组,从而更好地理解数据的结构和特征。
在实际应用中,聚类分析方法被广泛应用于市场分割、社交网络分析、生物信息学、图像处理等领域。
本文将介绍几种常见的聚类分析方法,包括K均值聚类、层次聚类和密度聚类,并对它们的原理和应用进行简要阐述。
K均值聚类是一种基于距离的聚类方法,它将数据集分成K个簇,每个簇包含距离最近的K个中心点。
K均值聚类的原理是通过迭代计算每个样本点到中心点的距离,然后将样本点分配到距离最近的中心点所在的簇中。
这个过程一直迭代进行,直到簇的分配不再改变为止。
K均值聚类的优点是简单易懂,计算速度快,但是它对初始中心点的选择敏感,容易陷入局部最优解。
层次聚类是一种基于树形结构的聚类方法,它通过不断地将最相似的样本点或簇合并在一起,从而构建出一个层次化的聚类结构。
层次聚类可以分为凝聚型和分裂型两种方法。
凝聚型层次聚类是从下往上构建聚类结构,它首先将每个样本点看作一个独立的簇,然后根据它们的相似性逐步合并成更大的簇,直到所有样本点合并成一个簇为止。
分裂型层次聚类则是从上往下构建聚类结构,它首先将所有样本点看作一个簇,然后根据它们的差异逐步分裂成更小的簇,直到每个样本点都成为一个簇为止。
层次聚类的优点是不需要预先确定簇的个数,但是它的计算复杂度较高,不适合处理大规模数据集。
密度聚类是一种基于样本点密度的聚类方法,它将高密度的样本点划分为一个簇,并且可以发现任意形状的簇。
密度聚类的核心思想是通过计算每个样本点周围的密度来确定核心点,然后将核心点连接在一起形成簇。
密度聚类的优点是对噪声和离群点具有较好的鲁棒性,但是它对参数的选择比较敏感,需要合适的密度阈值来确定核心点。
总的来说,聚类分析方法是一种强大的数据分析工具,它可以帮助我们发现数据中的潜在结构和规律。
不同的聚类方法适用于不同类型的数据和应用场景,选择合适的聚类方法需要根据具体问题的特点来进行。
聚类分析的类型与选择聚类分析是一种常用的数据挖掘技术,可以将数据按照某种相似性进行分组。
通过聚类分析,我们可以发现数据中的潜在规律和结构,帮助我们更好地理解数据,并做出相应的决策。
本文将介绍聚类分析的常见类型,并讨论如何选择适合的聚类方法。
1.聚类分析的类型聚类分析有多种类型,常见的包括层次聚类分析和k均值聚类分析。
下面将分别介绍这两种聚类方法。
1.1层次聚类分析层次聚类分析是一种自下而上的聚类方法,它通过计算数据之间的相似度或距离,将相似的数据逐步合并成簇。
这种方法对数据的层次结构有较好的表示,能够发现不同层次的聚类结构。
层次聚类分析的优点之一是不需要预先指定聚类的个数,但计算复杂度较高,对大规模数据处理存在困难。
另外,它对异常值敏感,若存在异常值可能影响聚类结果。
1.2k均值聚类分析k均值聚类分析是一种基于划分的聚类方法,它将数据划分成k个互不重叠的簇,使得簇内的数据相似度较高,簇间的数据相似度较低。
该方法通过迭代计算簇的中心和重新分配数据来实现聚类。
k均值聚类分析的优点在于计算简单、效果较好,适用于大规模数据集。
但该方法对初始簇中心的选择较为敏感,容易收敛于局部最优解。
2.选择合适的聚类方法在选择聚类方法时,应根据数据的特点和目标进行判断。
下面列举几个常见的选择因素,供参考:2.1数据特点需要考虑数据的特点,如数据的维度、规模、密度等。
对于高维度数据,层次聚类分析可能更适用;而对于大规模数据,k均值聚类分析常常更为合适。
2.2聚类目标需要考虑聚类的目标。
如果希望发现层次结构、发现数据的内在关联性,层次聚类分析是一个不错的选择。
而如果目标是将数据划分成互不重叠的簇,并且希望聚类结果能较好地解释数据的差异性,k均值聚类分析更为合适。
2.3数据质量数据质量也是选择聚类方法的重要因素。
层次聚类分析对异常值比较敏感,如果数据中存在异常值,使用k均值聚类分析可能更好。
选择合适的聚类方法需要综合考虑数据特点、聚类目标和数据质量等因素。
层次聚类分析层次聚类分析在层次聚类中,起初每⼀个实例或观测值属于⼀类。
聚类就是每⼀次把两类聚成新的⼀类,直到所有的类聚成单个类为⽌,算法如下:(1) 定义每个观测值(⾏或单元)为⼀类;(2) 计算每类和其他各类的距离;(3) 把距离最短的两类合并成⼀类,这样类的个数就减少⼀个;(4) 重复步骤(2)和步骤(3),直到包含所有观测值的类合并成单个的类为⽌。
层次聚类⽅法单联动聚类⽅法倾向于发现细长的、雪茄型的类。
它也通常展⽰⼀种链式的现象,即不相似的观测值分到⼀类中,因为它们和它们的中间值很相像。
全联动聚类倾向于发现⼤致相等的直径紧凑类。
它对异常值很敏感。
平均联动提供了以上两种⽅法的折中。
相对来说,它不像链式,⽽且对异常值没有那么敏感。
它倾向于把⽅差⼩的类聚合。
Ward法倾向于把有少量观测值的类聚合到⼀起,并且倾向于产⽣与观测值个数⼤致相等的类。
它对异常值也是敏感的。
质⼼法是⼀种很受欢迎的⽅法,因为其中类距离的定义⽐较简单、易于理解。
层次聚类⽅法可以⽤hclust()函数来实现,格式是hclust(d, method=),其中d是通过dist()函数产⽣的距离矩阵,并且⽅法包括"single"、"complete"、"average"、"centroid"和"ward"。
(1)营养数据的平均联动聚类:data(nutrient, package="flexclust")s(nutrient) <- tolower(s(nutrient)) #将⾏名改为⼩写(个⼈习惯)nutrient.scaled <- scale(nutrient) #标准化为均值为0、⽅差为1d <- dist(nutrient.scaled) #27种⾷物之间的距离采⽤欧⼏⾥得距离,默认为欧⼏⾥得距离fit.average <- hclust(d, method="average") # hclust()做层次聚类,应⽤的⽅法是平均联动plot(fit.average, hang=-1, cex=.8, main="Average Linkage Clustering")#plot()函数中的hang命令展⽰观测值的标签(让它们在挂在0下⾯)结果分析:树状图应该从下往上读,它展⽰了这些条⽬如何被结合成类。
聚类算法:谱聚类和层次聚类的比较聚类是数据挖掘中一种重要的无监督学习方法,其目的是将相似的数据对象分组,形成簇(cluster),并且簇与簇之间差异较大。
聚类算法可以分为分层聚类方法和非分层聚类方法。
其中,谱聚类和层次聚类是两种常见的聚类算法方法,本文将对这两种方法进行比较分析。
1.谱聚类谱聚类是一种基于图论和矩阵分析的聚类方法。
该方法将数据集转化为一个图(Graph),然后通过计算该图对应的拉普拉斯矩阵的特征向量将数据分成不同的类别。
谱聚类算法具有以下三个主要步骤:(1)构建邻接矩阵。
通常情况下,可以使用高斯核函数来计算数据点之间的相似度,并将相似度高于某个阈值的数据点之间的权值赋值为1,否则赋值为0。
(2)计算拉普拉斯矩阵。
对于邻接矩阵A(即关联矩阵),可以构建度矩阵D及其逆矩阵D^(-1),则拉普拉斯矩阵L=D-A。
根据拉普拉斯矩阵的特征值和特征向量,可以得到数据集的降维表示。
(3)对特征向量进行聚类。
根据求得的特征向量,可以使用KMeans等聚类算法来将数据集进行划分。
谱聚类算法的优点是它可以处理非线性的数据结构,并且可以保留数据的全局结构。
另外,在谱聚类中,可以自定义相似性函数,这增加了算法的灵活性。
2.层次聚类层次聚类是一种树状的聚类方法,应用广泛。
层次聚类分为两种子类型:聚合(自下而上)和分裂(自上而下)。
在聚合过程中,每个数据点开始时被视为一个单独的组,然后逐步合并为一个大的组。
在分裂过程中,则是将整个数据集视为一个大组,然后将其逐步分裂为较小的组。
层次聚类算法的基本步骤如下:(1)计算两个最相似(或距离度量最小)群体之间的距离。
(2)合并这两个最相似的群体为一个新的群体。
(3)重复步骤1、2,直到所有样本都被分配到同一个簇中。
与谱聚类相比,层次聚类的优点在于其聚类结果易于直观理解并且不需要设置参数。
另外,它可以用于任何样本之间的相似性度量。
3.比较分析谱聚类和层次聚类算法在处理聚类问题时有不同的优缺点。
五种层次聚类法
- K均值聚类:这可能是最知名的聚类算法。
在代码中很容易理解和实现。
该算法的优点是速度非常快,因为它的计算复杂度为线性O(n)。
但缺点是必须选择要使用的类/组的数量,而且结果可能因随机初始化聚类中心而异,缺乏一致性。
- K-Medians聚类:与K-Means类似,但不是使用组的中心点来重新计算组的中心点,而是使用组的中值向量。
这种方法对异常值不太敏感,但对于较大的数据集要慢得多,因为在计算中值向量时,每次迭代都需要进行排序。
- Mean-Shift聚类:这是一种基于滑动窗口的算法,试图找到密集的数据点区域。
这是一个基于中心的算法,通过更新中心点的候选者作为滑动窗口内点的平均值来定位每个组/类的中心点。
然后这些候选窗口被过滤到后处理阶段,以消除近似的重复,形成最终的中心点集及其相应的组。
- DBSCAN Density-Based Spatial Clustering of Applications with Noise)聚类:该算法根据数据点的密度来聚类。
它可以识别任意形状的簇,并且可以处理噪声点。
该算法具有简单、高效的优点,但需要选择两个参数:邻域半径和最小密度阈值。
- OPTICS Ordering Points to Identify the Clustering Structure)聚类:该算法通过创建一个基于距离的层次结构来识别聚类。
它可以处理大型数据集,并且可以识别任意形状的簇。
该算法的优点是速度快,但需要选择一个参数:邻域半径。
5 聚类之层次聚类基于划分的聚类(k、层次聚类1、层次聚类的原理及分类1)层次法(Hierarchicalmethods )先计算样本之间的距离。
每次将距离最近的点合并到同一个类。
然后,再计算类与类之间的距离,将距离最近的类合并为一个大类。
不停的合并,直到合成了一个类。
其中类与类的距离的计算方法有:最短距离法,最长距离法,中间距离法,类平均法等。
比如最短距离法,将类与类的距离定义为类与类之间样本的最短距离。
层次聚类算法根据层次分解的顺序分为:自下底向上和自上向下,即凝聚的层次聚类算法和分裂的层次聚类算法agglomerative 和divisive ),也可以理解为自下而上法bottom-up )和自上而下法(top-down )。
自下而上法就是开始每个个体(object )都是一个类,然后根据linkage 寻找同类,最后形成一个“类” 。
自上而下法就是反过来,开始所有个体都属于一个“类”,然后根据linkage 排除异己,劣之分,只是在实际应用的时候要根据数据特点以及你想要的“类”的个数,来考虑是自上而下更快还是自下而上更快。
最后每个个体都成为一个“类” 。
这两种路方法没有孰优孰至于根据Linkage 判断“类”的方法就是最短距离法、最长距离法、中间距离法、类平均法等等(其中类平均法往往被认为是最常用也最好用的方法,一方面因为其良好的单调性,另一方面因为其空间扩张/浓缩的程度适中)。
为弥补分解与合并的不足,层次合并经常要与其它聚类方法相结合,如循环定位。
2)Hierarchical methods 中比较新的算法有BIRCH( BalancedIterative Reducingand Clustering Using Hierarchies 利用层次方法的平衡迭代规约和聚类)主要是在数据量很大的时候使用,而且数据类型是numerical 。
首先利用树的结构对对象集进行划分,然后再利用其它聚类方法对这些聚类进行优化;ROCK ( AHierarchical ClusteringAlgorithm for Categorical Attributes )主要用在categorical 的数据类型上;Chameleon(A HierarchicalClustering AlgorithmUsing Dynamic Modeling )里用到的linkage 是kNN (k-nearest-neighbor)算法,并以此构建一个graph,Chameleon 的聚类效果被认为非常强大,比BIRCH 好用,但运算复杂度很高,0(22)。
层次聚类标准化处理方法
层次聚类(Hierarchical Clustering)是一种常用的聚类方法,它通
过将数据集逐渐分裂,形成多个层次,从而形成不同的聚类结果。
在
层次聚类中,我们需要对数据进行标准化处理,以确保数据的相似性
可以被正确地比较和计算。
常用的标准化处理方法有以下几种:
1. Z-score标准化:将每个特征值减去均值,再除以标准差,得到每
个特征的Z-score值。
这种方法适用于对数值型数据进行标准化处理。
2. Min-Max标准化:将每个特征值减去最小值,再除以最大值与最小
值的差,得到每个特征的标准化值。
这种方法适用于对需要缩放数据
范围的数据进行标准化处理。
3. 归一化:将每个特征值缩放到[0,1]或[-1,1]区间内,常用的公式
有Pearson正规化、Min-Max正规化、极值正规化等。
这种方法适用于对需要将数据映射到特定区间内的数据进行标准化处理。
4. 样本中心化:将每个样本的各特征值减去均值,得到每个样本的标
准化值。
这种方法适用于对样本数据集进行整体标准化处理。
在进行层次聚类时,通常需要先对数据进行标准化处理,以确保不同
特征之间的相似性可以被正确地比较和计算。
同时,还需要注意选择
合适的距离度量方法(如欧氏距离、余弦相似度等),以确保相似性
度量的准确性。
目录1、聚类的相关概念 (2)1.1、聚类的概念 (2)1.2、观察学习 (2)1.3、簇的概念 (2)1.4、离群点 (2)1.5、产生聚类的要求 (2)2、聚类方法的分类 (3)2.1、划分方法 (3)2.2、层次方法 (3)2.3、基于密度的方法 (3)2.4、基于网格的方法 (4)3、层次聚类 (4)3.1、层次聚类的目的 (4)3.2、层次聚类的分类 (4)3.2.1、算法方法 (4)3.2.2、概率方法 (6)3.2.3、贝叶斯方法 (7)3.3、层次聚类各种方法的比较 (7)4、聚类的应用 (8)4.1、层次聚类各种方法的比较 (8)4.2、在实验市场选择中的应用 (8)4.3、在销售片区确定中的应用 (9)4.4、在市场机会研究中的应用 (9)1、聚类的相关概念1.1、聚类的概念聚类是一个通过观察学习把数据对象划分成子集的过程。
每个子集是一个簇,是的簇中的对象彼此相似,但与其他簇中的对象不相似。
由聚类分析产生的簇的集合称做一个聚类。
1.2、观察学习观察学习就是无监督学习,值的是设计分类器时候,用于处理未被分类标记的样本集。
1.3、簇的概念簇是对象的集合,这些对象彼此之间属性相似,和其他簇中的对象相异。
一个数据对象簇可以整个看作一个组,因此可以看作一种数据压缩形式。
1.4、离群点离群点是指一个时间序列中,远离序列的一般水平的极端大值和极端小值。
1.5、产生聚类的要求聚类是一个富有挑战性的研究领域,对数据聚类时有一下基本要求:✓可伸缩性:许多聚类算法在小于几百个数据对象的小数据集合上运行的很好,然而,大型数据库可能包含数百万甚至数十亿个对象。
在大型数据集的样本上进行聚类可能会导致有偏的结果。
因此,我们需要具有高度可伸缩性的聚类算法。
✓处理不同属性类型的能力:许多算法视为聚类数值的数据设计的。
然而,应用可能要求聚类其他类型的数据,如二元数据、标称的、序列的或者这些数据类型的混合。
✓发现任意形状的簇:许多聚类算法基于欧几里得或者曼哈顿距离度量来确定簇。
基于这些距离的算法趋向于发现具有相近尺寸和密度的球状簇。
然而,一个簇可能是任意形状的。
✓对于确定输入参数的领域知识的要求:许多聚类算法都要求用户输入参数的形式提供领域的知识。
因此,聚类结果可能对这些参数十分敏感。
通常,参数很难确定,对于高维数据集和用户尚未深入理解的数据来说更是如此。
要求提供专业领域知识不仅加重用户的负担,而且使得聚类质量难以控制。
✓处理噪声数据的能力:现实世界中的大部分数据集都包含离群点或缺失数据、未知或错误的数据。
一些聚类算法可能对这样的噪声敏感,从而产生低质量的聚类结果。
因此,我们需要对噪声鲁棒的聚类方法。
✓✓增量聚类和对输入次序不敏感:在许多应用中,增量更新可能随时发生。
一些聚类算法不能将新插入的数据合并到已有的聚类结果中,而是需要从头开始重新聚类。
一些聚类算法可能对数据数据的次序比较敏感。
也就是说,对给定数据对象集合,当以不同的次序提供数据对象时,这些算法可能生成差别很大的聚类结果。
✓聚类高维度数据的能力:数据集可能包含大量的维和属性。
许多聚类算法擅长处理低维数据,发现高维空间中数据对象的簇是一个挑战,特别是考虑这样的数据可能非常稀疏,并且高度倾斜。
✓基于约束的聚类:现实世界的应用可能需要在各种约束条件下进行聚类。
✓可解释性和可用性:用户希望聚类结果是可解释的、可理解的和可用的。
也就是说,聚类可能需要与特定的语意解释和应用相联系。
✓划分准则:在某些方法中,所有的对象被划分,是的簇之间不存在层次结构,也就是说,在概念上,所有的簇都在相同的层,这种方法是有用的。
✓簇的分离性:有些聚类方法把数据对象划分成互斥的簇。
✓相似性度量:有些方法对对象之间的距离确定两个对象之间的形似度。
这种距离可以在欧氏距离、公路网、向量空间或其他空间中定义。
其他方法中,相似度可以用基于密度的连接性或临近性定义,并且可能不依赖连个对象之间的绝对距离。
相似性度量在聚类方法的设计中起到重要的作用。
✓聚类空间:许多聚类方法都在整个给定的聚类空间中搜索簇。
这些方法对于低维数据集是有用的。
然而,对于高维数据,可能有许多不相关的属性。
可能使得相似性度量不可靠。
2、聚类方法的分类2.1、划分方法划分方法就是给定一个n个对象的集合,划分方法构建数据的k个分区,其中每个分区标识一个簇,并且n。
也就是说,它把数据划分为k个组,是的每个组至少包含一个对象。
换言之,划分方法在数据集上进行一层划分。
2.2、层次方法层次方法是指创建给定数据对象集的层次分解。
根据层次分解如何形成,层次方法可以分为凝聚或分裂的方法。
凝聚的方法也称自底向上的方法,开始讲每个对象作为单独的一个组,然后主次合并相近的对象或组,直到所有的组合并为一个组,或者满足某个终止条件。
分裂的方法,也称为自顶向下的方法,开始将所有的对象置于一个簇中,在每次相继迭代中,一个簇被划分成更小的簇,知道最终每个对象在单独的一个簇中,或者满足某个终止条件。
2.3、基于密度的方法大部分划分方法基于对象之间的距离来聚类。
这样的方法只能发现球状簇,而在发现任意形状的簇时遇到了困难。
基于密度的聚类方法其主要思想是:只要“邻域”中的密度超过某个阈值,就继续增长给定的簇。
也就是说,对给定的簇中的每个数据点,在给定半径的邻域中必须至少包含最少数据的点。
这样的方法可以用来过滤噪声和离群点,发现任意形状的簇。
基于密度的方法可以把一个对象集划分成多个互斥的簇或簇的分层结构。
通常,基于密度的方法值考虑互斥的簇,而不考虑模糊的簇。
此外,可以把基于密度的方法从整个空间聚类扩展到子空间聚类。
2.4、基于网格的方法基于网格的方法把对象空间量化为有限个单元,形成一个网络结构。
所有的聚类操作都在这个网络结构上进行。
这种方法的优点是处理速度很快,其处理时间通常独立于数据对象的个数,而不依赖于量化空间中的每一维单元数。
3、层次聚类3.1、层次聚类的目的尽管划分方法满足把对象集划分成一些互斥的组群的基本聚类要求,但是在某些情况下,我们想把数据对象组成层次结构或簇的“树”。
3.2、层次聚类的分类存在多种方法对层次聚类进行分类,例如,它们可以分为算法方法、概率方法和贝叶斯方法。
接下来我们队这些算法加以说明。
3.2.1、算法方法算法方法自身也可以分为凝聚的层次聚类算法和分裂的层次聚类算法。
凝聚的层次聚类算法使用自底向上的策略。
典型的,它从每个对象形成自己的簇开始,并且迭代的把簇合并成越来越大的簇,知道所有的对象都在一个簇中,或者满足某个终止条件。
该单个簇成为层次结构结构的根。
在合并步骤,它找出两个最接近的簇,并且合并它们,形成一个簇。
因为每次迭代合并两个簇,其中每个簇至少包含一个对象,因此凝聚方法最多需要n次迭代。
凝聚的层次聚类算法过程如下如所示:图1 凝聚的层次聚类算法凝聚方法将每个对象自成一簇,然后这些簇根据某种准则逐步合并。
簇合并过程反复进行,知道所有的对象最终合并成一个簇。
●分裂的层次聚类算法使用自顶向下的策略。
它从把所有对象置于一个簇中开始,该簇是层次结构的根。
然后,它把根上的簇划分成多个较小的簇,并且递归地把这些簇划分成更小的簇,划分过程继续,直到最底层的簇都足够凝聚或者仅包含一个对象,或者簇内的对象都充分相似。
分裂的层次聚类算法过程如下如所示:图2 分裂的层次聚类算法所有的对象形成一个初始簇,根据某种原则,将簇分裂,簇的分裂过程反复进行,知道最终每个新的簇包含一个对象。
●算法方法的距离度量:无论使用凝聚方法还是使用分类方法,一个核心问题是度量两个簇之间的距离,其中每个簇一般是一个对象集。
4个广泛采用的簇间距离度量方法如下,其中|p-p’|是两个对象或点p和p’之间的距离,最小距离:(3.1)最大距离:(3.2)均值距离:(3.3)平衡距离:(3.4)当算法使用最小距离来衡量簇间距离时,有时称它为最近邻聚类算法。
此外,如果当最近的两个簇之间的距离超过用户给定的阈值时聚类过程就会终止,则称其为单链接算法。
当一个算法使用最大距离来度量簇间距离时,有时称为最远邻聚类算法。
如果当最近两个簇之间的最大距离超过用户给定的阈值时聚类过程便终止,则称其为全连接算法。
以上最小和最大距离代表了簇间距离度量的两个极端。
它们趋向离群点或噪声数据过分敏感。
使用均值距离或平均距离是对最小和最大距离之间的一种折中方法,并且可以克服离群点敏感性问题。
3.2.2、概率方法算法的层次聚类方法使用连接度量,往往使得聚类容易理解并且有效。
她们广泛用在聚类分析应用中。
然而,算法的层次聚类方法也有一些缺点。
第一,为层次聚类选择一种好的距离度量往往是困难的。
第二,为了使用算法的方法,数据对象不能有缺失的属性值。
在数据被部分则观测情况下,由于距离计算无法进行,因此很难使用算法的层次聚类方法。
第三,大部分算法的层次聚类方法都是启发式的,每一步局部得搜索好的合并/划分。
因此,结果聚类层次结构的优化目标可能不清楚。
概率层次聚类旨在通过使用概率模型度量簇之间的距离,克服以上某些缺点。
一种看待聚类问题的方法是,把聚类的数据对象看做要分析的基础数据生成机制的一个样本,或生成模型。
假设给定用于聚类分析的一维点集X={,……,}.我们假定这些数据点被高斯分布(3.5)于是,点被该模型生成的概率为:(3.6)于是,X被该模型生成的似然为:(3.7)给定一个对象集,有所有对象形成的簇的质量可以用最大似然度量。
对于划分成m个簇C1,……,Cm的对象集,质量可以用下式度量:(3.8)最后,经过计算,当我们在层次聚类中选择合并两个簇是,对于任意一对簇,它们之间的距离用下式来度量:(3.9)挂炉层次聚类方法很容易理解,并且具有算法的凝聚层次聚类方法相同的有效性;事实上,它们有错误!未找到索引项。
相同的框架。
概率模型有更好的可解释性,但是有时不如距离度量灵活。
概率模型可以处理部分观测的数据。
3.2.3、贝叶斯方法层次贝叶斯聚类算法是一个典型的凝聚式的层次聚类算法,它使用后验概率作为最大化的目标函数,取得了良好的聚类效果。
贝叶斯方法的基本思想是:假定对所研究的对象在抽样前有一定的认识,常用先验分布来描述这种认识,然后基于抽取的样本在进行先验认识做修正,得到后验分布,而各种统计统计推断都基于后验分布进行。
一般都将贝叶斯用于分类,在此介绍贝叶斯方法在层次聚类上的使用。
应用方法是,每一步中都选择两个类别合并为一个类别,选择的依据是使合并后分类方案的后验概率P(C|D)最大,即每一步进行局部优化的目标函数为P(C|D),其中D是个体的集合D = {d1,d2,...,dn},分类方案C表示类别的集合,是对D的一个划分:C = {c1,c2,...,cm},ci 是D的子集,ci∩cj= ∅,对任意i,j都成立。