7.最大最小距离算法与最大最小距离
7.最大最小距离算法与最大最小距离
最大最小距离算法
最大最小距离算法是一种聚类算法。
算法描述:
(1):任意选取一个样本模式作为第一聚类中心K1。
(2):选择离Z1最远欧氏距离的模式样本作为第二聚类中心K2。
(3):逐个计算每个模式样本与已确定的所有聚类中心之间的欧式距离,并选出其中的最小欧式距离。也就是说,所有的模式样本分别和K1,K2、…Kn求欧式距离,每个模式样本会分别得到和K1、K2、…Kn的欧式距离,从n者中选择小的那个。如果模式样本数是N,那么就会选出N个最小距离。
(4):在所有最小距离中(N个)选出一个最大距离,如果该最大值达到一定分数比值以上,(分数比值就是阈值T)则将产生最大距离的那个模式样本定义为新增聚类中心Z3,并返回步骤(3)。否则,聚类中心计算步骤结束。
(5):根据实验情况,需要不断重复步骤(3)(4),直到满足阈值条件,计算出所有聚类中心{ Z1 、 Z2 、 Z3 …Zn }。
(6):寻找聚类中心的运算结束后,将所有模式样本按最近欧式距离划分到相应聚类中心所代表的类别中。也就是说模式样本距哪个聚类中心近,就划分到哪个模式类中。
(是在min里找max)
最大最小距离(minimax distance)
最大最小距离又称基于路径的距离,由Fischer首先应用于聚类中。由于簇是由它们的凝聚性定义的,所以人们更关注穿过高密度区域数据对象的路径。因此,路径中密度最低的部分应该决定该路径的总体成本。换句话说,沿着一条路径的最大不同决定了它的代价。为了表示关于影响任何两个在同一聚类中相同概念的对象的不相似性的发生,我们定义对象i和j之间的有效不相似性Dij为连接路径的最小长度。不同于最大最小距离算法,最大最小距离是一种度量,它包含了一个数据集的基础全局几何。最大最小距离在Kye-Hyeon的文章Neighbor search with global geometry : a minimal message passing algorithm中,定义为:
或
其中Pij表示xi和xj之间的所有可能路径,而d(Xp[h],Xp[h+1])是Xp[h]和Xp[h+1]之间的欧氏距离。注意:该公式中, p表示xi和xj之间的所有可能路径的一条路径,| p | 表示该条路径中的节点数目,Xp[h]表示该条路径中的第h个节点,一定注意是第h个节点,比如该条路径是1→2→5→6,那么| p | =4,h=1,2,3。
例:(可能不正确 再看看)
ans1是待处理矩阵。
ans2是由ans1生成的最大最小距离矩阵。两个矩阵的图如下所示:
以节点1到节点3为例:
可以看到最大最小距离为0.4。
这是保证Xi到Xj之间至少有一条路径的最小值,对应的路径称为最大最小路径。如下图,如果Xi和Xj在同一个流形上,最大最小距离Dij趋于小。因此,最大最小距离是一种不同的度量,它包含了一个数据集的基础全局几何。
算法描述:
根据钟才明教授的文章Visual hierarchical cluster structure: A refinedcoassociation matrix based visual assessment of cluster tendency中关于最大最小距离的算法描述
PS:教授原算法描述有些错误
其中在一个MST中,任何一对节点都只有一条路径。在上述算法中,CloseT和OpenT是两个线性表(栈),其中的节点都被访问过。CloseT中节点的邻居也被访问过,而OpenT中这些节点则没有访问过。在这里,节点的邻居是指与MST上的节点直接相连的节点。在第6行,函数NEIGHBORS(G,v)返回G中v的邻居,而Nodes排除CloseT中的顶点。在第9行,既然此时v与v’通过CloseT中vl的路径连接,基于路径的距离可以通过简单的比较D’( v’, vl) 和D(v,vl)来实现,其中MAX(a,b)如果a>b返回a,否则返回b。在第12行,当来自Nodes的v和v’’通过vl连接时,它们之间基于路径的距离为MAX(D(v,vl),D(vl,v’’))。第15行将顶点v附加到OpenT中。第16行从OpenT中删除一个节点并将其添加到CloseT中。如果使用Prim的MST算法,该算法的时间复杂度为O(N²)。
比如要选4-1的。4-5已经选择过了,就是最小的各路径里的最大值,4和1通过5连接,刚刚在选择4-5的时候并没有5-1的参与,那么我要选择4-1,只需看看已经选择出的4-5的值和原矩阵5-1的值哪个大,选大的就可以了。因为公式就是要在小的里面选大的,除了5-1这条路,其他路的最小最大值已经选出来了,那么我只需要比较一下这条路径的值和已经选出的最大最小值哪个大就可以了。
7.最大最小距离算法与最大最小距离相关推荐
- 聚类算法-最大最小距离算法(实例+代码)
聚类算法-最大最小距离算法(实例+代码) [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/53708042 目录 聚类算法- ...
- 最大最小距离算法(K-MEANS K-medoids )聚类算法的结合运用
聚类算法通常会得到一种分类,将n个点聚合成k类,同一聚类(即插槽簇)中的对象相似度较高:而不同类中的对象相似度较小. 聚类算法的基本流程如下: (1)从n个节点中选择 k 个节点作为初始聚类中心.(2 ...
- 【Python】实现最大最小距离算法
最大最小距离算法基本思想 最大最小距离法是模式识别中一种基于试探的类聚算法,它以欧式距离为基础,取尽可能远的对象作为聚类中心.因此可以避免K-means法初值选取时可能出现的聚类种子过于临近的情况,它 ...
- java 最大最小聚类,最大最小距离算法(K-MEANS K-medoids )聚类算法的结合运用
聚类算法通常会得到一种分类,将n个点聚合成k类,同一聚类(即插槽簇)中的对象相似度较高:而不同类中的对象相似度较小. 聚类算法的基本流程如下: (1)从n个节点中选择 k 个节点作为初始聚类中心.(2 ...
- java最大最小距离算法缺点_java算法(蓝桥杯)- 算法提高 题目1 最大最小值
问题描述 给定 N个整数,请你找出这 N个数中最大的那个和最小的那个. 输入格式 第一行包含一个正整数 N .(1 ≤ N ≤ 10000). 第二行为 N 个用空格隔开的整数,每个数的绝对值不超过 ...
- OpenCV实现最大最小距离聚类算法
OpenCV实现最大最小距离聚类算法 [尊重原创,转载请注明出处]https://blog.csdn.net/guyuealian/article/details/80255524 本博客提供多版本的 ...
- 极限竞速地平线4 没声音_极限竞速:地平线是汽车爱好者的食物
极限竞速地平线4 没声音 I have loved cars almost my entire life. I can't say that I have a great mechanical kno ...
- 基于最大最小距离的分类数目上限K确定的聚类方法
聚类是数据挖掘很重要的组成部分.而大多数聚类算法都需要事先确定分类数目K.而本文是在实际 情况下确定分类数目K的上限.进而对数据样本进行自动分类. 首先介绍下最大最小距离算法: 设样本集为X{x(1) ...
- 什么是计算机系统的可信基点,基于可信基点的结构化签名比较算法.pdf
基于可信基点的结构化签名比较算法.pdf 第28卷 第24期 计算机工程与设计 21)07年12月 VO1.28 NO.24 Computer Engineering and Design Dec.2 ...
最新文章
- Subversion hooks脚本配置演示及排错
- 集中式服务器模型无线网络,认知无线电中次用户在重试排队和共享服务器模型下的均衡止步策略...
- dylib java_将dylib库嵌入macOS应用的方法
- ERROR: No query specified
- 协方差意味着什么_“零”到底意味着什么?
- Java常见面试题之类的加载过程
- ubuntu下使用脚本自动禁用笔记本触摸板和键盘
- BGP线路机柜值得你考虑的几点因素-新乡BGP机柜
- c++ CImage类的常用命令
- python字符串和字节串有什么区别_python中的字符串和字节串
- MSU 出品的 H.264 编码器比较 (2011.5)(包含VP8以及XviD)
- Spring Boot整合Redis-lesson8
- vb rs.RecordCount返回0的原因
- 驯服最难以捉摸的野兽──创新
- 数说故事全新官网2.0正式上线,全新视觉焕新升级
- Vue引入百度地图警告:A Parser-blocking, cross site (i.e. different eTLD+1) script....
- Python的编译器
- js实现数字动态递增效果
- ASUS WIN7 DRIVER
- 解决命名空间缺少引用问题