层次聚类ppt课件.pptx

层次聚类ppt课件.pptx

ID:52783797

大小:545.64 KB

页数:18页

时间:2020-03-13

层次聚类ppt课件.pptx_第1页
层次聚类ppt课件.pptx_第2页
层次聚类ppt课件.pptx_第3页
层次聚类ppt课件.pptx_第4页
层次聚类ppt课件.pptx_第5页
资源描述:

《层次聚类ppt课件.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、层次聚类1目录层次聚类方法简介簇间距离度量方法层次聚类方法存在的不足层次聚类的MATLAB实现仿真结果结论2一.层次聚类方法简介层次聚类就是通过对数据集按照某种方法进行层次分解,直到满足某种条件为止。按照分类原理的不同,可以分为凝聚和分裂两种方法。层次凝聚的代表是AGNES算法,层次分裂的代表是DIANA算法。一个完全层次聚类的质量由于无法对已经做的合并或分解进行调整而受到影响。但是层次聚类算法没有使用准则函数,它所含的对数据结构的假设更少,所以它的通用性更强。下面介绍这两种方法。3一.层次聚类方法简介1.凝聚的层次聚类凝聚的层次聚类是一

2、种自底向上的策略。它从每个对象形成自己的簇开始,并且迭代的把簇合并成越来越大的簇,直到所有的对象都在一个簇中,或者满足某个终止条件。该单个簇成为层次结构的根。在合并步骤,它找出两个最接近的簇,并且合并它们,形成一个簇。因为每次迭代合并两个簇,其中每个簇至少包含一个对象,因此凝聚方法最多需要n次迭代。凝聚的层次聚类算法过程如图所示:4一.层次聚类方法简介2.分裂的层次聚类分裂的层次聚类与凝聚的层次聚类相反,采用自顶向下的策略。它从把所有对象置于一个簇中开始,该簇是层次结构的根。然后,它把根上的簇划分成多个较小的簇,并且递归地把这些簇划分成更

3、小的簇,划分过程继续,直到最底层的簇都足够凝聚或者仅包含一个对象,或者簇内的对象都充分相似。分裂的层次聚类算法过程如图所示:5二.簇间距离度量方法无论使用凝聚方法还是使用分裂方法,一个核心问题是度量两个簇之间的距离,其中每个簇一般是一个对象集。在凝聚和分裂的层次聚类之间,我们又依据计算簇间的距离的不同,4个广泛采用的簇间距离度量方法如下,其中是两个对象或点p和p’之间的距离。(1)单连锁(singlelinkage),又称最近邻(nearestneighbor)方法。指两个不一样的簇之间任意两点之间的最近距离。这里的距离是表示两点之间的相

4、异度,所以距离越近,两个簇相似度越大。这种方法最善于处理非椭圆结构。却对于噪声和孤立点特别的敏感,取出距离很远的两个类之中出现一个孤立点时,这个点就很有可能把两类合并在一起。距离公式如下。6二.簇间距离度量方法(2)全连锁(comlpetelinkage),又称最远邻(furthestneighbor)方法。指两个不一样的簇中任意的两点之间的最远的距离。它面对噪声和孤立点很不敏感,趋向于寻求某一些紧凑的分类,但是,有可能使比较大的簇破裂。距离公式如下所示。(3)组平均方法(grouPaveragelinkage),定义距离为数据两两距离的

5、平均值。这个方法倾向于合并差异小的两个类,产生的聚类具有相对的鲁棒性。距离公式如下所示。7二.簇间距离度量方法(4)平均值方法(centroidlinkage),现计算各个类的平均值,然后定义平均值之差为两类的距离。距离公式如下所示。其中是两个类,为对象和之间的距离,,分别为,的对象个数,,分别为类的平均值。8三.层次聚类方法存在的不足在凝聚的层次聚类方法和分裂的层次聚类的所有的方法中,都需要用户提供所希望所得到的聚类的单个数量和阈值作为聚类分析的终止条件,但是对于复杂的数据来说这个是很难事先判定的。尽管层次聚类的方法实现的很简单,但是偶

6、尔会遇见合并或分裂点的抉择的困难。这样的抉择是特别关键的,因为只要其中的两个对象被合并或者分裂,接下来的处理将只能在新生成的簇中完成。已形成的处理就不能被撤消,两个聚类之间也不能交换对象。如果在某个阶段没有选择合并或分裂的决策,就非常可能会导致不高质量的聚类结果。而且这种聚类方法不具有特别好的可伸缩性,因为他们合并或分裂的决策需要经过检测和估算大量的对象或簇。9三.层次聚类方法存在的不足层次聚类算法由于要使用距离矩阵,所以它的时间和空间复杂性都很高,几乎不能在大数据集上使用。层次聚类算法只处理符合某静态模型的簇忽略了不同簇间的信息而且忽略

7、了簇间的互连性(互连性指的是簇间距离较近数据对的多少)和近似度(近似度指的是簇间对数据对的相似度)。10四.层次聚类的MATLAB实现这里使用平均值方法(centroidlinkage)来实现酒瓶颜色的聚类。1.重要代码介绍(1)数据标准化处理:%将数据进行标准化变换Q1=zscore(X1);(2)利用欧拉距离函数计算样本间距离%计算样本间的距离Y1=pdist(Q1,'euclid')%欧拉距离(3)用两类间距离定义为类重心间的距离Z1=linkage(Y1,'centroid');%用两类间距离定义为类重心间的距离11四.层次聚类的

8、MATLAB实现%层次聚类clearX1=[1739.941675.152395.96373.33087.052429.471756.7716521514.98864.451647.31266

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。